Forking the Commons: Developmental Tensions and Evolutionary Patterns in Open Source Software
Open source software (OSS) presents opportunities and challenges for developers to exploit its commons based licensing regime by creating specializations of a software technology to address plurality of goals and priorities. By ‘forking’ a new branch of development separate from the main project, development diverges into a path in order to relieve tensions related to specialization, which later encounters new tensions. In this study, we first classify forces and patterns within this divergence process. Such tensions may stem from a variety of sources including internal power conflicts, emergence of new environmental niches such as demand for specialized uses of same software, or differences along stability vs. development speed trade-off. We then present an evolutionary model which combines divergence options available to resolve tensions, and how further tensions emerge. In developing this model we attempt to define open software evolution at the level of systems of software, rather than at individual software project level.
KeywordsForking Divergence Specialization Software Evolution
- 1.Aldrich, H.: Organizations Evolving. Sage (1999)Google Scholar
- 4.Gencer, M., Ozel, B., Tunalioglu, V.S., Oba, B.: Forking: The gpl coherent technology for flexible organizing in foss development. In: European Group of Organizational Studies Colloqium in Bergen, Norway (2006)Google Scholar
- 5.Godfrey, M., Tu, Q.: Evolution in open source software: a case study. In: Int. Conf. on Software Maintenance, pp. 131–142 (2000)Google Scholar
- 6.Hayek, F.A.: The use of knowledge in society. The American Economic Review 35(4), 519–530 (1945)Google Scholar