Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

In the Sun Java coding conventions document (here:, it states:

"80% of the lifetime cost of a piece of software goes to maintenance"

Does anyone know where this statistic is sourced from? I don't doubt the assertion, but I can make up statistics without attribution as well and I'd like to know where this came from before I start using it as a basis for other statements.

share|improve this question

closed as primarily opinion-based by MichaelT, durron597, Ixrec, Bart van Ingen Schenau, Kilian Foth Oct 27 '15 at 6:58

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.If this question can be reworded to fit the rules in the help center, please edit the question.

76.3% of all statistics are made up on the spot – Steven A. Lowe Apr 12 '11 at 19:07
@Lowe, that's 76.37% or 3/5th. And the statistics never lie. – Christopher Mahan Apr 12 '11 at 19:35

You have to first define what maintenance means. Usually maintenance costs in excess of 50% include enhancement as well as defect removal.

The 80% figure doesn't seem to be directly attributable to a specific study, but you can find several credible figures in the > 50% range in the studies mentioned on this page:

Table 3-7 of Applied Software Measurement, third ed. lists that of the 8200 projects studied, only 2410 were new developments. 1385 were maintenance projects, and the rest were enhancement projects. That corresponds to roughly 70% of projects that are maintaining existing code.

share|improve this answer

Barry Boehm's Software Engineering Economics. And it's not 80% it's 50%-75%.

Chapter 30. Page 533-534.

share|improve this answer

The 80-20 rule of thumb is very commonly invoked in many contexts, as concrete sample numbers standing in for the phrase "the large majority."

This may be just such an invocation.

share|improve this answer

from Java Code Conventions - September 12, 1997 by Sun Microsystems.

You will see this quote in the introduction of the document under

1.1 Why Have Code Conventions

  • 80% of the lifetime cost of a piece of software goes to maintenance
  • Hardly any software is maintained for it's whole life by it's original author
  • Code conventions improve the readability of the software allowing engineers to understand new code more quickly and thoroughly
  • If you ship your source code as a product, you need to make sure it is as well packaged and clean as any other product you create.

By 2011, this document is quite dated. Software and systems are being developed in a multitude of languages including and excluding Java.

However, Java is very slow and has an extremely large memory footprint compared to C/C++. When some users experience how slow Java actually runs in comparison to other languages such as PHP, C/C++, etc, they often think that something is wrong with the program. Money is then spent on trying to improve performance to no avail. For this reason I always question people's motivation to jump on the titanic and set sail. As it does not make sense to implement many programs in Java, especially where performance or memory footprint is a concern.

I have actually seen people spend more time to implement something in Java for the sake of it being a Java implementation than they would have spent implementing the same software as a bash script on Linux or in Python or C++.

I'm not saying avoid Java at all costs, but there is a right tool for the right job and there are many many more tools than Java these days.

Congratulations to Apple for finally deprecating Java.!

share|improve this answer
The OP is looking for the original source of this quote and/or statistical evidence, not rants about Java. – Péter Török Feb 15 '11 at 9:27
This doesn't answer the question and isn't helpful at all. – KeesDijk Feb 15 '11 at 9:27
Honest, but off topic :) – dsimcha Apr 12 '11 at 13:06

protected by gnat Oct 19 '15 at 17:18

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.