Last time, we talked about the relationship between software development and the number of people , At that time, a formula was used to explain that a project group should not be too large . Here are some additional questions .
1 The core developers of the project team are usually 3-5 Name , Other personnel are generally auxiliary personnel , For example, low-level developers , Tester ,QA Personnel, etc . This number is in line with the optimal number of people in an organization 4-8 The requirement of management number of people ( commonly 10 Ten thousand lines of code program system , This is the number of core personnel )
2 If the project team is complicated , When the workload is heavy , Group development can greatly improve work efficiency , But each group has its own core developers .
3 The system architecture has a great influence on the development of the project , Good design system can reduce the work difficulty and development workload , Sometimes it can be reduced by an order of magnitude .
4 Personnel quality plays a decisive role in the success or failure of development . Foreign data show that , The difference of development effect between individual developers is the biggest 1:20, Effective code for mature software developers ( The difference is not code ) The development volume is that of the general staff 10-20 times . So improve the basic development quality of developers , Let them master the design technology of the system , Document writing ability , Code specification is one of the most important means to improve development efficiency .
5 Improve the efficiency of communication , With the increase of developers , The cost of communication time between personnel will be greatly increased , How to improve the efficiency of communication is a very important issue , For example, a long-term cooperative group has many terms , Conceptual metaphor is unified , New groups often have big problems with these problems , Project leaders should pay more attention to these issues . In addition, to develop good communication habits between project team members also has great benefits . For example, during technical seminars , All team members should bring work logs , Record the issues discussed and the results . Prevent repetitive discussion .
6 When the project is delayed, the method of increasing personnel can be adopted to shorten the development time , But we must understand under what circumstances can we achieve our goal , Prevent the phenomenon that the increase of personnel will reduce the efficiency
7 Do a good job in project requirements and system architecture , Good coding habits are the best way to improve work efficiency , Increasing staff is only a last resort