Sunday, 18 November 2012

Is the cost of software development shifting?

I recently saw someone pull out an old statement that Maintenance is 80% of the cost of development.  I recall reading something similar in a software engineering textbook in 1996 - but a lot has changed in the way that we approach the development of software since then.

Here are a few key aspects of modern software development which should hopefully have shifted the balance:
  • Regular involvement of the product owner during development;
  • Frequent opportunities to observe and verify progress and change direction if necessary;
  • Regression tests built alongside the product to detect potentially unintended side-effects of later changes;
  • Routine review of code and configuration, either through pair programming or other electronically supported system.
Taking an unrealistic and strictly numerical approach to this, if the handful of things listed above double the cost of development but halve the cost of maintenance then the investment up front should be easy to justify.

(0.2 * 2) + (0.8 / 2) = 0.8
0.8 < 1
Q.E.D.

Of course all of this is completely open to speculation.  It could well be that the software products that are produced using the XP and agile approaches are more successful and result in a longer maintenance phase.

No comments:

Post a Comment