

|
The Mythical Man-Month: Essays on Software Engineering, 20th Anniversary Edition (Paperback)
by Frederick P. Brooks
Category:
Software development, Programming, IT, Technology |
Market price: ¥ 388.00
MSL price:
¥ 378.00
[ Shop incentives ]
|
Stock:
Pre-order item, lead time 3-7 weeks upon payment [ COD term does not apply to pre-order items ] |
MSL rating:
Good for Gifts
|
MSL Pointer Review:
Focusing on the human elements of software engineering, this classic offers insight for anyone managing complex development projects. |
If you want us to help you with the right titles you're looking for, or to make reading recommendations based on your needs, please contact our consultants. |
 Detail |
 Author |
 Description |
 Excerpt |
 Reviews |
|
|
Author: Frederick P. Brooks
Publisher: Addison-Wesley Professional
Pub. in: August, 1995
ISBN: 0201835959
Pages: 322
Measurements: 9.1 x 6.1 x 0.8 inches
Origin of product: USA
Order code: BA00535
Other information: 1st edition
|
Rate this product:
|
- MSL Picks -
Fred Brooks wrote the original edition of this book about software development truths in 1975. What's so striking is how his assertions still hold true through all the apparent changes in how software is built, sold, and used. The title refers to Brooks' proven assertion that, for most projects, adding more people to a late software project will make it later. He has many others, including the famous "No Silver Bullet" article. In his 1995 update, he finds that most of his original claims are still true.
Don't be put off by all the examples about punched cards, assembly language, and IBM mainframes. Rather, look for ideas like requirements management, iterative development, and even hints of extreme programming ("surgical teams"). Brooks and others saw these things in 1975, while predicting that software development productivity had no chance of vast gains per decade parallel to hardware gains.
But Brooks hopes you read with optimism. The message is not that software development can't improve. Rather, that the essential part (not the mechanics of coding which has improved somewhat) is people creating machines (software) from pure thought. We can look for improvement methods in our ways of thinking, communicating, and working together.
If you have managed some software projects or have worked on some non-trivial software systems, undoubtedly you have faced many difficulties and challenges that you thought were unique to your circumstance. But after reading this book, you will realize that many of the things you experienced, and thought were unique problems, are NOT unique to you but are common systemic problems of developing non-trivial software systems. These problems appear repeatedly and even predictably, in project after project, in company after company, regardless of year, whether it's 1967 or 2007.
You will realize that long before maybe you were even born, other people working at places like IBM had already experienced those problems and quandries. And found working solutions to them which are as valid today as they were 30 years ago. The suggestions in this book will help you think better and better manage yourself, and be more productive and less wasteful with your time and energy. In short, you will do more with less.
Some of Brooks insights and generalizations are:
The Mythical Man-Month: Assigning more programmers to a project running behind schedule, may make it even more late.
The Second-System Effect: The second system an engineer designs is the most bloated system she will EVER design.
Conceptual Integrity: To retain conceptual integrity and thereby user-friendliness, a system must have a single architect (or a small system architecture team), completely separate from the implementation team.
The Manual: The chief architect should produce detailed written specifications for the system in the form of the manual, which leaves no ambiguities about any part of the system and completely specifies the external spcifications of the system i.e. what the user sees.
Pilot Plant: When designing a new kind of system, a team should factor in the fact that they will have to throw away the first system that is built since this first system will teach them how to build the system. The system will then be completely redesigned using the newly acquired insights during building of the first system. This second system will be smarter and should be the one delivered to the customer.
Formal Documents: Every project manager must create a roadmap in the form of formal documents which specifies milestones precisely and things like who is going to do what and when and at what cost.
Communication: In order to avoid disaster, all the teams working on a project, such as the architecture and implementation teams, should stay in contact with each other in as many ways as possible and not guess or assume anything about the other. Ask whenever there's a doubt. NEVER assume anything.
Code Freeze and System Versioning: No customer ever fully knows what she wants from the system she wants you to build. As the system begins to come to life, and the customer interacts with it, he understands more and more what he really wants from the system and consequently asks for changes. These changes should of course be accomodated but only upto a certain date, after which the code is frozen. All requests for more changes will have to wait until the NEXT version of the system. If you keep making changes to the system endlessly, it may NEVER get finished.
Specialized Tools: Every team should have a designated tool maker who makes tools for the entire team, instead of all individuals developing and using their private tools that no one else understands.
No silver bullet: There is no single strategy, technique or trick that will exponentially raise the productivity of programmers.
(From quoting T. Harris and A. Imran, USA)
Target readers:
Software developers, Software development project leaders and managers, Students of Computer Science and University teachers.
|
- Better with -
Better with
Peopleware : Productive Projects and Teams, 2nd Ed.
:
|
Customers who bought this product also bought:
 |
