| Exploring Solution Spaces © Copyright 2003-2006, by C. Keith Ray | ||||||||||||||||||||||||
|
Archives
Subscribe |
2006.Mar.16 Thu
You Can't Change Just One Thing
A paper [pdf] by Glenn Vandenburg entitled "A Simple Model of Agile Software Processes - or - Extreme Programming Annealed" works out why the "interdependencies" of the various XP practices are not necessarily a bad thing. I like this bit:
Of course, a drawback of this overloading of a practice, is that when a team "adapts" XP but drops a practice, they're really dropping multiple aspects of that practice. To fully replace that practice could require adding in several other practices. If the team drops Test Driven Development, they are not only dropping unit tests, with its fast feedback on the quality of your code, but also the designing/refactoring aspect of TDD. They could add back in after-the-fact-unit tests (which provide slower, more difficult-to-implement feedback), but they would also need to add back in more design and refactoring practices as well. If the team drops Pair Programming, they are not only dropping the fast feedback from pair programming's 'continuous code review', but also they also drop the idea-generation that helps get coding done quicker, and lose opportunities for the 'enforcement' for coding standards, testing and integration processes. Adding in after-the-fact reviews will slow down the feedback and enforcement; and you would also need more brainstorming/design sessions. |
|||||||||||||||||||||||