The “bus number” is the number of programmers on a project who could be lost without jeopardizing it. Estimating this number helps quantify risks. Programming in teams, code review, and documentation increase the bus number and project security.
The term “bus number” is sometimes used by information technology (IT) project managers when estimating the stability of the team working on a given software development project. It refers to the number of programmers involved who could be hit by a bus without seriously jeopardizing the project. Estimating a number of buses is one way to quantify the risks to a project while it is in a vulnerable development state.
Writing programs for complex software is often a team effort. Numerous programmers and system engineers may work together to develop the various subsystems and utilities for a specific piece of software. Often these programmers work alone or in small groups on a particular aspect of the program. As the project progresses, programmers become indispensable, because no one else working on the project would readily be able to understand and complete the code they started.
To imagine the complexity of the problem, imagine the scale of developing a full operating system. If a single team were responsible for developing every single utility for the system, it would take years to complete the project. Instead, a company might have one team working on network components, another on the GUI, and so on. In most cases, these individual teams rarely collaborate in any meaningful way; their contributions would only be combined once the final product was ready to be assembled.
Thus, each team essentially operates blindly. As the different autonomous teams have little or no knowledge of the coding structure or programming design used by the others, each individual team becomes more crucial to the outcome of the project. If enough team members abandon the project or get hit by a bus, it could doom the entire project to serious setbacks or even failure. Estimating the number of buses in a particular project lets management know how secure the project is and establishes how expendable a particular programmer is for the project.
The goal of management is to organize the structure of a project to maximize the number of buses, thus minimizing risk. Programming in teams helps increase the number of buses, as each person on the team can develop enough understanding of the overall system to continue with the project if something happens to some of the programmers. Code review provides another way to increase the number of busses: Teams can study and analyze code written by others working on the project, spreading knowledge about the system. A final method of increasing the number of busses is to use documentation by leaving comments within the actual code, explaining how and why the code works and what the programmers’ intentions and methodology are. In general, any technique used to diversify knowledge of the programming codebase will increase the number of theory buses, increasing project security.
Protect your devices with Threat Protection by NordVPN