Abstract
Proponents of Free Software have argued that some of the most established software engineering principles do not fully apply when considered in an open, distributed approach. Among these principles, “Brooks’ Law” has been questioned in the Free Software context: large teams of developers, contrary to the law, will not need an increasingly growing number of communication channels. As advocates claim, this is due to the internal characteristics of the Free Software process: the high modularity of the code helps developers to work on comparted sections, without the need to coordinate with all other contriutors.
This paper examines Brooks’ Law in a Free Software context, and it studies the interaction of contributors to a large Free Software project, KDE. The network of interactions is analyzed and a summary term, the “compaction”, is dynamically evaluated to test how the coordination mechanism evolves over time in the project. This paper argues that the claim of advocates holds true, but with limitations: in the KDE project, the few initial developers needed a significant amount of communication. The growth of KDE brought the need to break the number of overall communication channels to a significant extent. Finally, an established amount of 300 developers currently needs the same amount of communication as when the developers were only 10. We interpret this result by arguing that Brooks’ Law holds true among the core developers of any large Free Software project.
Chapter PDF
References
Adams, P.J., Capiluppi, A.: Bridging the gap between agile and free software approaches: The impact of sprinting. International Journal of Open Source Software and Processes 1, 58–71 (2009)
Adams, P.J., Capiluppi, A., de Groot, A.: Detecting agility of open source projects through developer engagement. In: Proceedings of the Fourth International Conference on Open Source Systems. Open Source Development, Communities and Quality (2008)
Bonaccorsi, A., Rossi, C.: Why open source software can succeed. Research Policy 32(7), 1243–1258 (2003)
Brooks, F.P.: The Mythical Man-Month: Essays on Software Engineering, 20th Anniversary edn. Addison-Wesley Professional, Reading (1995)
Capiluppi, A.: Models for the evolution of OS projects. In: Proceedings of ICSM 2003, pp. 65–74. IEEE, Amsterdam (2003)
Capiluppi, A., González-Barahona, J.M., Herraiz, I., Robles, G.: Adapting the staged model for software evolution to free/libre/open source software. In: IWPSE 2007: Ninth international workshop on Principles of software evolution, pp. 79–82. ACM, New York (2007)
Capra, E., Wasserman, A.: A framework for evaluating managerial styles in open source projects. In: Russo, B., Damiani, E., Hissam, S., Lundell, B., Succi, G. (eds.) Open Source Development, Communities and Quality. IFIP International Federation for Information Processing, pp. 1–14 (2008)
Crowston, K., Annabi, H., Howison, J., Masango, C.: Effective work practices for software engineering: free/libre open source software development. In: Proceedings of the ACM workshop on Interdisciplinary software engineering research (2004)
Floyd, R.W.: Algorithm 97: Shortest path. Communications of the ACM 6, 345 (1962)
Fuggetta, A.: Controversy corner: open source software-an evaluation. J. Syst. Softw. 66(1), 77–90 (2003)
Godfrey, M.W., Tu, Q.: Eovlution in open source software: A case study. In: Proceedings of 16th IEEE Int. Conf. on Software Maintenance, pp. 131–142 (2000)
Goldman, R., Gabriel, R.: Innovation Happens Elsewhere: How and Why a Company Should Participate in Open Source. Morgan Kaufmann Publishers Inc., San Francisco (2004)
Herraiz, I., González-Barahona, J.M., Robles, G.: Determinism and evolution. In: Hassan, A.E., Lanza, M., Godfrey, M.W. (eds.) Mining Software Repositories, pp. 1–10. ACM, New York (2008)
Johnson, J.P.: Economics of open source software (2001), http://opensource.mit.edu/papers/johnsonopensource.pdf
Jones, P.: Brooks’ law and open source: The more the merrier? IBM DeveloperWorks (2002), http://www-106.ibm.com/developerworks/library/merrier.html
Kamada, T., Kawai, S.: An algorithm for drawing general undirected graphs. Information Processing Letters 31, 7–15 (1989)
Koch, S.: Agile principles and open source software development: A theoretical and empirical discussion. In: Eckstein, J., Baumeister, H. (eds.) XP 2004. LNCS, vol. 3092, pp. 85–93. Springer, Heidelberg (2004)
Koch, S.: Profiling an open source project ecology and its programmers. Electronic Markets 14(2), 77–88 (2004)
Lakhani, K.R., von Hippel, E.: How open source software works: “free” user-to-user assistance. Research Policy 32(6), 923–943 (2003)
Martinez-Romo, J., Robles, G., Gonzalez-Barahona, J.M., Otuño-Perez, M.: Using social network analysis to study collaboration between a floss community and a company. In: Proceedings of the Fourth International Conference on Open Source Systems. Open Source Development, Communities and Quality (2008)
Mens, T., Fernandez-Ramil, J., Degrandsart, S.: The evolution of Eclipse. In: Proc. International Conference on Software Maintance (ICSM). IEEE Computer Society Press, Los Alamitos (2008)
Perens, B.: The emerging economic paradigm of open source. First Monday 10(SI-2) (2005)
Pressman, R.S.: Software engineering: a practitioner’s approach, 2nd edn. McGraw-Hill, Inc., New York (1986)
Rajlich, V.T., Bennett, K.H.: A staged model for the software lifecycle. IEEE Computer, 66–71 (2000)
Raymond, E.S.: The Cathedral and the Bazaar. O’Reilly & Associates, Sebastopol (1999)
Scacchi, W.: Understanding Open-Source Software Evolution, pp. 181–205. Wiley, Chichester (2006)
Schweik, C.M., English, R.C., Kitsing, M., Haire, S.: Brooks’ versus linus’ law: an empirical test of open source projects. In: dg.o 2008: Proceedings of the 2008 international conference on Digital government research, pp. 423–424. Digital Government Society of North America (2008)
Stamelos, I., Angelis, L., Oikonomou, A., Bleris, G.L.: Code quality analysis in open source software development. Information Systems Journal 12(1), 43–60 (2002)
Succi, G., Russo, B., Weiss, D., Hapke, M.: D3.1 analysis of the mutual relationships between libre software development and development done using agile methods (2006), http://bl.ul.ie/calibre/deliverables/D3.1.pdf
Tirole, J., Lerner, J.: The Simple Economics of Open Source. SSRN eLibrary (2000), doi:10.2139/ssrn.224008
Weber, S.: Why open source works. Ubiquity 5(11), 1 (2004)
Weinberg, G.M.: The Psychology of Computer Programming. John Wiley & Sons, Inc., New York (1985)
Zhao, L., Elbaum, S.: Quality assurance under the open source development model. Journal of Systems and Software 66(1), 65–75 (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 IFIP International Federation for Information Processing
About this paper
Cite this paper
Capiluppi, A., Adams, P.J. (2009). Reassessing Brooks’ Law for the Free Software Community. In: Boldyreff, C., Crowston, K., Lundell, B., Wasserman, A.I. (eds) Open Source Ecosystems: Diverse Communities Interacting. OSS 2009. IFIP Advances in Information and Communication Technology, vol 299. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-02032-2_24
Download citation
DOI: https://doi.org/10.1007/978-3-642-02032-2_24
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-02031-5
Online ISBN: 978-3-642-02032-2
eBook Packages: Computer ScienceComputer Science (R0)