Equinox IT Blog

Stick to your lean software development principles to DELIVER your goal

Jean Tabaka at a recent Wellington APN session, showed us the importance of understanding what agile Practices we've implemented.  But more importantly how do we know which Practices to choose, or even for that matter how to improve upon them?  This is where we should engage in the notion of guiding Principles. But why are the Principles there? What is the organisation looking to achieve through lean-agile? What is the Goal we are looking to Deliver upon? Practices by themselves are not enough.

Ash Mauraya states that we should separate principles from tactics "Principles guide what you do. Tactics show you how." The definition of a Principle is “a comprehensive and fundamental law, doctrine, or assumption”. That is, it gives us guidance on how to act. Yes it can be broken, but we need to know that there are consequences of doing so. The Definition of a Tactic is “a device for accomplishing an end”. Now that to me is a Practice; a repeated or customary action, the usual way of doing something; a means to an end.

There are 7 Lean software development Principles (these are the Principles that I use) as defined by Mary and Tom Poppendieck, but a plethora of agile practices, what we need to understand is when and why to use them. As Alan Shalloway points out Principles apply in all contexts, whereas Practices apply only in certain contexts.

The important thing is don’t implement a practice without having an understanding of the Lean software development principles that underpin it. Yes Implement an agile framework and set of agile practices, but select and modify them to fit the context of your organization. Use Principles to guide you in what Practices to use. Don’t be part of a Cargo Cult, using a Practice to achieve your goal, without understanding what those practice are. 

The following table outlines the 7 Lean software development Principles, as defined by Mary and Tom Poppendieck. For a full description of these, check out their website and books.  I use the mneumonic “D E L I V E R” as a mechanism to teach and remember them.

Stick to your lean principles to DELIVER your goal

                    Fig 1Seven Lean Software Developmnet Principles as defined by Mary and Tom
                    Poppendieck with the DELIVER mneumonic

Remember, agile Practices are only tactics there to support underlying lean-agile Principles, that in turn DELIVER on a Goal. Don't be driven by your practices, use them given the context or your organization. Always stick to your Principles !

Recorded webinar: Learning the hard parts of agile software development

Subscribe by email