← Week 11 |
Our last chapter from Books is meant to be a reflection piece. If you like, you can read Chapter 17 to see how his predictions withstood the test of time.
No Silver Bullet — Essence and Accident in Software Engineering
This is one of the most important chapters in our book. Here Brooks points out that the difficulty in writing software can be traced to one of two causes: essential difficulties that are inherent in writing software and accidental difficulties that have to do with the way we write software today.
This distinction between accidental and essential can be difficult to understand. As an example, imagine the task of doing your calculus homework. Of course there are many components to doing this math assignment, some of which are accidental and some of which are essential. For example:
- Figuring out which problems need to be done. This is accidental. This has everything to do with how your particular instructor choose to describe the assignment. There is nothing innately difficult about this task.
- Learning a new concept. This is essential. Learning is fundamentally hard, especially if it is different than anything else we have previously learned.
- Writing neatly so the instructor can understand your work. This is accidental. This is a function of your medium (pencil and paper), your handwriting, and the way you work through the problem. It is easy to think of ways to do this that would be trivial to make it neat: such as typing your solutions in Mathematica or a similar tool.
- Solving a hard problem. This is essential. Math problems are designed to be on the very limit of what you can solve. Thus, by their very nature, they are difficult.
Brook's main thesis for this essay is that we can only hope to make inroads in the accidental difficulties.
F. Brooks,
Chapter 16: No Silver Bullet — Essence and Accident in Software Engineering.
The Mythical Man-Month : Essays on Software Engineering, Anniversary Edition
Productivity Measurement and Unidentified Flying Objects
This chapter introduces the dual topics: the importance of measuring intellectual work, and the difficulty of measuring it.
T. DeMarco & T. Lister,
Intermezzo: Productivity Measurement and Unidentified Flying Object.
Peopleware : Productive Projects and Teams, Third Edition
← Week 11 |