Download presentation
Presentation is loading. Please wait.
Published bySilas Andrew Dorsey Modified over 6 years ago
1
Fred Brooks - A Software Engineering Icon - “No Silver Bullet”
M. M. Pickard Software Engineering
2
Accidents, and the Essence of Software
Software problems can be categorized as essence and accidents. Accidents - things that can be improved about software production. Essence- things that can’t because of the nature of software.
3
The Essence of Software
Inherent problems with software: complexity conformity changeability invisibility
4
The Essence of Software: complexity
A "simple" program has extremely large number of possible states. Large products can not be completely understood by a single person.
5
The Essence of Software: conformity
Complexity of software is exacerbated by the need to conform to existing systems. The perception is that software is the most malleable component of systems.
6
The Essence of Software: changeability
A two-edged sword. Reasons for change: Environmental adaptation; Enhancement; Relative ease of change; Software often outlives hardware components of the system.
7
The Essence of Software: invisibility
Software artifacts can only be viewed from one perspective at a time. - There is no way to capture visually in one image all the characteristics of a software artifact.
8
Brooks’ 1986 conclusions: Brooks' bottom line: Because of the essential problems of software, there can be no ten-fold increase in productivity within the next decade due to any single breakthrough.
9
Brooks’ 1986 suggestions: Buy software off the shelf whenever possible. Use rapid prototyping. Use incremental development. Develop great designers.
10
Fred Brooks in 1995: No 10X in 10 years due to one thing is still true. Productivity is increasing about 2X per 10 years due to better tools and better processes. “Buy, don’t build” is still good advice.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.