A few day ago, I ran into a very interesting article by Robert L. Glass, published on 2001 at the IEEE Software
Among other very interesting facts, it highlights maintenance costs:
M1. Quality and maintenance have an interesting relationship.
M2. Maintenance typically consumes about 40 to 80 percent (60 percent average) of software costs. Therefore, it is probably the most important life cycle phase.
M3. Enhancement is responsible for roughly 60 percent of software maintenance costs. Error correction is roughly 17 percent. So, software maintenance is largely about adding new capability to old software, not about fixing it.
M4. The previous two facts constitute what you could call the “60/60” rule of software.
M5. Most software development tasks and software maintenance tasks are the same—except for the additional maintenance task of “understanding the existing product.” This task is the dominant maintenance activity, consuming roughly 30 percent of maintenance time. So, you could claim that maintenance is more difficult than development.