The Computer Systems Research Group (CSRG) has always been a small group of software developers. This resource limitation requires careful software-engineering management as well as careful coordination of both CSRG personnel and the members of the general community who contribute to the development of the system.
Releases from Berkeley alternate between those that introduce major new facilities and those that provide bug fixes and efficiency improvements. This alternation allows timely releases, while providing for refinement, tuning, and correction of the new facilities. The timely followup of ``cleanup'' releases reflects the importance CSRG places on providing a reliable and robust system on which its user community can depend.
The development of the Berkeley Software Distribution (BSD) illustrates an advantage of having a few principal developers: the developers all understand the entire system thoroughly enough to be able to coordinate their own work with that of other people to produce a coherent final system. Companies with large development organizations find this result difficult to duplicate. This paper describes the process by which the development effort for 4.3BSD was managed. design and implementation