Current issues and research trends on open-source software communities
Abstract
Open source software (OSS) projects represent a new paradigm of software creation and development based on hundreds or even thousands of developers and users organised in the form of a virtual community. The success of an OSS project is closely linked to the successful organisation and development of the virtual community of support group. This paper reviews different fields and research topics related to the OSS communities such as collective intelligence, the structure of OSS communities, their success, communities as virtual organisations, motivation, shared knowledge, innovation and learning. The main challenges, results obtained, and the knowledge areas are detailed for each topic
Full text
Technology Analysis & Strategic Management, 2014 Vol. 26, No. 1, 55–68, http://dx.doi.org/10.1080/09537325.2013.850158 Current issues and research trends on open-source software communities M.R. Martinez-Torres∗and M.C. Diaz-Fernandez Department of Business Administration and Management, University of Seville, Seville, Spain Open source software (OSS) projects represent a new paradigm of software creation and development based on hundreds or even thousands of developers and users organised in the form of a virtual community. The success of an OSS project is closely linked to the successful organisation and development of the virtual community of support group. This paper reviews different fields and research topics related to the OSS communities such as collective intelligence, the structure of OSS communities, their success, communities as virtual organisations, motivation, shared knowledge, innovation and learning. The main challenges, results obtained, and the knowledge areas are detailed for each topic. Keywords: open source software; virtual communities; research trends; survey Introduction The open source software (OSS) represents a software development model in which the source code is available to programmers to view, read, modify and redistribute without the restrictions of the intellectual property rights, which is typical of proprietary software released under a licence. It stands for a radical shift from the traditional software-engineering practice, and a new and revolutionary way of software development (Moody 2001;Raymond 1999). There are important philosophical differences between the open-source and the proprietary software development. While traditional firms can derive competitive advantage from the ownership or control of internal resources, OSS firms depend on the capability to control resources which are external to the firm, in this case primarily in the form of OSS communities (Dahlander and Magnusson 2005). Another difference to the proprietary software development is that OSS projects are based on the individual contributions of dozens or even thousands of developers geographically distributed and organised as a virtual development community (Lee and Cole 2003). Its success is owing to both the optimal development of the projects (that is, the speed at which new versions are released, and its reliability, portability and scalability), and the participants from the community (Gruber and Henkel 2006;von Hippel and von Krogh 2003;Lakhani and von Hippel 2003;Martínez-Torres et al. 2010). OSS projects are based on virtual support communities (Lee and Cole 2003), that use the software and participate in their development. These ∗Corresponding author. Email: [email protected] © 2013 Taylor & Francis Downloaded by [Fac Psicologia/Biblioteca] at 03:41 25 March 2014
56 M.R. Martinez-Torres and M.C. Diaz-Fernandez Figure 1. Number of papers published during the period 2001–2011. advantages result from keeping the source code open to the whole community. The advances achieved by a particular developer can be viewed and revised by the rest of the community members (Toral, Martínez-Torres, and Barrero 2009). The community members learn from each other and as a result the overall abilities and skills of the community are improved. In contrast to the physical communities, a virtual community comprises participants who are geographically and often temporally distributed, loosely affiliated, less normatively bound, linked together through the medium of information technology and ‘[…] centred upon communications and interactions of participants to build collective knowledge’(Brint 2001;Gupta and Kim 2004;Hsu et al. 2007, 153). Open-source phenomenon has also attracted the interest of academics and practitioners. It can be considered as a multidisciplinary research topic that have received an increasing attention during the last decade because of two reasons: firstly, its simple existence, secondly, the way it contradicts the traditional theories and common business practices (von Hippel 2007;von Hippel and von Krogh 2003;Kogut and Metiu 2001;Lerner and Tirole 2002;Wayner 2000). The importance of OSS communities has also been highlighted in several taxonomies related to the OSS research, where communities are considered part of several categories like OSS standards and regulations, OSS production, OSS governance, innovation, collaboration and knowledge sharing, user and developer motivations, etc. (Aksulu and Wade 2010). This fact justifies the necessity for considering the OSS communities as a separate sub-field of research. One of the specific features of this kind of communities is the intense use of electronic media to be in contact, and the fact that these interactions are publicly available. This accessibility of information has facilitated the analysis from different scientific perspectives. With the aim of establishing a categorisation in terms of research trends, a sample of 154 papers have been extracted from the Web of ScienceSM database using ‘open source’ in combination with ‘virtual/online communities’ as the search criteria during the period 2001–2011. Figure 1 illustrates the number of published papers during the considered time frame. Using the keywords of the papers, eight different topics or categories were distinguished. The procedure consisted of extracting the keywords of all the considered papers to build a co-occurrence matrix showing the similarity of terms. Then a cluster analysis was applied to Downloaded by [Fac Psicologia/Biblioteca] at 03:41 25 March 2014
Issues and research trends on OSS communities 57 Collecve intelligence 11% Community structure 11% Success 4% Virtual organisaons 29% Movaon 13% Shared knowledge 15% Learning 5% Innovaon 12% Figure 2. Percentage of papers on different topics referred to OSS in the Web of ScienceSM database. extract the main topics of interest. As a result, eight topics or categories were obtained. The name of each topic was chosen to show the underlying meaning of the aggregated words per topic. Figure 2illustrates the distribution of the considered categories over the selected sample of papers. This figure illustrates the multidisciplinary characteristic of the OSS communities across different knowledge areas, such as software engineering, social sciences, information sciences, management or even business. The purpose of this paper is to review these perspectives, their main issues and challenges, and the research results obtained to comprehend the entire body of research behind the OSS communities. Collective intelligence The basic definition of collective intelligence is a form of intelligence that emerges when a group of individuals do things together. The main assumption is that the group, working possibly in a collaborative or coordinated manner, is able to act more intelligently than any individual member of the group. Furthermore, a more elaborated assumption establishes that collective intelligence is the capacity of a human community to evolve towards a higher order complexity of thought, problem solving and integration through collaboration and innovation (Noveck 2006). The synergy created by collaborations with diverse participants brings complementary strengths to the community, and the cognitive limit of an individual or a small group of users can be overcome by means of collective intelligence (Maleewong, Anutariya, and Wuwongse 2008). The developed collective intelligence approach facilitates collaborative knowledge creation by encouraging members to propose positions concerning the issues in the domain of interests. The proposed positions are supported or opposed by members’ arguments concerning as individuals’ preferences, which are aggregated into group preference for evaluating the acceptance level of each position. Collective intelligence has received much attention in recent years, as organisations and businesses have discovered the power of crowds. With new technologies, such as blogs, twitter, wikis, photo sharing, collaborative tagging and social networking sites, people are able to create and disseminate content as never before (Oreilly 2007). In the context of OSS communities, previous works had examined how individual and social creativity can be integrated by means of Downloaded by [Fac Psicologia/Biblioteca] at 03:41 25 March 2014
58 M.R. Martinez-Torres and M.C. Diaz-Fernandez shareable externalisations, the development of models in the construction of meta-design environments that can enhance creativity and support spontaneous design activities, and the pattern of emergence for new design competence (Bonabeau 2009), i.e. the one that requires passage from individual creative actions to synergetic activities, and from the reflective practitioner to reflective communities. Although collective intelligence has been studied in many virtual communities, it has also been applied to OSS communities. Main findings reveal: •The power of interaction and collaboration with other individuals. Much of the human creativity is social, arising from activities that take place in a context in which interaction with other people happen. •Majority of the participants contribute to satisfy their own personal goals. Most developers contribute only to one project and only to a small portion of its source code. •Corporate collective intelligence is an asset, which if harnessed and properly used, has the potential to create significant competitive advantage for an organisation. Publications related to collective intelligence and OSS communities mainly belong to the field of Computer Science, Information Systems, using methodologies like semantic analysis, multivariate statistics and peer matching algorithms. Structure of OSS communities Although a strict hierarchical structure does not exist in OSS communities, the structure of OSS communities is not completely flat. Each OSS community has a unique structure depending on the nature of the system and its member population. The structure of an OSS community differs in the percentage of each role in the whole community (Martinez-Torres 2012). In this sense, members of an OSS community assume certain roles by themselves according to their personal interest in the project, rather than being assigned by someone else. Previous classifications distinguish the following eight roles: Project Leader; Core Member, Active Developer, Peripheral Develop, Bug Fixer, Bug Reporter, Reader and Passive User. The influences that members have on the system and the community are different, depending on the roles they play. The activity of a Project Leader affects more members than those of a Core Member, who in turn has a higher influence than an Active Developer, and so on. Passive Users have the least influence, but they still play important roles in the whole community (Ye and Kishida 2003). However, not all of the eight types of roles exist in all OSS communities, and the percentage of each type varies. Community members have different roles that do not overlap within this core-periphery of the structure (Nakakoji et al. 2002). The core group is responsible for greater proportion of the work accomplished, while the very large group of peripheral participants is responsible for the remainder (Ghosh and Prakash 2000;Mockus, Fielding, and Herbsleb 2002). Nevertheless, most systems are developed by a small number of developers (Kuk 2006). Research on this issue has been focused on modelling patterns of behaviour in OSS mailing lists or Communities of Practice (CPs) (Toral, Martínez-Torres, and Barrero 2009), the relationship between firms and communities (Dahlander and Magnusson 2005), governance structures (Gençer and Oba 2011) and the impact of technology on the development of the software. Communities of practice is the main theoretical topic in which this set of works is based on. This concept refers to the process of social learning that occurs when people having a common interest in some subject or problem collaborate over an extended period to share ideas, find solutions and build innovations Downloaded by [Fac Psicologia/Biblioteca] at 03:41 25 March 2014
Issues and research trends on OSS communities 59 (Wenger and Snyder 2000). In the case of OSS communities, the participation mechanism leads to the mentioned structure. It has been demonstrated that much of the OSS development is realised by a small percentage of individuals despite the fact that there are tens of thousands of developers available. Such concentration constitutes participation inequality, which is in stark contrast with the fully participative ‘bazaar’imagery of OSS development proposed by Raymond in his famous work ‘The cathedral and the bazaar’. Main results related to OSS communities’ structure reveal that the key group is the core group of developers, responsible not only for the majority of contributions but also for promoting participation among other group members. Some works have also modelled the main antecedents with a significant impact on the development of the project, as well as the brokerage roles developed by the core group. Research about the structure of OSS communities is mainly published in journals belonging to the fields of Computer Science, Software Engineering and Computer Science, Theory and Methods. The first group of publications is focused on the impact of the structure on the underlying software while the second group is more focused on modelling activity through multivariate statistics. Success Different measures to define the success of open-source projects have been proposed in the literature. They can be classified into three categories: (i) software use, (ii) size of the community and/or its level of activity and (iii) technical achievements of the project. According to the first two categories, an OSS is successful when it is widely adopted among users or when a large and active community of developers contributes to its production. In this sense, software success can be measured in terms of output per contributor, that is, the average number of source code lines written by each contributor (Preece 2001). Other measurements consider a project successful depending on the number of subscribers associated with a project. It has been found that this number is larger when the software is released under non-restrictive schemes and sponsored by non-market organisations, e.g. Universities (Comino, Manenti, and Parisi 2007). Finally, a software has also been considered successful when its source code is of high quality, e.g. it is highly modular, correct and maintainable. Research about success of OSS projects is focused on mining repositories and querying project participants to retrieve key process information and on developing an OSS success model from a previous Information Systems success model, but incorporating the characteristics of OSS (Dinh-Trong and Bieman 2005). Results of these works conclude that success depends on organisational factors, software quality and community service quality. Among organisational factors, the tasks developed by the core group of developers have been highlighted as one of the critical elements (Toral, Martínez Torres, and Barrero 2010). The adoption of open-source and its ultimate diffusion are also influenced by its perceived intrinsic value, the negative network externality effect coming from the dominant standard, the positive network externality effect coming from the access to the community of programmers and the competitive reaction of incumbents in the commercial software industry (Bonaccorsi and Rossi 2003). Finally, success has also been analysed from the perspective of technological acceptance models (TAM). TAM theorises that an individual’s actual system usage is determined by behavioural intention, which is in turn jointly determined by perceived usefulness and perceived ease of use. Other external variables have been proposed in the literature, but all of them mediated by usefulness and ease of use. Downloaded by [Fac Psicologia/Biblioteca] at 03:41 25 March 2014
60 M.R. Martinez-Torres and M.C. Diaz-Fernandez Works related to OSS success are mainly published in journals belonging to the field of Management and Computer Science, Software Engineering. Proposed methodologies include multivariate statistics, structural equation modelling (SEM) and surveys of software organisations to test the conceptual models. Virtual organisations Virtual organisations can be defined as a form of cooperation involving companies, institutions and/or individuals who purposefully function as a coherent unit through a common interest (Crowston and Scozzi 2002). They are characterised by three main aspects: the existence of an interest or goal shared by the members of the group, geographical distribution, and the use of Information and Communication Technologies (ICT) to communicate and manage the interdependencies. This is the case of OSS communities where members share a common interest in the software being developed, they are typically geographically distributed, and they make use of Internet to coordinate different actions (Bonacci 2004). The primary cause of this shift away from ‘physically concentrated’ organisations to dispersed virtual ones is the new long-distance communication tools that Internet has provided. From this perspective, studies about OSS communities have been focused on how they can contribute to and benefit from our knowledge of the functioning of virtual organisations and the possibility of transferring OSS business model to other industrial settings. Research in this line has also been focused on the quality of communication within the virtual organisation or the network properties of the organisation (Bonacci 2004). According to the intended project audience, usertargeted projects and developer-targeted projects can be distinguished. The identification of those aspects of project management that have an impact on community performance for different types of projects has also been the topic of several studies. Again, this topic is highly multidisciplinary. In the early days of virtual communities, Rheingold (1993) and Hagel andArmstrong (1997) brought the upcoming phenomenon to academic attention. Contributions about more specific aspects such as sociability (Preece 2001), economies (Kollock 1999) and value (Cothrel 2000), followed. Subsequently, authors focused on topics like knowledge (Kankanhalli, Tan, and Kwok-Kee 2005) and toolkits (Franke and von Hippel 2003;von Hippel 2001). Later, researchers became more interested in the innovative capabilities of virtual organisations and how leveraging their potential (Murray and O’Mahony 2007;O’Mahony and Ferraro 2007). Nowadays, publications are mainly related to the fields of Business and Computer Science, Software Engineering. Methodologies vary from descriptive and regression analysis to cluster analysis and computer simulation of the OSS community model. Motivation The question of motivation is the search for the cause and drive of human behaviour (Reeve 2005). Psychology characterises motivation as the process that refers to releasing, controlling and maintaining physical and mental activities (Pintrich and Schunk 2007), and arises as an interaction between motives (inner needs and individual factors) and incentives (situational factors). Motivation of members to participate in online communities is one of the most critical factors of success in virtual entities. It determines the quality and quantity, as well as the selection and modification of contributions (Füller, Jawecki, and Mühlbacher 2007;Janzik and Herstatt 2008). Downloaded by [Fac Psicologia/Biblioteca] at 03:41 25 March 2014
Issues and research trends on OSS communities 61 The motives that induce users to contribute to an open-source project for free, and the mechanisms by which tasks can be effectively carried out by the open-source community are currently a subject of study for both practitioners and academics. Proposed motives include altruism; incentives to support one’s community; reputation-enhancement benefits received by information providers and expectations of benefits from reciprocal helping behaviour by others (Lakhani and von Hippel 2003). According to the self-determination theory (Deci and Ryan 1985), extrinsic and intrinsic motivations can be distinguished (Janzik and Herstatt 2008;Osterloh and Rota 2007). Extrinsic motivation refers to indirect satisfaction of needs, through monetary compensation, reputation or software accommodation to the users’ needs. They are based on external incentives. Intrinsic motivation refers to immediate satisfaction of needs, including programming for fun and creative pleasure, altruism, sense of belonging to open-source community and willingness to take part in the fight for software freedom. The central question from a research perspective is, why users decide to contribute to opensource communities? More specifically, research works try to answer how these mentioned motivations operate, how they are interrelated and how their principles can be used for practical utility. As the open-source movement grows, it becomes important to understand the dynamics that affect the motivation of the participants who contribute their time freely to such projects. In general, results from different studies do not agree on which one of the extrinsic or intrinsic motivations is the main driver for user participation. However, a huge amount of research identifies intrinsic motivators as the key drivers of participation and contribution (Füller, Jawecki, and Mühlbacher 2007;Hars and Ou 2002;Hertel, Niedner, and Hermann 2003;Lakhani and von Hippel 2003). Motivation issues are mainly included in journals related to the Management and Computer Science and Information Systems. Methodologies are typically based on surveys and data processing using several statistical techniques, like linear or logistic regression analysis, factor analysis and SEM to derive research models. Shared knowledge Knowledge is built up by integrating information, experience and theory. Tacit knowledge can only be shared by interpersonal means while explicit knowledge can be delivered via technology-driven or structured processes. Several authors claim that knowledge sharing is one of the most important factors affecting organisational agility and performance of virtual communities (Khalifa, Yan Yu, and Ning Shen 2008;Zammuto et al. 2007). Individuals participating in virtual communities share or exchange knowledge if the personal perceived benefit compensates the perceived loss of valuable knowledge. Furthermore, knowledge sharing requires the effort of the individuals who do the sharing and are involved in the social process (Chang and Chuang 2011). Sharing knowledge is a synergistic process – ‘you get more out than you put in’, and ‘knowledge is created by each individual in their own mind, and it is of little value to an enterprise unless it is shared’. Four mechanisms for sharing individual knowledge in an organisation are: (1) contributing knowledge to organisational databases; (2) sharing knowledge in formal interactions within or across teams or work units; (3) sharing knowledge in informal interactions and (4) sharing knowledge within communities of practice (Bartol and Srivatava 2002). In the OSS community, users learn from the rest of the members and complement the common knowledge (Füller, Jawecki, and Mühlbacher 2007), and the disseminated knowledge will encourage other community members to build upon this idea (Hemetsberger and Reinhardt 2004). Downloaded by [Fac Psicologia/Biblioteca] at 03:41 25 March 2014
62 M.R. Martinez-Torres and M.C. Diaz-Fernandez Knowledge sharing, that fits perfectly the knowledge as strategically important resource perspective, has also become an important domain in the strategic management field. Research in this field investigates the participants’ behaviour and interactive relationships to determine their effect on knowledge sharing (Chang and Chuang 2011), as well as the relationship between knowledge sharing behaviours and performance. In general, most of the studies in this field are focused on the influence of knowledge sharing in virtual community outcomes. Obtained results have identified altruism, identification, reciprocity and shared language as those factors with a positive effect on knowledge sharing. On the other hand, reputation, social interaction and trust have been proven to cause a positive effect on the quality, but not the quantity, of shared knowledge. Finally, participant involvement has a moderating effect on the relationship of altruism and the quantity of shared knowledge (Chang and Chuang 2011). Some other studies have concluded correlations between shared knowledge and users replying activity, individual performance and virtual community outcomes. This topic is mainly treated in journals related to the Business and Computer Science and Information Systems. Methodologies include descriptive statistical analysis, confirmatory factor analysis, and multiple regression analysis and knowledge maps. Learning The community-based development of OSS is based on the social learning theory, which postulates that learning is a social process, placing learning in the context of the social experience of individuals. Learning requires the participation of individuals inside a community, in contrast to the traditional idea of considering learning as an individual process and as a result of a teaching. This is the case of open-source communities, where people can freely post their questions related to the underlying software and receive some solutions or alternatives from someone else of the community (Wenger 1998). Knowledge is then acquired as a result of the interactions among people through the discussions about a particular topic. These discussions are frequently stored and they are publicly available, so people can consult previously discussed topics and find an answer to a particular problem. So, not only does OSS development exemplify a viable software development approach, but also a model for the creation of self-learning communities (Martinez-Torres et al. 2010). The amount and the quality of the learning opportunities increase through the individual involvement in the project in OSS. Learning opportunities are represented by the access to software source code, the technical discussions with experts’ peers or the direct feedback to one’s own work (Spaeth et al. 2008). Previous works in this field describe the process known as legitimate peripheral participation (Lave, Wenger, and Pea 1991). This is the process by which individuals learn how to function as a community member through participation in the community, enabling them to acquire the language, values and norms of the community. Learning is then gradually achieved as the individual moves from being a novice, gaining access to community practices, to complete socialisation and therefore becoming an insider or full member of the community. The legitimisation process of a community is therefore completely different to the legitimisation gained through hierarchical status in more formal groups such as a team. Research results have been focused on modelling the participation process inside a community, extracting the main profiles of users according to their participation features or the antecedents with a significant influence over the global participation inside the community. This topic is Downloaded by [Fac Psicologia/Biblioteca] at 03:41 25 March 2014
Issues and research trends on OSS communities 63 basically treated in journals related to Computer Science, Information Systems and Education. Methodologies include surveys among OSS practitioners and exploratory factor analysis to extract participation patterns. Innovation Decades of research on innovation have focused on patterns of product development located in hierarchical forms of organisation and competitive markets (Damanpour 1991), but more recent advances in technology have shifted the locus of innovation to virtual communities (Chesbrough 2007;von Hippel 2001;Lakhani and von Hippel 2003;Spaeth et al. 2008). The innovation process has been defined as ‘the invention and implementation of new ideas, which are developed by people, who engage in transactions with others over time within an institutional context, and who judge outcomes of their efforts and act accordingly’ (Van de Ven and Poole 1990). This definition brings into perspective the three fundamental tenets of the innovation research: people, transactions and institutional context. The development of OSS is an innovation process that combines distributed problem solving and participant involvement within a virtual community. Working with OSS community, the scholars have conceptualised the innovation process in two ways: first, as a private–collective model (Garriga et al. 2012;von Hipple and von Krogh 2003), and second, as a series of stages that unfold over time: the generation of ideas and concepts; the design and engineering stage and test and launch stage (Füller et al. 2006). Nevertheless, in user innovation communities, members get in contact with the peer group members, and actively discuss the provided ideas, offer possible solutions, further elaborate and test them or just give their opinion. This engagement creates a common understanding about the innovation and new share/common knowledge emerges (Martinez-Torres 2013;Sawhney and Prandelli 2000). The innovator learns from the community and complements the common knowledge (Fuller et al. 2007). In addition, the disseminated knowledge will encourage other community members to build upon this idea (Hemetsberger and Reinhardt 2004). Virtual communities for innovation have been examined as an innovative instrument for customer integration and a strategy for open innovation (Rohrbeck, Steinhoff, and Perder 2010). Open-source communities are innovative online communities, some of which have recently attracted increasing attention (Hemetsberger and Reinhardt 2006). There are few theoretical and empirical insights into the processes through which virtual communities innovate. At the broadest level of analysis, the development of this process of innovation in virtual communities raises behavioural and motivational questions about why individuals contribute to the innovation process (von Krogh, Späth, and Lakhani 2003), highlighting the role of reputation and status (Raymond 1999), the underlying free software ideology (Stallman 1998) and enjoyment and creativity (Goldschmidt 2005;Lakhani and Wolf 2005). In line with its growing relevance, the number of yearly publications on this topic has been growing along with citations to the publications (Janzik and Herstatt 2008;Laine 2009). This topic has been basically treated in journals related to the Management, Business and Economics. Methodologies include studies so diverse such as analyses of cases to determine how the virtual community innovates or how does innovation occur in the OSS community. Their literature reviews get a comprehensive definition of virtual communities for innovation and develop a framework for the interaction of companies with virtual communities. The methodology used refers to factor analysis and bibliometrics analysis, to determine how firms incorporate open innovation principles online. Downloaded by [Fac Psicologia/Biblioteca] at 03:41 25 March 2014