Tonight I attended a meeting of the Boston Software Process Improvement Network
. Michael Mah spoke on When Agile Becomes a Quality Game-Changer
. These were the highlights for me:
- Compared to traditional (mostly waterfall) development, Agile development is 30% quicker and results in 75% fewer defects. These figures are from a database of thousands of software projects that Mr. Mah's firm, QSM Associates, has accumulated over many years.
- Agile works best when the following factors are in play:
- Test-Driven Development is practiced.
- People work in pairs. I gathered that the pairs may be programmer & programmer or programmer & business person.
- The entire team is "co-located" -- ideally in one large room.
- The team gets to focus on one project at a time.
- The team has a passion for what they do.
- Bug density in the finished software increases "geometrically" with team size. Throwing more people at a project might get it done a little quicker, but you'll have many more opportunities for mis-communication and therefore many more defects.
- The choice of programming language has no material effect on productivity or bug density, but programmers' experience with the language does.
Mr. Mah invited us to download a copy of a study that QSM Associates has compiled. Here's the link in case you're interested: http://qsma.com/agilereport/