Date: May, 2001
Author: Ronald Wolak

Subject: Discussion Question 1

 

Discussion Question 1

Brooks’ Law states that adding manpower to a late software project makes it later (Freedman, 2000). Fred Brooks, author of “The Mythical Man-Month” proposed this as fact based upon the additional human communication required when additional members are added to a software development team. However, in many cases the validity of Brooks’ Law is dependent on a number of factors. These include the degree to which modularization is employed, and the phase in which the resources are added.

The development of the Apache Web server is one example (Jones, 2000). Apache is an open source application that was developed in modules. This approach (i.e. a lot of people working on dozens of different, smaller projects) reduced the level of communication required and therefore allowed the project to defy Brooks’ Law. Other open source projects that have adopted this modularity technique have also been successful in adding additional resources without impacting project length. However, there are limits to this approach, and the structure of a project dictates the point of diminishing returns.

            Another weakness in Brooks’ Law is the fact that it only applies to the final phases of a project (McConnell, 1999). Adding staff during the initial or middle stages is beneficial and recommended. In fact, NASA’s policy is to develop initial requirements with a small senior staff before bringing a multitude of developers on board. While Hsia, Hsu, & Kung (1999) contended that the optimum period for adding project resources is between one-third to halfway through a project, most development efforts are unable to capitalize on this fact. This is due to their inability to accurately gauge which phase a project is actually in (McConnell, 1999). For example, most project teams believe they are 90 percent done for the last half of the project.

            Finally, the validity of Brooks’ Law is dependent on factors that include the degree to which modularization is employed, and the phase in which resources are added.

 

References

 

Freedman, A. (2000). Computer Desktop Encyclopedia (Vol. 13.4). Point Pleasant, PA: The Computer Language Company.

 

Hsia, P., Hsu, C., & Kung, D. (1999, October). Brooks' Law Revisited: A System Dynamics Approach. Paper presented at the Twenty-Third Annual International Computer Software and Applications Conference, Phoenix, Arizona.

 

Jones, P. (2000). Brooks' Law and Open Source: The More the Merrier? IBM.  Retrieved May 1, 2000, from the World Wide Web: http://www-106.ibm.com/developerworks/library/merrier.html?dwzone=opensource.

 

McConnell, S. (1999). Brooks' Law Repealed. IEEE Software.  Retrieved May 1, 2001, from the World Wide Web: http://www.construx.com/stevemcc/ieeesoftware/eic08.htm.