Software maintenance is an important, but rarely discussed, activity in software development. In its last poll, Methods & Tools asked the question: “What part of your software development budget is devoted to maintenance (enhancing deployed software)?”
The results were:
Participants: 192 / 433
Ending date: December 2012 / October 2007
Source: Methods & Tools Software Development Magazine
This survey shows that the share of maintenance in the software development budgets is increasing, even if software development budgets are also supposed to get bigger. A similar poll on the same topic was performed by Methods & Tools in 2007. At that time, only 36% of the participants were spending more than 50% of their software development budget for maintenance activities and only 12% were spending more than 75%. Currently, the number of participants spending the majority of their software development budget in maintenance is 48%. The most important change has been in the category that spends more than 75% of their budget on maintenance that has more than doubled.
There are many explanations to this situation. The first reason is the economic crisis that hit companies around the world in 2007-2008. This might have limited the number of new software development projects launched. Another reason is that many organizations have already converted their applications to the web technologies. Thus they work now more on enhancing their current software portfolio, but there are no new major technology shifts that require a massive rewriting of applications.
Another way to consider these numbers is that with the current adoption of Agile software development approaches, software applications are now delivered faster in production. Gone are the days were you were spending two years to develop a new system. As initial releases are already available after some months, the amount of time dedicated to “enhance” an existing software application is getting bigger.