Advancing Software Development Efficiency in an Open Source Software Context
Licentiate seminar: May 24, 2013.
Opponent: Björn Lundell, Högskolan Skövde, Skövde, Sweden
Examiner: Björn Regnell, Dept. of Computer Science, Lund University
Open source software has been gaining popularity, especially among commercial organizations. The broad industry acceptance is in large part due to the demonstrated ability of open source solutions to compete with proprietary alternatives. Using open source software components enables companies to reduce their own development costs, and thus improve software development efficiency. Many open source business models have emerged around open source software, the majority of which focus on service oriented revenue models while some include parts of proprietary software, i.e., hybrid business models. In a global economy, where many companies have offices and software development resources distributed in different geographic locations, development practices used by open source community pique industry interest.
Given the dynamic of the open source software phenomena and commercial interest in the area, research focus is needed to understand the fabric of open source communities. In particular, more research is needed to understand motivation, inner workings, and different consequences of collaborative industry partnerships observed within open source communities. In addition, more evidence is needed to understand criteria and implications for selection and usage of open source software components within a commercial setting. Finally, more research is needed to define methodology which can be used to assess and measure the applicability of open source development practices within a closed development setting process.
The research effort presented in this thesis has used both the qualitative and quantitative empirical approach to study the phenomena.
The preliminary results show that open source software is a viable alternative to proprietary software. It helps companies reduce development costs by using an open source component as a type of off-the-shelf component for non-differentiating parts of software products, and thus providing an opportunity to focus development efforts on differentiating aspects of their software products. Analysis of the open source development process have shown some major differences as compared to traditional development practices. Many companies have found pragmatic ways to collaborate with open source communities, thus reducing the cost of software development and creating new business models. A new approach based on social network analysis has been proposed and applied to assess the Android committers’ network structures and measure cross-collaboration and influences within the networks.
The future research will focus on defining quantitative approaches based on network theory to assess the structure and evolution of software development effort by studying open source projects as well as the projects implemented within a closed company setting. The overall goal is to implement the approach within a closed setting in order to test if it can better assess effectiveness of software development process by uncovering efficiency issues and offering possible solutions