Tuesday, June 08, 2010

Agile Software Development and Lean Thinking

I think agile software development practices are by and very useful and in the spirit of lean thinking. Software development is a domain that is not equal to say manufacturing cars. There will naturally be differences in how lean ideas are applied. And then within different software development organization their will be differences.

There certainly can be issues with how agile is adopted. And how you look at features and releases can make sprints seem like bad batches. Kanban is being adopted more and more for agile teams as an alternative to sprints.

There is certainly some of http://agilemanifesto.org/ which seems to be against lean. "Individuals and interactions over processes and tools" But in my experience the agile community is very in tune with lean ideas but it is also an area very much filled with experimentation and with fairly big areas still far from settled. I discuss software development fairly often on my blog.

I see a strong future for agile software development and continue to work on using the concepts at work to build a successful software development organization, upon a foundation of Deming and lean manufacturing ideas.

In response to: Agile software development does not equal LEAN thinking

Related: Agile Practices are Needed, Not Just Words - Improving Software Development with Automated Tests - The Importance of Making Problems Visible

Tuesday, June 01, 2010

Agile Practices are Needed, Not Just Words

Agile is Fragile
I embrace Agile/Scrum development because I am firmly convinced that it addresses many of the problems that plague software development along with providing working professionals with the autonomy that they should have in the first place. If something isn’t working, most likely it isn’t the process that is at fault. I’d wager that there is an implementation or execution problem. 
Many organizations struggle with implementing the basics. Jeff Sutherland has spoken frequently about the Nokia Test and how upwards to 80% of teams that claim to be doing Scrum don’t perform that basics (some don’t even know who the product owner is, let alone have a prioritized backlog). 
When it comes to problems with Agile development, people tend to blame the process when in reality the problem(s) are in their implementation and/or support of the process.

Well said. I find many management failures are do to very poor implementations of a style - compared to just really bad ideas in the first place (though that also exists). I think agile has great potential but you can't just say we are doing agile and expect everything to work. Poor implementation of the ideas will lead to failure.

Also you have to realize, in many organizations, you have to make numerous modifications. In my organization we have had to modify things because of what the organization is willing to do. It is working well for us but we have to watch where we are weak and attempt to improve our ability to actually practice agile methods.

Related: Better and Different Management - Future Directions for Agile Management - Leaving Quality Behind – Again No