Lean Is More Than a Toolset
Alan Shalloway urges people to understand that behind Lean's practices are important principles that practitioners would be wise to recognize.
Shalloway sets up his message by discussing tools in the "physical world". He gives the example of how a carpenter will often know that a nail works better in certain situations and screw better in others. But if the carpenter does not why this is so, does not know the mechanical laws driving this, he may be unable to effectively make a decision between the two when faced with a new unfamiliar situation.
He continues saying this about how this might play out in the "physical world":
In the physical world, this extra knowledge is often held in the role of an architect. Someone who understands the forces of construction better and will figure out what is needed - letting those more proficient in practices, but less proficient in principles do the work. In my mind this illuminates the distinction between knowledge that assists operations (practices the carpenter uses) and knowledge that assists decisions (principles being used by the architect).
Tying this back to software, Shalloway's message is that Lean provides both practices and principles, and that teams will be more effective if they understand and apply both:
The opportunity is for people to use Lean practices while getting deeper insights into Lean principles. This will allow them to adjust their practices when they find themselves in different situations than they have found themselves previously. In the world of software development, we are all journeymen. That is, we are always working on new things than the things we worked on before. Experience is invaluable here. But an understanding of why we have achieved the results we have can be just as valuable.
As an example of these practices and principles, Shalloway writes this:
My view is that Lean is several layers deep. The most visible layer is its set of practices:
and there are many more. But this is not Lean. This is merely a set of practices based on Lean-Thinking - or Lean Science as I sometimes call it.
- limit work to capacity
- use value stream mapping
- have the people close to the work make the decisions on how to do the work
- avoid large batches
- continuously re-plan
- avoid delays when possible
- focus on getting value delivered to customers quickly more than focusing on having people always be productive
Some of the Lean principles on which these practices are based are:
and again, this is only a partial list.
- delays between when an error occurs and when it is detected causes waste
- removing such delays can both achieve higher quality and lower cost
- quick feedback results in lower waste
- deferring commitments can reduce waste
- optimizing a segment of the value stream often results in increasing costs, increasing time to delivery and lowering quality
So, Shalloway asserts that Lean is more than a toolset, just as XP is more than Test-Driven-Development and Scrum is more than a Backlog. Is this how you see the world?
Confusing Architects with Engineers
Actually, that's the job of a civil or mechanical engineer depending on the project. I bring it up b/c I think it actually is important in our understanding of roles if we're going to hijack the terminology.
With respect to the main point though, if you don't understand, agree with, and apply the principles of the methodology you are seeking to apply and only want to take the processes then you are destined for failure.
Tom Gilb & Kai Gilb Jan 26, 2015