Peopleware : Productive Projects and Teams, 2nd Ed. (Paperback)
by Tom Demarco, Timothy Lister
The book made a clear and compelling augument that the human factor, not technology, makes or breaks a software development effort. |
 |
The Pragmatic Programmer: From Journeyman to Master (Paperback)
by Andrew Hunt, David Thomas
A classic reading on programming ranking with Code Complete and The Mythtical Man-Month. |
 |
Code Complete, Second Edition (Paperback)
by Steve McConnell
Focusing on actual code construction, but touching on every aspect of software engineering including psychology/behavior, this book is an essential reading for every and all developers. |
 |
Rapid Development (Paperback)
by Steve McConnell
A succinct, well organized and must-read collection of the lessons learned and best practices in software engineering over the last three decades. |
 |
Refactoring: Improving the Design of Existing Code (Hardcover)
by Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts
Full of code examples in Java, easy to read and right into target, this book is a masterly and comprehensive reference on refactoring. |
|
Frederick P. Brooks, Jr., was born in 1931 in Durham, NC. He received an A.B. summa cum laude in physics from Duke and a Ph.D. in computer science from Harvard, under Howard Aiken, the inventor of the early Harvard computers. At Chapel Hill, Dr. Brooks founded the Department of Computer Science and chaired it from 1964 through 1984. He has served on the National Science Board and the Defense Science Board. His current teaching and research is in computer architecture, molecular graphics, and virtual environments. He joined IBM, working in Poughkeepsie and Yorktown, NY, 1956-1965.
He is best known as the "father of the IBM System/360", having served as project manager for its development and later as manager of the Operating System/360 software project during its design phase. For this work he, Bob Evans, and Erick Block were awarded and received a National Medal of Technology in 1985. Dr. Brooks and Dura Sweeney in 1957 patented a Stretch interrupt system for the IBM Stretch computer that introduced most features of today's interrupt systems. He coined the term computer architecture . His System/360 team first achieved strict compatibility, upward and downward, in a computer family.
His early concern for word processing led to his selection of the 8-bit byte and the lowercase alphabet for the System/360, engineering of many new 8-bit input/output devices, and providing a character-string datatype in PL/I. In 1964 he founded the Computer Science Department at the University of North Carolina at Chapel Hill and chaired it for 20 years. Currently, he is Kenan Professor of Computer Science. His principal research is in real-time, three-dimensional, computer graphics - "virtual reality." His research has helped biochemists solve the structure of complex molecules and enabled architects to "walk through" buildings still being designed. He is pioneering the use of force display to supplement visual graphics. Brooks distilled the successes and failures of the development of Operating System/360 in The Mythical Man-Month: Essays in Software Engineering, (1975). He further examined software engineering in his well-known 1986 paper, "No Silver Bullet."
He is just completing a two-volume research monograph, Computer Architecture, with Professor Gerrit Blaauw. Now, 20 years after the initial publication of his book, Brooks has revisited his original ideas and added new thoughts and advice within The Mythical Man-Month, Anniversary Edition. Brooks has served on the National Science Board and the Defense Science Board. He is a member of the National Academy of Engineering and the American Academy of Arts and Sciences. He has received the the IEEE John von Neumann Medal, the IEEE Computer Society's McDowell and Computer Pioneer Awards, the ACM Allen Newell and Distinguished Service Awards, the AFIPS Harry Goode Award, and an honorary Doctor of Technical Science from ETH-Zürich.
|
From the Publisher:
Few books on software project management have been as influential and timeless as The Mythical Man-Month. With a blend of software engineering facts and thought-provoking opinions, Fred Brooks offers insight for anyone managing complex projects. These essays draw from his experience as project manager for the IBM System/360 computer family and then for OS/360, its massive software system. Now, 20 years after the initial publication of his book, Brooks has revisited his original ideas and added new thoughts and advice, both for readers already familiar with his work and for readers discovering it for the first time.
The added chapters contain (1) a crisp condensation of all the propositions asserted in the original book, including Brooks' central argument in The Mythical Man-Month: that large programming projects suffer management problems different from small ones due to the division of labor; that the conceptual integrity of the product is therefore critical; and that it is difficult but possible to achieve this unity; (2) Brooks' view of these propositions a generation later; (3) a reprint of his classic 1986 paper "No Silver Bullet"; and (4) today's thoughts on the 1986 assertion, "There will be no silver bullet within ten years."
|
To my surprise and delight, The Mythical Man-Month continues to be popular after twenty years. Over 250,000 copies are in print. People often ask which of the opinions and recommendations set forth in 1975 I still hold, and which have changed, and how. Whereas I have from time to time addressed that question in lectures, I have long wanted to essay it in writing.
Peter Gordon, now a Publishing Partner at Addison-Wesley, has been working with me patiently and helpfully since 1980. He proposed that we prepare an Anniversary Edition. We decided not to revise the original, but to reprint it untouched (except for trivial corrections) and to augment it with more current thoughts. Chapter 16 reprints "No Silver Bullet: Essence and Accidents of Software Engineering," a 1986 IFIPS paper that grew out of my experience chairing a Defense Science Board study on military software. My co-authors of that study, and our executive secretary, Robert L. Patrick, were invaluable in bringing me back into touch with real-world large software projects. The paper was reprinted in 1987 in the IEEE Computer magazine, which gave it wide circulation.
"No Silver Bullet" proved provocative. It predicted that a decade would not see any programming technique which would by itself bring an order-of-magnitude improvement in software productivity. The decade has a year to run; my prediction seems safe. "NSB" has stimulated more and more spirited discussion in the literature than has The Mythical Man-Month. Chapter 17, therefore, comments on some of the published critique and updates the opinions set forth in 1986.
In preparing my retrospective and update of The Mythical Man-Month, I was struck by how few of the propositions asserted in it have been critiqued, proven, or disproven by ongoing software engineering research and experience. It proved useful to me now to catalog those propositions in raw form, stripped of supporting arguments and data. In hopes that these bald statements will invite arguments and facts to prove, disprove, update, or refine those propositions, I have included this outline as Chapter 18.
Chapter 19 is the updating essay itself. The reader should be warned that the new opinions are not nearly so well informed by experience in the trenches as the original book was. I have been at work in a university, not industry, and on small-scale projects, not large ones. Since 1986, I have only taught software engineering, not done research in it at all. My research has rather been on virtual reality and its applications.
In preparing this retrospective, I have sought the current views of friends who are indeed at work in software engineering. For a wonderful willingness to share views, to comment thoughtfully on drafts, and to re-educate me, I am indebted to Barry Boehm, Ken Brooks, Dick Case, James Coggins, Tom DeMarco, Jim McCarthy, David Parnas, Earl Wheeler, and Edward Yourdon. Fay Ward has superbly handled the technical production of the new chapters.
I thank Gordon Bell, Bruce Buchanan, Rick Hayes-Roth, my colleagues on the Defense Science Board Task Force on Military Software, and, most especially, David Parnas for their insights and stimulating ideas for, and Rebekah Bierly for technical production of, the paper printed here as Chapter 16. Analyzing the software problem into the categories of essence and accident was inspired by Nancy Greenwood Brooks, who used such analysis in a paper on Suzuki violin pedagogy. Addison-Wesley's house custom did not permit me to acknowledge in the 1975 Preface the key roles played by their staff. Two persons' contributions should be especially cited: Norman Stanton, then Executive Editor, and Herbert Boes, then Art Director. Boes developed the elegant style, which one reviewer especially cited: "wide margins, and imagi- native use of typeface and layout." More important, he also made the crucial recommendation that every chapter have an opening picture. (I had only the Tar Pit and Rheims Cathedral at the time.) Finding the pictures occasioned an extra year's work for me, but I am eternally grateful for the counsel.
Deo soli gloria or Soli Deo Gloria - To God alone be the glory.
|
|
View all 12 comments |
Theon (MSL quote), USA
<2007-01-10 00:00>
If you think it would be outdated it must be because you have not worked long in the business of software engineering. It is not about languages or tools, its about managing people. As much as we like to think we can automate the eccentricities and flaws of people away, we never will. Software engineering is a process done by people - not machines and milestones on paper. In order to succeed the key is not avoiding mistakes; mistakes are inevitable. No, the secret to success is not the process but the people who use the process. Having the tools and understanding to not just handle setbacks of human error but to flourish in them, that is the secret to success. That is what this book tries to convey. Too few seem to get the message. |
Mark (MSL quote), USA
<2007-01-10 00:00>
This is truly a must read. Many have said that this book is quite out date, and I don't outright deny that charge. However, it is still very relevant and helpful. I found at least half of the chapters to be very sharply applicable to today's software engineer. If you have any involvement on any organized software project, please do yourself a favour and get this book! |
Moshe Reuveni (MSL quote), Australia
<2007-01-10 00:00>
I cannot think up any other book that would come close to being as effective as this one when it comes to solid, down to earth advice on the management of software projects.
Direct and to the point in its presentation, and built on actual experience gathered during years of work, the book lays down its insight in an extremely effective and efficient manner, making for both an interesting and an effective read. Quantity wise, the book addresses many issues surrounding the world of software project management, issues that usually take several books for others to explore.
Although the book is old, with references to old technologies that serve best as comic relief nowadays, it is quite amazing to see how true and how valid the insights gathered by the author are today. My own experience and discussions I have had with colleagues from reputable Fortune 100 companies helped me realize how relevant the book still is: Decades after it was written, project managers everywhere still approach software projects with attitudes that would never be accepted elsewhere and are still attempting to cut corners they should not cut. They all end up paying the price, just as the book predicts.
The bottom line is that this book is a true classic: Extremely effective, concise, readable, entertaining - and one that withstands the test of time. |
Soren Meyer (MSL quote), Germany
<2007-01-10 00:00>
A classic book about the development and management of large scale software projects. One of the industries veterans shares his experience and his views gathered mainly during the development process of the IBM OS/360 operating system. Yes, this book is more than 20 years old - which makes it even more interesting (or shall I even say: sad?) to see that many of the observed shortcomings and pitfalls are still the industries greatest problems today. Maybe all management and developers alike should be required to read this book prior to getting a job in the field. Although the book does feature some code examples these are few and far in between, it's main focus lies on the coordination and management aspects of software projects. The somewhat poetical title hints at one of the most stressed points, namely that men are not interchangeable and that twice as many engineers don't cut development times in half. Brooks also offers his opinions on the psychological aspects of systems design, backed up by his experience and occasional statistical evidence. This anniversary edition features a review by the author, where he sums up what points he thinks remain valid in hindsight more than twenty years later.
I particularly enjoyed a beautiful chapter titled: "The joys of the craft" where Brooks tries to explain what fascinates and captures him about programming. If you happen to be stuck on a frustrating stretch of your project - read this chapter and you'll feel better - I did. |
View all 12 comments |
|
|
|
|