Ninety–ninety rule: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
revert - this just changed a variant to match the original quote, and is inconsistent with the preceding sentence
Line 17: Line 17:
A less common variant is changing all percentages to 90%:
A less common variant is changing all percentages to 90%:


:"The first 90% of the code takes 90% of development time. The other 10% of code takes the other 90% of time."
:"The first 90% of the code takes 90% of development time. The other 90% of code takes the other 90% of time."


==See also==
==See also==

Revision as of 06:00, 24 January 2009

In computer programming and software engineering, the ninety-ninety rule is a humorous aphorism that states, "The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time."

That the total development time sums to 180% is a wry allusion to the notorious tendency of engineering projects to significantly overrun their original schedules. It expresses both the rough allocation of time to easy and hard portions of a programming project and the cause of the lateness of many projects (that is, failure to anticipate the hard parts). That is, it takes both more time and more coding than expected to make a project work.

The rule is attributed to Tom Cargill of Bell Labs and was made popular by Jon Bentley's September 1985 Programming Pearls column in Communications of the ACM.

Variations

Because the percentages do not sum to 100, Cargill's aphorism is sometimes mistaken for a typo. The "corrected" version of the rule is sometimes quoted as:

"The first 90% of the code accounts for the first 10% of the development time. The remaining 10% of the code accounts for the other 90% of the development time."

Another variation appears as:

"Some 90% of the code takes 10% of the time allotted, and the remaining 10% of the code takes the other 90% of the time".

A less common variant is changing all percentages to 90%:

"The first 90% of the code takes 90% of development time. The other 90% of code takes the other 90% of time."

See also

External links