The traditional quality related frameworks (CMM, ISO ...) and Agile methods like Extreme Programming (XP, Scrum) have moved into opposite directions. One side trying to bring down the other. XP says that all the traditional processes are the root of all evil and cause of all the project failures, and on the other side quality gurus regards methodologies like XP as mere fads.
I agree that the quality frameworks have not really delivered what was expected of them, but then it is not that they have failed altogether. These processes still have a huge industry following and some of the quality certifications actually act as benchmarks in the software industry (CMM Level 5). By saying this, have suddenly undergone a total transformation and after trying to advocate XP for years have suddenly given up and started following the beaten path. Well, lovers of XP, you all can relax, no, I have not done that. What I am trying to show is that the path, a lot of XP gurus advocating (anti-quality, ISO and CMM bashing) will only harm XP in the long run. We should try to advocate that XP in no way goes against the Traditional quality paradigms. It in fact closely adheres to it and complements it.
During my journey through the CSQA certification, I noticed something very strange. At the core, principles of XP were in fact very similar to those that The Original Quality Gurus like Deming and Juran had advocated.
1. Improve quality by making small improvements in large quantities (XP - translates to rapid and continuous integration.)
2. Follow the Deming’s cycle - Plan, Do, Check, Act ( XP - A small design, Code a little, Test it fully, get the feedback and start again. Again continuous integration with continuous testing and rapid feedback. In fact the entire XP method can be seen as a slightly modified Deming’s Cycle).
3. Processes and Documentation. (XP - I here actually disagree XP’s view of documentation. Unlike what XP advocates, documentation inherently is an extremely important activity. Try transitioning an application which has no document and you’ll realize. However the problem with documentation is that usually it is not updated and it very rapidly becomes obsolete. This however is no excuse for not doing documentation at all. Some languages like python have actually taken a good step by integrating documentation right into code. )
So next time, u meet a quality guru, tell him that how by doing XP, we are truly following Deming and he will see us with more respect ( something that we deserve)
No comments:
Post a Comment