Wednesday, February 20, 2008


I'm reading the book Implementing Lean Software Development by Mary & Tom Poppendieck and came across an interesting comment. They talk about how software by it's very nature should be easy to change, or else it would be called hardware. Good software is designed this way so that it can easily change to the changing business environment.

I know I've seen plenty of software that wasn't designed this way. It's a vicious cycle; customers ask for everything because they don't know what they really want and they know how hard it is to change once the requirements are agreed to. They get the final product and then begin to understand what they really need, but the cycle time is long, so they ask for all kinds of stuff again and it takes a long time to deliver again and their needs have changed again...

By delivering just the minimum functionality in a short cycle, the feedback loop is reduced and the customer more quickly understands and gets what they need.

No comments: