The larger the decentralized group, the slower it will get, because of the increased communication. On really large time-critical projects, a more formalized centralized structure is essential. Brooks pointed out the need for design consistency when producing a large complex system and how this might be difficult when there are a large number of people involved in producing a piece of software. One suggestion was to try to reduce the number of people actually creating software but to make these programmers as productive as possible by giving them as much support as possible.
The result of this train of thought was the chief programmer team. The chief programmer is the person who defines the specification, and designs, codes, tests and documents the software. There is also a copilot, with whom the chief programmer can discuss problems and who w rites some code. They are supported by an editor to write up the documentation drafted by the chief programmer, a
Brooks' Mythtcal Man-Month has already been referred to. He was in charge of the hi>ge team that created the operating system for the IBM 360 range.
program clerk to maintain the actual code, and a tester. The general idea is that this team is under the control of a single unifying intellect.
The chief programmer concept was used on the influential New York Times data hank project, where many aspects of structured programming were tried out. In this case, each chief programmer managed a senior level programmer and a program librarian. Additional members could be added to the team on a temporary basis to deal with particular problems or tasks.
The problem with this kind of organization is getting hold of really outstanding programmers to carry out the chief programmer role. There are also the dangers of information overload on the chief programmer, and of staff dissatisfaction among those who are there simply to minister to the needs of the superstar chief programmers.
Was this article helpful?
What you need to know about… Project Management Made Easy! Project management consists of more than just a large building project and can encompass small projects as well. No matter what the size of your project, you need to have some sort of project management. How you manage your project has everything to do with its outcome.