Cusumano writes a crisp and thoughtful analysis of the essence of extreme programming (XP), and compares it to Microsoft’s best-way software development process.
Now, accomplished practitioners know there is no single best way; the approach selected depends on the problem and the development situation. With this understanding, this wonderful article tells us about several good practices that ethical professionals must consider.
The article is especially well-written, and is a quick and important read for those with financial, management, or development responsibilities related to the production of trustworthy software.
Cusumano concludes:
Every XP practice, except simple design and perhaps collective code ownership, has some analogues in a Microsoft-style development process. This suggests an overlap of about 80 percent. Beck argues that many of these similarities are superficial, and that is no doubt true. But there is also a reason for the similarities, superficial or not--good programmers generally gravitate toward similar good engineering practices that make sense for their contexts. I think Microsoft more closely resembled XP in its earlier years. Today, it would benefit from internalizing some XP concepts more deeply, such as the importance of simple design and more direct involvement of customer representatives.
This article should be required reading for every software engineering, computer science, or systems engineering education program--my students will read it.