Thoughts on the myth of People's Month

Source: Internet
Author: User

Thoughts on the myth of People's Month

The man-month myth is the classic of IBM360 's father, Brooks, who provides insightful insights into the management of complex projects, with a lot of thought-provoking ideas and a wealth of software engineering practices that have benefited and inspired much of the reading.

This book is divided into 15 sections, of which tar pits, people's month myths, surgical teams, aristocratic autocracy, democratic politics and system design, and no silver bullets are my favorite chapters, here are my knowledge and insights from these chapters: from the (Tar Pits) section, I realized that the workload of programming system product development is for personal use, Nine times times the number of independently developed component programs; The programming industry also has some distress: (1) To adjust the way of doing things to the pursuit of perfection is the most difficult part of learning programming. (2) by others to set goals, and must rely on things beyond their control. (3) The true authority comes from the completion of each task. (4) Any creative activity is accompanied by tedious labor, and programming is no exception (5) It is often expected that the project will converge faster (bug, work time) near the end, while the software project is closer to completion, and the slower the convergence becomes. (6) When the product is about to be completed, it will always face a stale and outdated threat.

(Man-month Myth) section describes (1) the lack of reasonable time is the main reason for the lag of the project, which is more influential than all other factors. (2) Good cooking takes time, and some tasks cannot speed up without compromising results. (3) Our idea is flawed, so there will always be bugs. (4) We confuse the workload and the progress of the project with the estimation technology of cost accounting. Man-month is a dangerous and deceptive myth, because it implies that the number of people and time can be replaced by one another. (5) Decomposition of tasks in a number of people can lead to additional communication workload-training and communication (6) With regard to scheduling, the author's experience is 1/3 planning, 1/6 coding, 1/4 component testing, and 1/4 system testing. (7) Because we are uncertain about our own estimation techniques, we often lack the courage to persevere under the pressure of our management and our customers. (8) Brook rule: Adding manpower to a project that is lagging behind will only make progress more backward. (9) Additional staffing in software projects has increased the overall workload of the project from three areas: the reallocation of tasks itself and the resulting disruption of work, the training of new personnel, and the additional communication between the two.

(Surgical team) (1) There are also two years of experience, and with the same training, excellent professional programmers are 10 times times more productive than less programmers. (2) Small, capable team is the best. This is fully reflected in software process and extreme programming. (3) A team of two people, one of whom is a project manager, is often the best way to use people. (4) for the real big system, the small and capable team is too slow. (5) In fact, the vast majority of the experience of large-scale programming systems shows that swarmed's development approach is high-cost, slow and inadequate, and developed products cannot be integrated conceptually. (6) A lead programmer, a team structure similar to the surgical team, provides a way to achieve product integrity that is produced by a small number of minds, as well as the overall productivity of multiple facilitators, and drastically reduces the amount of communication.

From the section on (aristocracy, democracy and system design) I realized (1) Conceptual integrity is the most important consideration in system design. (2) In order to obtain conceptual integrity, the design must be done by a single person or a small team with a consensus. (3) For very large projects, separating the design method, the work of the architecture and the concrete realization is a powerful method to obtain the concept integrality. (4) Discipline and rules are beneficial to the industry. External architectural provisions are actually augmented rather than restricting the implementation of the group's creativity. (5) Architecture, design implementation, physical implementation of many of the work can be carried out concurrently.

(without a silver bullet) The human wolf is a kind of terrorist creature with both human and wolf characteristics, and the silver Bullet is one of the most effective bullets to destroy it. The author compares the software development to the human wolf, and compares the method of improving the software development efficiency to the silver bomb. The author predicts that in the next decade, it is impossible to try to improve the efficiency of software development by looking for an effective silver bullet that can increase the effectiveness of one or even several orders of magnitude. No silver bullets. The author lists some of the most advanced technical or ideological concepts at the time, such as ADA and other advanced programming languages, object-oriented programming, artificial intelligence, expert systems, "automatic" programming, graphical programming, program validation, environment and tools, workstations, etc. Although these advanced technologies have improved the efficiency of software development to a certain extent, the effect of silver bullets has not been achieved.

In short, the software industry is rapidly developing, "People's Month myth" makes me lifelong benefit, as one of the fields, we must add strength with a wealth of knowledge, accumulated solid experience and technical basis to arm themselves, in the next college time to absorb as much as possible, draw from the book and teachers that the essence, Morale to meet every challenge, and lead me to step forward is the "People's Month myth"!

Thoughts on the myth of People's Month

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.