High Level Language Programming

Developing a Large Software Systems

Examples Number of Developers Lines of Code Development Time
compilers, PC operating systems, word processors
1-3 years
large operating systems, inventory control
3-5 years
major military systems
> 100
> 1M
> 5 years

Incredible complexity of development requires a careful development process.



The Mythical Man Month, by Fred Brooks, Addision Wesley, 1975:

"Adding manpower to a late software project makes it later. "

Chemical engineers learned long ago that a process that works in the laboratory cannot be implemented in a factory in one step. An intermediate step called the pilot plant is necessary....In most [software] projects, the first system is barely usable. It may be too slow, too big, awkward to use, or all three. There is no alternative but to start again, smarting but smarter, and build a redesigned version in which these problems are solved.... Delivering the throwaway to customers buys time, but it does so only at the cost of agony for the user, distraction for the builders while they do the redesign, and a bad reputation for the product that the best redesign will find hard to live down. Hence, plan to throw one away; you will, anyhow.
More quotes.


CS1104 Main Page
Last Updated 10/25/2000
© L.Heath, 2000, upgraded by J.A.N. Lee.