Second-system effect
From Wikipedia, the free encyclopedia
In computing, the second-system effect or sometimes the second-system syndrome refers to the tendency, when following on from a relatively small, elegant, and successful system, to design the successor as an elephantine, feature-laden monstrosity. The term was first used by Fred Brooks in his classic The Mythical Man-Month.[1] It described the jump from a set of simple operating systems on the IBM 700/7000 series to OS/360 on the 360 series.
Contents |
[edit] Explanation
| This section needs additional citations for verification. Please help improve this article by adding reliable references. Unsourced material may be challenged and removed. (July 2009) |
Although expressed as a problem of software design, the second-system effect is observable throughout all human design effort. It is somewhat akin to the idea of “fighting the last [previous] battle”.
People who have designed something only once before try to do all the things they “did not get to do last time”, loading the project up with all the things they put off while making version one, even if most of them should be put off in version two as well.
[edit] See also
- Unix philosophy
- Zawinski's Law of Software Envelopment
- OS/2
- Software bloat
- Inner-platform effect
- Sophomore slump
[edit] References
- ^ Brooks, Jr., Frederick P. (December 2006) [1975]. "The Second-System Effect". The Mythical Man-Month: essays on software engineering (Anniversary ed. ed.). Addison Wesley Longman. pp. 53. ISBN 0-201-83595-9.
This article was originally based on material from the Free On-line Dictionary of Computing, which is licensed under the GFDL.
[edit] External links
- Things You Should Never Do by Joel Spolsky, about the Netscape project.
- Rewriting Software, in Notes on Haskell.
- Rewrites Considered Harmful? by Neil Gunton
- The Big Rewrite by Chad Fowler.
| This software engineering-related article is a stub. You can help Wikipedia by expanding it. |