People's Month myth reading notes-Chapter III
A small, lean team of top talent is more efficient than a large team of mediocre programmers, but there is an important question: how to create a large system within a meaningful schedule.
The gap between good programmers and poor programmers is huge, and when a lean team of 10 people develops and develops with a 100-person mediocre programmer, the former is more efficient. But for efficiency and concept completion, it is best to be developed by a handful of skilled personnel, while large systems require a large number of people to develop, but these two are contradictory and need to be balanced.
In the development process, you can use a new development program, similar to the surgeon's procedure: Surgeon-chief programmer, define functional and performance specifications, design procedures, write code, test and write technical documentation; Deputy-the surgeon's backup can do any part of the work, But inexperienced; administrator-the owner of the project; edit-Create a variety of documents; two secretaries; program staff-maintain technical records for all teams in the programming product library, as well as tool maintainers, testers, and language experts. This developer program is a fundamental transformation of the concept of programming, the product is seen as the product of the team, rather than personal property. This scenario is equivalent to one person completing a problem breakdown and others giving the support they need.
This kind of surgeon-style development team, to ensure the urgency of the need, the whole system of code is a person or two people think of the product, such distribution, saving space allocation, disk access and other labor, and in the presence of disagreement, can be unilaterally unified by surgeons, and the professional division of the remaining personnel can ensure efficient development. If you have to have a large team to develop, the conceptual integrity of each part needs to be radically improved, and the surgeon can be up to 3 of all people.
?
?
Past views:
In the software development, the more developers the better, after all, crowds, task allocation of the finer the better.
What is bad about this:
A small software project, if a lot of people participate in the development, then everyone has their own views, in the exchange, will consume more time, manpower and material resources, so everyone swarm development, is not the best solution.
Workaround:
Software development is not the more people the better, but the need for a few refined programmers to major development, others can do other necessary support.
People's Month myth reading notes-Chapter III