Nuggets from The Mythical Man-Month Fred Brooks University of North Carolina at Chapel Hill brooks@cs.unc.edu ONR_Updated
How the Book Came to Be Tom Watson, Jr.’s Question: “Why is managing software harder than managing hardware development?” Comp 145 Lectures The Anniversary Edition Chapter 18—a precis Chapter 19—a retrospective
1. The Tar Pit A program, a programming system, a programming product, a programming system product Joys of the craft Woes of the craft
2. Brooks’s Law, and Why Adding people to a late software project makes it later. Obviously an over-simplification Why this is true Refactoring Training Intercommunication
4-6. Architect—Why and How Conceptual integrity Achieving it, from the user’s viewpoint Architecture, implementation, realization Objections: Specs will be too rich Architect gets all the fun Implementer stands and waits
16. No Silver Bullet Why does hardware advance so fast and software engineering so slowly? There is not, and cannot be, a silver bullet Essence and “accident” (=incidental) Complexity, conformability, changeability, invisibility We’ve solved most of the accidents
Promising Attacks False hopes Buy, don’t build Grow, don’t build—incremental dev. The Waterfall Model has got to go! Object-oriented, aspect programming “The Bazaar versus the Cathedral” Extreme programming?
What Went Wrong in ObamaCare Software? Everything! Too little time in schedule from start No prime contractor in charge Ever-changing requirements System integration by totally inexperienced government agency No end-to-end test for working No test for security Political decision to roll-out unready Just like the Challenger disaster! Lying