Lean Principle #3 – Create Knowledge

Lean Software Development Principles - Create Knowledge.The third principle of lean software development is Create Knowledge.

This one seems a bit strange to me, as it almost seems obvious and common sense. But then I guess we all know that common sense isn’t that common!

Thinking about the fact that the origins of Lean are in manufacturing, where the traditional approach is to simplify and standardise everything to the point where no knowledge is required, like on a factory line, then I guess it’s clear why this principle was originally such a different way of thinking.

In software development, we all know that knowledge is paramount. We’ve all had situations where there’s only one developer that can work on something, at least productively, or even at all. Nothing beats the knowledge that’s created when someone actually writes the code.

Although I’m not particularly an advocate of Pair Programming, this is a specific agile practice from XP (Extreme Programming) that helps to ensure that the inherent knowledge that comes from writing the code is held by at least two people, rather than one.

So, if knowledge is important, and helps the longer term productivity and flexibility of the team, you need to take some specific actions in the short term and put some specific things in place to ensure that you create it.

Exactly what you do, as always, depends on your particular situation. Here are some things you could do on your projects to help create knowledge:

  • Pair Programming
  • Code reviews
  • Documentation
  • Wiki – to let the knowledge base build up incrementally
  • Thoroughly commented code
  • Knowledge sharing sessions
  • Training
  • Use tools, such as tinyPM, to manage requirements/User Stories
I’m sure there are lots more. But these things are often not given the priority they really deserve. What do you do – proactively – to create knowledge in your teams?
Read more about the other key principles of lean software development

Kelly.

7 Key Principles of Lean Software Development:

1. Eliminate Waste
2. Build Quality In
3. Create Knowledge
4. Defer Commitment
5. Deliver Fast
6. Respect People
7. Optimise The Whole

 

Photo by Patrick Hoesly

One Response to “Lean Principle #3 – Create Knowledge”

  1. Tjodolf Sommestad says:

    Your post is quite focused on knowledge around the code in the software. I think that one important way of sharing knowledge is through agile practicies such as scrum daily meetings, scrum review, scrum planning etc. Knowledge is shared between the team frequently, and between the team and product owner on a regular basis. These interactions within the team also can spin-off to further discussions and improvements.

Leave a Reply

What is 10 + 10 ?
Please leave these two fields as-is:
Please do this simple sum so I know you are human:)

There are 101 ways to approach anything.
To find the best way, sometimes you need expert help

What People Say

“Kelly is an Agile heavy-weight. He came in to assess my multi-million $ Agile development program which wasn’t delivering the right throughput. He interviewed most of the team and made some key recommendations that, when implemented, showed immediate results. I couldn’t ask for more than that except he’s a really nice guy as well.”

DAN PULHAM, DIGITAL DIRECTOR
TELSTRA