I haven't written a book review for several weeks. Today I suddenly want to write a book. Because of the previous book reviews
Yes
For C ++, I plan to write about software engineering today. For software engineering, I personally think that so far, no book has been influential and profound enough to go beyond the Mythical man-month (full name: the Mythical man-month -- Essay on Software
Engineering ). So I want to talk about the famous man-month myth. If you are familiar with this book and think you have mastered its essence, you do not have to read this post again.
★Background of authors and books
Based on "How to choose it books"
As mentioned in this article, the author is a major guarantee of the quality of books. So let me gossip about the author of man-month Myth: Frederick Phillips Brooks.
(Hereinafter referred to as Brooks ). The best achievement of this dude is1960s
(He was29
Years old) host and complete an equally awesomeIBM 1, 360
System development.IBM 1, 360
It was later hailed as a marker for mankind's entry into the information age from the Atomic Energy age. This project is not only of historical significance, but also very representative in software engineering (because of its scale and complexity ). To help everyone better understand the project, the following data are listed:
--------------------------------
A total of 2000 software personnel 40 years later, Microsoft's Windows 2003 team also had 5000 people
Total software costs $0.5 billion the first atomic bomb project in Manhattan was just $2 billion
Development cycle: 4 years
--------------------------------
Note that the above is only software statistics.
Eventually,IBM 1, 360
The project has not completed all its objectives, but it is a miracle that this unprecedented project has not died in the middle. Later, Brooks1975
Years (more than 30 years ago) have compiled and published some of his software engineering Essays (many of which are related to the 360 Project), that is, the mythical man-month, which we commented on today.
★Structure of this book
As we have already mentioned above, Brooks used to sort out some of the articles he wrote in the past, so the chapters in the book are relatively independent. Therefore, you may not read the data in the typographical order. For example, every time I re-read this book, I just picked one or two of them.
★Highlights of this book
Although each chapter in this book can be called a classic, it only introduces the most impressive chapters.
◇ Chapter 2:Man-month
"Misleading
This is the most famous chapter in this book. In this chapter, Brooks specifically opposed the use of the "man-month" highly fraudulent measurement unit. BecauseMan-month
This title implies that "man" and "month" can be exchanged.
Even today, a large number of programmers, testers, project managers, and software company owners have mistakenly usedMan-month
To measure the workload of software development. In fact, when someone claims that the workload is six months, this sentence is not significant. Generally, if one person works for six months, it is almost difficult for six to complete within one month. Therefore, when talking about the workload, I will make it clear that it takes several months to work.
In addition, Brooks exports a strange theory based on the ininterchangeable nature of man-month:Increasing manpower for projects with poor progress will lead to project lag.
. This strange theory was so famous that it was later called the "Brooks Law
". This rule is useful. Whenever a superior leads an attempt to increase manpower to catch up with the Progress (usually later in the project), I will move out of it to reject this attempt.
◇ Chapter 2 about team composition
To solve the difficulties of large teams mentioned in previous chapters, Brooks proposed a new solution to split large teams into several small surgical teams.
Each small team has a primary Programmer (similar to a primary surgeon). All problem breakdown and functional definitions are done by the primary programmer to reduce communication costs. In addition, each primary programmer is equipped with a number of mediocre people to help him/her, which is also in line with the actual situation (remember "principles series"
"Is the ratio of excellent personnel to mediocre personnel mentioned in ?). I will not elaborate on the specific roles and responsibilities. They are all written.
◇ Chapter 17, about"No silver bullet
"
In fact, the content of Chapter 1 "no silver bullet" came from the report prepared by the author in 16th and was later added to the book. Chapter 2 "no silver bullet" was added to the 17th anniversary edition.
According to the author's claim in the book's "20th Anniversary" that "no silver bullet" is the most controversial chapter. However, I personally think: although the two chapters are the most controversial, they are the most important, profound, and most valuable chapters in the book. Even if your work has nothing to do with software engineering, you should read it carefully.
In chapter 16th, Brooks analyzedFundamental difficulties
(Complexity, non-consistency, variability, and invisibility) andSecondary difficulty
. After analyzing the fundamental and secondary difficulties, the author asserted that in the next decade,Impossible
Some technical breakthroughs (silver bullet) can be completely solvedFundamental difficulties
, Resulting in software development efficiencyMagnitude
.
Now, more than ten years have passed. After the publication of "no silver bullet", countless new things (such as object-oriented, component technology, design patterns, CMM, UML, agile development, rad, and so on) emerged in the software field ), many creators of new things claim that they have invented the silver bullet. But in fact, no new technology can withstand the test of time and truly won the title of silver bullet.
★My suggestions
After talking about this, let's talk about some of my suggestions:
If you have never read a book, go and read it all (not necessarily in order ).
If you used to watch the old version, go to the new version (the 20th Anniversary) and check the four additional chapters.
If you have read all the new versions, you can try again on a regular basis (for example, every one or two years.
In addition, the Chinese and English versions of this book are available for download on the Internet for the 20th anniversary. Those who like to read e-books can search for it by Google.
Copyright Notice
All original articles in this blog are copyrighted by the author. This statement must be reprinted to keep this article complete, and the author's programming will be noted in the form of hyperlinks
And the original address of this article:
Http://program-think.blogspot.com/2009/03/book-review-mythical-man-month.html