Addressing Lock-in, Interoperability, and Long-Term Maintenance Challenges Through Open Source: How Can Companies Strategically Use Open Source? - Lundell, Björn; Gamalielsson, Jonas; Stefan Tengblad; Bahram Hooshyar Yousefi; Thomas Fischer; Gert Johansson; Bengt Rodung; Mattsson, Anders; Johan Oppmark; Gustavsson, Tomas; Feist, Jonas; Stefan Landemoo; et al. (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
This industry paper reports on how strategic use of open source in company contexts can provide effective support for addressing the fundamental challenges of lock-in, interoperability, and longevity of software and associated digital assets. The fundamental challenges and an overview of an ongoing collaborative research project are presented. Through a conceptual model for open source usage in company contexts we characterise how companies engage with open source and elaborate on how the fundamental challenges can be effectively addressed through open source usage in company contexts.

Adoption of Academic Tools in Open Source Communities: The Debian Case Study - Abate, Pietro; Di Cosmo, Roberto (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
Component repositories play a key role in the open software ecosystem. Managing the evolution of these repositories is a challenging task, and maintainers are confronted with a number of complex issues that need automatic tools to be adressed properly. In this paper, we present an overview of 10 years of research in this field and the process leading to the adoption of our tools in a FOSS community. We focus on the Debian distribution and in particular we look at the issues arising during the distribution lifecycle: ensuring buildability of source packages, detecting packages that cannot be installed and bootstrapping the distribution on a new architecture. We present three tools, distcheck, buildcheck and botch, that we believe of general interest for other open source component repositories. The lesson we have learned during this journey may provide useful guidance for researchers willing to see their tools broadly adopted by the community.
Keywords: components; debian; distribution

Advancing Open Science with Version Control and Blockchains - Jonathan Bell; Thomas D. LaToza; Foteini Baldmitsi; Angelos Stavrou (2017 IEEE/ACM 12th International Workshop on Software Engineering for Science (SE4Science), 2017)
The scientific community is facing a crisis of reproducibility: confidence in scientific results is damaged by concerns regarding the integrity of experimental data and the analyses applied to that data. Experimental integrity can be compromised inadvertently when researchers overlook some important component of their experimental procedure, or intentionally by researchers or malicious third-parties who are biased towards ensuring a specific outcome of an experiment. The scientific community has pushed for “open science” to add transparency to the experimental process, asking researchers to publicly register their data sets and experimental procedures. We argue that the software engineering community can leverage its expertise in tracking traceability and provenance of source code and its related artifacts to simplify data management for scientists. Moreover, by leveraging smart contract and blockchain technologies, we believe that it is possible for such a system to guarantee end-to-end integrity of scientific data and results while supporting collaborative research.
Keywords: blockchain; replication; reproducible

Assessing Code Authorship: The Case of the Linux Kernel - Guilherme Avelino; Passos, Leonardo; Andre Hora; Marco Tulio Valente (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
Code authorship is a key information in large-scale open-source systems. Among others, it allows maintainers to assess division of work and identify key collaborators. Interestingly, open-source communities lack guidelines on how to manage authorship. This could be mitigated by setting to build an empirical body of knowledge on how authorship-related measures evolve in successful open-source communities. Towards that direction, we perform a case study on the Linux kernel. Our results show that: (a) only a small portion of developers (26%) makes significant contributions to the code base; (b) the distribution of the number of files per author is highly skewed—a small group of top-authors (3%) is responsible for hundreds of files, while most authors (75%) are responsible for at most 11 files; (c) most authors (62%) have a specialist profile; (d) authors with a high number of co-authorship connections tend to collaborate with others with less connections.
Keywords: code authorship; developer network; linux kernel

Challenges in Validating FLOSS Configuration - Raab, M; Barany, G (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
Developers invest much effort into validating configuration during startup of free/libre and open source software (FLOSS) applications. Nevertheless, hardly any tools exist to validate configuration files to detect misconfigurations earlier. This paper aims at understanding the challenges to provide better tools for configuration validation. We use mixed methodology: (1) We analyzed 2,683 run-time configuration accesses in the source-code of 16 applications comprising 50 million lines of code. (2) We conducted a questionnaire survey with 162 FLOSS contributors completing the survey. We report our experiences about building up a FLOSS community that tackles the issues by unifying configuration validation with an external configuration access specification. We discovered that information necessary for validation is often missing in the applications and FLOSS developers dislike dependencies on external packages for such validations.

Charting the market disruptive nature of Open Source: Experiences from Sony Mobile - Mols, CE; Wnuk, K (2017 IEEE/ACM 39th IEEE International Conference on Software Engineering Companion, 2017)
Open Source Software (OSS) has substantial impact on how software-intensive firms develop products and deliver value to the customers. These companies need both strategic and operational support on how to adapt OSS as a part of their products and how to adjust processes and organizations to increase the benefits from OSS participation. This work presents the key insights from the journey that Sony Mobile has made from a company developing proprietary software to a respected member of OSS communities. We framed the experiences into an Open Source Maturity Model that includes two scenarios: engineering-driven and business-driven open source. We outline the most important decisions, roles, processes and implications.
Keywords: ecosystem; poster; software business

Classifying code comments in Java open-source software systems - Luca Pascarella; Bacchelli, Alberto (2017 IEEE/ACM 14th International Conference on Mining Software Repositories (MSR), 2017)
Code comments are a key software component containing information about the underlying implementation. Several studies have shown that code comments enhance the readability of the code. Nevertheless, not all the comments have the same goal and target audience. In this paper, we investigate how six diverse Java OSS projects use code comments, with the aim of understanding their purpose. Through our analysis, we produce a taxonomy of source code comments; subsequently, we investigate how often each category occur by manually classifying more than 2,000 code comments from the aforementioned projects. In addition, we conduct an initial evaluation on how to automatically classify code comments at line level into our taxonomy using machine learning; initial results are promising and suggest that an accurate classification is within reach.
Keywords: java; Survey

Community Engagement with Free and Open Source Software - Murphy, Christian; Buffardi, Kevin; Dehlinger, Josh; Lambert, Lynn; Veilleux, Nanette (Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education, 2017)
A common refrain from Senior Exit Surveys and Alumni Surveys is the desire to work on "real-world," "practical" and "hands-on" projects using industry-ready tools and development environments. To assuage this, institutions have moved towards adopting Free and Open Source Software (FOSS) as an avenue to provide meaningful, applied learning interventions to students. Through these experiences, students benefit from engagement with various communities including: the community of contributors to the FOSS project; the community of local software developers; the community of citizens who reside in the local area; the community of students at their institution and others; and, the community of people impacted by the FOSS project. These engagements motivate students, enhance their communication and technical skills, allow them to grow and become more confident, help them form professional networks, and provide the "real-world" projects they seek. In this panel, we will discuss our experiences in engaging students with five different types of communities as part of incorporating FOSS into our courses, focusing on how other educators can provide the same benefits to their students as well. In order to satisfy the time constraints of the panel, the last two authors will present together.
Keywords: free and open source software (FOSS); humanitarian free and open source software (HFOSS); localized free and open source software (LFOSS); under-represented minorities (URM)

Considering the use of walled gardens for FLOSS project communication - Squire, Megan (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
At its core, free, libre, and open source software (FLOSS) is defined by its adherence to a set of licenses that give various freedoms to the users of the software, for example the ability to use the software, to read or modify its source code, and to distribute the software to others. In addition, many FLOSS projects and developers also champion other values related to "freedom" and "openness", such as transparency, for example in communication and decision-making, or community-orientedness, for example in broadening access, collaboration, and participation. This paper explores how one increasingly common software development practice - communicating inside non-archived, third-party "walled gardens" - puts these FLOSS values into conflict. If communities choose to use non-archived walled gardens for communication, they may be prioritizing one type of openness (broad participation) over another (transparency). We use 18 FLOSS projects as a sample to describe how walled gardens are currently being used for intra-project communication, as well as to determine whether or not these projects provide archives of these communications. Findings will be useful to the FLOSS community as a whole as it seeks to under- stand the evolution and impact of its communication choices.
Keywords: apache; chat; communication; email; free software; irc; mailing list; open source; Slack; Stack Overflow; teams; Wordpress

Designing for Participation: Three Models for Developer Involvement in Hybrid OSS Projects - Mäenpää, Hanna; Kilamo, Terhi; Mikkonen, Tommi; Männistö, Tomi (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
This paper reports governance practices of three profit oriented companies that develop OSS software with the help of their respective open development communities. We explore how the companies allow development contributions from external stakeholders, and what knowledge they let out of their internal software development activities. The results lay ground for further research on how to organize openness of the software development process in hybrid setups where the needs of different stakeholders are partly competing - yet complementary.
Keywords: Community Management; Hybrid open source; open source

Developer Turnover in Global, Industrial Open Source Projects: Insights from Applying Survival Analysis - Bin Lin; Gregorio Robles; Serebrenik, Alexander (2017 IEEE 12th International Conference on Global Software Engineering (ICGSE), 2017)
Large open source software projects often have a globally distributed development team. Studies have shown developer turnover has a significant impact on the project success. Frequent developer turnover may lead to loss of productivity due to lacking relevant knowledge and spending extra time learning how projects work. Thus, lots of attention has been paid to which factors are related to developer retention; however, few of them focus on the impact of activities of individual developers. In this paper, we study five open source projects from different organizations and examine whether developer turnover is affected by when they start contributing and what types of contributions they are making. Our study reveals that developers have higher chances to survive in software projects when they 1) start contributing to the project earlier; 2) mainly modify instead of creating files; 3) mainly code instead of dealing with documentations. Our results also shed lights on the potential approaches to improving developer retention.
Keywords: survival analysis

Developers, Quality Control and Download Volume in Open Source Software (OSS) Projects - Hill, Geoffrey; Datta, Pratim; Vander Weerdt, Candice (Journal of Organizational and End User Computing, 2017)
The open-source software (OSS) movement is often analogized as a commons, where products are developed by and consumed in an open community. However, does a larger commons automatically beget success or does the phenomenon fall prey to the tragedy of the commons? This research forwards and empirically investigates the curvilinear relationship between developers and OSS project quality and a project's download volume. Using segmented regression on over 12,000 SourceForge OSS projects, findings suggest an inflection point in the number of contributing developers on download volume – suggesting increasing and diminishing returns to scale from adding developers to OSS projects. Findings support the economic principle of the tragedy of the commons, a concept where an over-allocated (large number) of developers, even in an open-source environment, can lead to resource mismanagement and reduce the benefit of a public good, i.e. the OSS project.

Digging into the Eclipse Marketplace - Krüger, J; Corr, N; Schröter, I; Leich, T (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
Eclipse is an integrated development environment that can be extended with plug-ins. Thanks to Eclipse’s success, a diverse community has been established with members coming from industry, open-source projects, and others, and a marketplace with more than 1.700 different plug-ins developed. Hence, the question arises how this marketplace is composed: Who contributes plug-ins? Which plug-ins are successful? Are there common characteristics or trends? To answer these questions, extensive investigations are necessary. In this paper, we present (i) an initial approach for corresponding analyses and (ii) preliminary results. Overall, we aim to pave the way for further research addressing, for example, motivations to participate in, or the evolution of, open marketplaces.
Keywords: Eclipse IDE; Eclipse Marketplace; empirical study; open source

Do Software Developers Understand Open Source Licenses? - Almeida, Daniel A.; Murphy, Gail C.; Wilson, Greg; Hoye, Mike (2017 IEEE 25th International Conference on Program Comprehension (ICPC), 2017)
—Software provided under open source licenses is widely used, from forming high-profile stand-alone applications (e.g., Mozilla Firefox) to being embedded in commercial offerings (e.g., network routers). Despite the high frequency of use of open source licenses, there has been little work about whether software developers understand the open source licenses they use. To our knowledge, only one survey has been conducted, which focused on which licenses developers choose and when they encounter problems with licensing open source software. To help fill the gap of whether or not developers understand the open source licenses they use, we conducted a survey that posed development scenarios involving three popular open source licenses (GNU GPL 3.0, GNU LGPL 3.0 and MPL 2.0) both alone and in combination. The 375 respondents to the survey, who were largely developers, gave answers consistent with those of a legal expert’s opinion in 62% of 42 cases. Although developers clearly understood cases involving one license, they struggled when multiple licenses were involved. An analysis of the quantitative and qualitative results of the study indicate a need for tool support to help guide developers in understanding this critical information attached to software components.
Keywords: license; Survey

An Empirical Analysis of Build Failures in the Continuous Integration Workflows of Java-Based Open-Source Software - Thomas Rausch; Waldemar Hummer; Philipp Leitner; Stefan Schulte (2017 IEEE/ACM 14th International Conference on Mining Software Repositories (MSR), 2017)
—Continuous Integration (CI) has become a common practice in both industrial and open-source software development. While CI has evidently improved aspects of the software development process, errors during CI builds pose a threat to development efficiency. As an increasing amount of time goes into fixing such errors, failing builds can significantly impair the development process and become very costly. We perform an indepth analysis of build failures in CI environments. Our approach links repository commits to data of corresponding CI builds. Using data from 14 open-source Java projects, we first identify 14 common error categories. Besides test failures, which are by far the most common error category (up to >80% per project), we also identify noisy build data, e.g., induced by transient Git interaction errors, or general infrastructure flakiness. Second, we analyze which factors impact the build results, taking into account general process and specific CI metrics. Our results indicate that process metrics have a significant impact on the build outcome in 8 of the 14 projects on average, but the strongest influencing factor across all projects is overall stability in the recent build history. For 10 projects, more than 50% (up to 80%) of all failed builds follow a previous build failure. Moreover, the fail ratio of the last k=10 builds has a significant impact on build results for all projects in our dataset.
Keywords: build errors; continuous integration; correlation analysis; msr

Empirical analysis of search based algorithms to identify change prone classes of open source software - Bansal, Ankita (Computer Languages, Systems & Structures, 2017)
There are numerous reasons leading to change in software such as changing requirements, changing technology, increasing customer demands, fixing of defects etc. Thus, identifying and analyzing the change-prone classes of the software during software evolution is gaining wide importance in the field of software engineering. This would help software developers to judiciously allocate the resources used for testing and maintenance. Software metrics can be used for constructing various classification models which can be used for timely identification of change prone classes. Search based algorithms which form a subset of machine learning algorithms can be utilized for constructing prediction models to identify change prone classes of software. Search based algorithms use a fitness function to find the best optimal solution among all the possible solutions. In this work, we analyze the effectiveness of hybridized search based algorithms for change prediction. In other words, the aim of this work is to find whether search based algorithms are capable for accurate model construction to predict change prone classes. We have also constructed models using machine learning techniques and compared the performance of these models with the models constructed using Search Based Algorithms. The validation is carried out on two open source Apache projects, Rave and Commons Math. The results prove the effectiveness of hybridized search based algorithms in predicting change prone classes of software. Thus, they can be utilized by the software developers to produce an efficient and better developed software.
Keywords: Change proneness; Metrics; Object oriented paradigm; Search based algorithms; Software quality; Empirical validation

Evolutionary Software Requirements Factors and their Effect on Open Source Project Attractiveness - Vlas, Radu; Robinson, William; Vlas, Cristina (Proceedings of the 50th Hawaii International Conference on System Sciences (HICSS), 2017)
Successful projects effectively manage their requirements. How the mix of different requirements evolves throughout a successful project life-cycle is poorly understood. Moreover, requirements practices may be changing, according to the authors of the New RE—a model of six critical requirements factors. The New RE focuses on leveraging existing components to create new functionality. This practice is also central to open-source development. Thus, to understand the proposed New RE model and its relationship to open-source development, in this study, we analyze over 200 projects from GitHub.com and compare them with a prior analysis of 31 projects from SourceForge. The results show that many of the proposed New RE factors are related to project attractiveness, which is important for open-source project success.

How are Developers Treating License Inconsistency Issues? A Case Study on License Inconsistency Evolution in FOSS Projects - Y. Wu; Manabe, Yuki; Daniel M. Germán; Inoue, K. (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
A license inconsistency is the presence of two or more source files that evolved from the same original file containing different licenses. In our previous study, we have shown that license inconsistencies do exist in open source projects and may lead to potential license violation problems. In this study, we try to find out whether the issues of license inconsistencies are properly solved by analyzing two versions of a FOSS distribution—Debian—and investigate the evolution patterns of license inconsistencies. Findings are: license inconsistencies occur mostly because the original copyright owner updated the license while the reusers were still using the old version of the source files with the old license; most license inconsistencies would disappear when the reusers synchronize their project from the upstream, while some would exist permanently if reusers decide not to synchronize anymore. Legally suspicious cases have not been found yet in those Debian distributions.
Keywords: Code clone; debian; License inconsistency; licenses; Software license

How Does Contributors’ Involvement Influence the Build Status of an Open-Source Software Project? - Reboucas, Marcel; Santos, Renato O.; Pinto, Gustavo; Fernando Castor (2017 IEEE/ACM 14th International Conference on Mining Software Repositories (MSR), 2017)
The recent introduction of the pull-based development model promoted agile development practices such as Code Reviews and Continuous Integration (CI). CI, in particular, is currently a standard development practice in opensource software (OSS) projects. Although it is well-known that OSS contributors have different involvements (e.g., while some developers drive the project, there is a long tail of peripheral developers), little is known about how the contributor’s degree of participation can influence the build status of an OSS project. Through TravisTorrent’s dataset, we compare the success rates of builds made by casual and non-casual contributors and what factors on their contributions may influence the build result. Our results suggest that there is no representative difference between their build success (they are similar in 85% of the analyzed projects), meaning that being a casual contributor is not a strong indicator for creating failing builds. Also, factors like the size of their contributions and the number of project configurations (jobs) have the potential of impacting the build success.
Keywords: travis torrent

How Open Source Projects use Static Code Analysis Tools in Continuous Integration Pipelines - Zampetti, Fiorella; Scalabrino, Simone; Oliveto, Rocco; Canfora, Gerardo; Di Penta, Massimiliano (2017 IEEE/ACM 14th International Conference on Mining Software Repositories (MSR), 2017)
Static analysis tools are often used by software developers to entail early detection of potential faults, vulnerabilities, code smells, or to assess the source code adherence to coding standards and guidelines. Also, their adoption within Continuous Integration (CI) pipelines has been advocated by researchers and practitioners. This paper studies the usage of static analysis tools in 20 Java open source projects hosted on GitHub and using Travis CI as continuous integration infrastructure. Specifically, we investigate (i) which tools are being used and how they are configured for the CI, (ii) what types of issues make the build fail or raise warnings, and (iii) whether, how, and after how long are broken builds and warnings resolved. Results indicate that in the analyzed projects build breakages due to static analysis tools are mainly related to adherence to coding standards, and there is also some attention to missing licenses. Build failures related to tools identifying potential bugs or vulnerabilities occur less frequently, and in some cases such tools are activated in a “softer” mode, without making the build fail. Also, the study reveals that build breakages due to static analysis tools are quickly fixed by actually solving the problem, rather than by disabling the warning, and are often properly documented.
Keywords: continuous integration; empirical study; static analysis

Investigating Developers' Email Discussions During Decision-making in Python Language Evolution - Sharma, Pankajeshwara; Savarimuthu, Bastin Tony Roy; Stanger, Nigel; Licorish, Sherlock A.; Rainer, Austen (Proceedings of the 21st International Conference on Evaluation and Assessment in Software Engineering, 2017)
Context: Open Source Software (OSS) developers use mailing lists as their main forum for discussing the evolution of a project. However, the use of mailing lists by developers for decision-making has not received much research attention. Objective: We have explored this issue by studying developers' email discussions around Python Enhancement Proposals (PEPs). Method: Our dataset comprised 42,672 emails from six different mailing lists pertaining to PEP development. We performed multiple forms of analysis on these emails, involving both quantitative measures (e.g., frequency) and deeper analysis of specific PEP discussions (i.e., outlier analysis). Results: Out of three PEP types (Informational, Process and Standard Track), Standard Track PEPs attract a large amount of discussion (both in volume and average number of messages per proposal). Our study also identified specific PEP states and topics that generated a disproportionate amount of discussion. Conclusion: Our outcomes point to several opportunities for improving the management of an OSS team based on the knowledge generated from discussions. We have also identified several interesting avenues for future work such as identifying individuals or groups that present persuasive arguments during decision-making.
Keywords: Decision-making; Email discussions; Python development

Investigating developers' email discussions during decision-making in Python language evolution - Stanger, Nigel; Rainer, Austen; Licorish, Sherlock A.; Sharma, Pankajeshwara; Savarimuthu, Bastin Tony Roy (Proceedings of the 21st International Conference on Evaluation and Assessment in Software Engineering - EASE'17, 2017)
Context: Open Source Software (OSS) developers use mailing lists as their main forum for discussing the evolution of a project. However, the use of mailing lists by developers for decision-making has not received much research attention. Objective: We have explored this issue by studying developers' email discussions around Python Enhancement Proposals (PEPs). Method: Our dataset comprised 42,672 emails from six different mailing lists pertaining to PEP development. We performed multiple forms of analysis on these emails, involving both quantitative measures (e.g., frequency) and deeper analysis of specific PEP discussions (i.e., outlier analysis). Results: Out of three PEP types (Informational, Process and Standard Track), Standard Track PEPs attract a large amount of discussion (both in volume and average number of messages per proposal). Our study also identified specific PEP states and topics that generated a disproportionate amount of discussion. Conclusion: Our outcomes point to several opportunities for improving the management of an OSS team based on the knowledge generated from discussions. We have also identified several interesting avenues for future work such as identifying individuals or groups that present persuasive arguments during decision-making.

Investigating Relationships Between FLOSS Foundations and FLOSS Projects - Juho Lindman; Hammouda, Imed (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
Foundations function as vital institutional support infrastructures for many of the most successful open source projects, but the role of these support entities remains an understudied phenomenon in FLOSS research. Drawing on Open Hub (formerly known as Ohloh) data, this paper empirically investigates the different ways these entities support projects and interact with different projects and with each other.

Knowledge Flows Within Open Source Software Projects: A Social Network Perspective - Kerzazi, Noureddine; El Asri, Ikram (Advances in Ubiquitous Networking 2: Proceedings of the UNet'16, 2017)
Developing software is knowledge-intensive activity, requiring extensive technical knowledge and awareness. The abstract part of development is the social interactions that drive knowledge flows between contributors, especially for Open Source Software (OSS). This study investigated knowledge sharing and propagation from social perspective using social network analysis (SNA). We mined and analyzed the issue and review histories of three OSS from GitHub. Particular attention has been paid to the socio-interactions through comments from contributors on reviews. We aim at explaining the propagation and density of knowledge flows within contributor networks. The results show that review requests flow from the core contributors toward peripheral contributors and comments on reviews are in a continuous loop from the core teams to the peripherals and back; and the core contributors leverage on their awareness and technical knowledge to increase their notoriety by playing the role of communication brokers supported by comments on work items.
Keywords: expertise; Knowledge flows; open source; SNA

A Large-Scale Study on the Usage of Testing Patterns that Address Maintainability Attributes - Danielle Gonzalez; Joanna C.S. Santos; Andrew Popovich; Mehdi Mirakhorli; Mei Nagappan (2017 IEEE/ACM 14th International Conference on Mining Software Repositories (MSR), 2017)
Test case maintainability is an important concern, especially in open source and distributed development environments where projects typically have high contributor turnover with varying backgrounds and experience, and where code ownership changes often. Similar to design patterns, patterns for unit testing promote maintainability quality attributes such as ease of diagnoses, modifiability, and comprehension. In this paper, we report the results of a large-scale study on the usage of four xUnit testing patterns which can be used to satisfy these maintainability attributes. This is a first-of-its-kind study which developed automated techniques to investigate these issues across 82,447 open source projects, and the findings provide more insight into testing practices in open source projects. Our results indicate that only 17% of projects had test cases, and from the 251 testing frameworks we studied, 93 of them were being used. We found 24% of projects with test files implemented patterns that could help with maintainability, while the remaining did not use these patterns. Multiple qualitative analyses indicate that usage of patterns was an ad-hoc decision by individual developers, rather than motivated by the characteristics of the project, and that developers sometimes used alternative techniques to address maintainability concerns.
Keywords: maintenance; mining software repositories; msr; Unit Test Frameworks; Unit Test Patterns; Unit Testing

Longitudinal Analysis of the Run-up to a Decision to Break-up (Fork) in a Community - Amirhosein “Emerson” Azarbakht; Jensen, Carlos (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
In this paper, we use a developer-oriented statistical approach to understand what causes people in complex software development networks to decide to fork (break away), and what changes a community goes through in the run-up to a decision to break-up. Developing complex software systems is complex. Software developers interact. They may have the same or different goals, communication styles, or values. Interactions can be healthy or troubled. Troubled interactions cause troubled communities, that face failure. Some of these failures manifest themselves as a community split (known as forking). These failures affects many people; developers and users. Can we save troubled projects? We statistically model the longitudinal socio-grams of software developers and present early indicators and warning signs that can be used to predict an imminent break-up decision.
Keywords: community of software developers; forks; longitudinal study

Machine Learning-Based Detection of Open Source License Exceptions - Vendome, Christopher; Mario Linares-Vasquez; Bavota, Gabriele; Di Penta, Massimiliano; Daniel M. German; Poshyvanyk, Denys (2017 IEEE/ACM 39th International Conference on Software Engineering, 2017)
From a legal perspective, software licenses govern the redistribution, reuse, and modification of software as both source and binary code. Free and Open Source Software (FOSS) licenses vary in the degree to which they are permissive or restrictive in allowing redistribution or modification under licenses different from the original one(s). In certain cases developers may modify the license by appending to it an exception to specifically allow reuse or modification under a particular condition. These exceptions are an important factor to consider for license compliance analysis since they modify the standard (and widely understood_ terms of the original license. In this work, we first perform a large-scale empirical study on the change history of over 51k FOSS systems aimed at quantitatively investigating the prevalence of known license exceptions and identifying new ones. Subsequently, we performed a study on the detection of license exceptions by relying on machine learning. We evaluated the license exception classification with four different supervised learners and sensitivity analysis. Finally we present a categorization of license exceptions and explain their implications.
Keywords: classifier; empirical studies; license; machine learning

Managing knowledge sharing in distributed innovation from the perspective of developers: empirical study of open source software projects in China - Chen, Xiaohong; Zhou, Yuan; Probert, David; Su, Jun (Technology Analysis & Strategic Management, 2017)
Knowledge sharing is the key factor that influences the performance of open source software (OSS) projects, which are the representative cases of distributed innovation. This paper aims to explore the mechanism of knowledge sharing in OSS projects from the perspective of developers in China. A quantitative method with the analysis of 403 valid questionnaires is adopted. A series of hypotheses about how distributed innovation (independent variables) influences knowledge sharing (mediating variable) and then affects the performance of OSS projects (dependent variable) are tested and approved. On the one side, we argue that developers will actively affect knowledge sharing in terms of participative motivation, social network and organisational culture. On the other hand, users may also affect the knowledge sharing when considering innovation willingness and capacity. It is interesting to find that social network is the most important factor in Chinese cases. It is strongly recommended to strengthen the collaboration between software companies and OSS communities.
Keywords: Distributed innovation; knowledge sharing; performance of OSS projects; user innovation

Measuring Perceived Trust in Open Source Software Communities - Syeed, M.M. Mahbubul; Juho Lindman; Hammouda, Imed (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
We investigate the different aspects of measuring trust in Open Source Software (OSS) communities. In the theoretical part we review seminal works related to trust in OSS development. This investigation provides background to our empirical part where we measure trust in a community (in terms of kudo). Our efforts provide further avenues to develop trust-based measurement tools. These are helpful for academics and practitioners interesting in quantifiable traits of OSS trust.

Open Source Communities as Liminal Ecosystems - Kevin Lumbard; Matt Germonprez (12th Midwest Association for Information Systems Conference (MWAIS 2017), 2017)
In this paper, we propose a study to explore the movement of individuals engaged in open source communities. Although there is extensive literature on open source communities and growing body of knowledge on corporate engagement in open source communities, our understanding of the movements of individuals within these communities is limited. To analyze these movements, we build on Arnold Van Gennep and Victor Turners’ theories on liminality. Through this lens, we build an understanding of the movements of individual members within open source communities.

The Open Source Officer Role – Experiences - Mols, CE; Wnuk, K; Linåker, J (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
This papers describe the Open Source Officer role and the experiences from introducing this role in several companies. We outline the role description, main responsibilities, and interfaces to other roles and organizations. We investigated the role in several organization and bring interesting discrepancies and overlaps of how companies operate with OSS.
Keywords: governance; inner source; maturity models

OSSpal: Finding and Evaluating Open Source Software - Wasserman, A.; Guo, X.; McMillian, B.; Qian K.; Wei M.Y.; Xu, Q. (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
This paper describes the OSSpal project, which is aimed at helping companies, government agencies, and other organizations find high quality free and open source software (FOSS) that meets their needs. OSSpal is a successor to the Business Readiness Rating (BRR), combining quantitative and qualitative evaluation measures for software in various categories. Instead of a purely numeric calculated score OSSpal adds curation of high-quality FOSS projects and individual user reviews of these criteria. Unlike the BRR project, for which there was no automated support, OSSpal has an operational, publicly available website where users may search by project name or category, and enter ratings and reviews for projects.
Keywords: Open source forges; software evaluation; software metrics; Software taxonomy

Practices and Perceptions of UML Use in Open Source Projects - Truong Ho-Quang; Hebig, Regina; Gregorio Robles; Chaudron, Michel R. V.; Miguel Angel Fernandez (2017 IEEE/ACM 39th International Conference on Software Engineering: Software Engineering in Practice Track, 2017)
Context: Open Source is getting more and more collaborative with industry. At the same time, modeling is today playing a crucial role in development of, e.g., safety critical software. Goal: However, there is a lack of research about the use of modeling in Open Source. Our goal is to shed some light into the motivation and benefits of the use of modeling and its use within project teams. Method: In this study, we perform a survey among Open Source developers. We focus on projects that use the Unified Modeling Language (UML) as a representative for software modeling. Results: We received 485 answers of contributors of 458 different Open Source projects. Conclusion: Collaboration seems to be the most important motivation for using UML. It benefits new contributors and contributors who do not create models. Teams use UML during communication and planning of joint implementation efforts.
Keywords: architecture documentation; communication; effectiveness of UML; github; MOTIVATION; UML

Predicting bug-fixing time: A replication study using an open source software project - Akbarinasaji, Shirin; Caglayan, Bora; Bener, Ayse (Journal of Systems and Software, 2017)
Background: On projects with tight schedules and limited budgets, it may not be possible to resolve all known bugs before the next release. Estimates of the time required to fix known bugs (the “bug fixing time”) would assist managers in allocating bug fixing resources when faced with a high volume of bug reports. Aim: In this work, we aim to replicate a model for predicting bug fixing time with open source data from Bugzilla Firefox. Method: To perform the replication study, we follow the replication guidelines put forth by Carver [J. C. Carver, Towards reporting guidelines for experimental replications: a proposal, in: 1st International Workshop on Replication in Empirical Software Engineering, 2010.]. Similar to the original study, we apply a Markov-based model to predict the number of bugs that can be fixed monthly. In addition, we employ Monte-Carlo simulation to predict the total fixing time for a given number of bugs. We then use the k-nearest neighbors algorithm to classify fixing times into slow and fast. Result: The results of the replicated study on Firefox are consistent with those of the original study. The results show that there are similarities in the bug handling behaviour of both systems. Conclusion: We conclude that the model that estimates the bug fixing time is robust enough to be generalized, and we can rely on this model for our future research.
Keywords: Replication study; Bug fixing time; Effort estimation; Software maintainability; Deferred bugs

Principled Evaluation of Strengths and Weaknesses in FLOSS Communities: A Systematic Mixed Methods Maturity Model Approach - Andrade, S; Saraiva, F. (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
Context: Free and Open Source Software usually results from intricate socio-technical dynamics operating in a diverse and geographically dispersed community. Understanding the fundamental underpinnings of healthy and thriving communities is of paramount importance to evaluate existing efforts and identify improvement opportunities. Objective: This paper presents a novel reference model for evaluating the maturity of FLOSS communities by mixing quantitative and qualitative methods. Method: We build upon established guidelines for Design Science research in order to devise a well-informed and expressive maturity model, describing how those methods and procedures were used in the design and development of such a model. Results: We present the model structure and functions, as well as instructions on how to instantiate it as evaluations of FLOSS communities. The use of the proposed maturity model is demonstrated in four FLOSS communities. Conclusion: Whilst instantiating the model may be burdensome if aiming at sketchy evaluations, results indicate our model effectively captures the maturity regardless aspects such as community size and lifetime.
Keywords: Design science research; Discourse communities; evaluation; FLOSS communities; maturity models; Mixed methods research

Process Aspects and Social Dynamics of Contemporary Code Review: Insights from Open Source Development and Industrial Practice at Microsoft - Bosu, Amiangshu; Carver, Jeffrey C.; Christian Bird; Orbeck, Jonathan; Chockley, Christopher (IEEE Transactions on Software Engineering, 2017)
Many open source and commercial developers practice contemporary code review, a lightweight, informal, tool-based code review process. To better understand this process and its benefits, we gathered information about code review practices via surveys of open source software developers and developers from Microsoft. The results of our analysis suggest that developers spend approximately 10-15 percent of their time in code reviews, with the amount of effort increasing with experience. Developers consider code review important, stating that in addition to finding defects, code reviews offer other benefits, including knowledge sharing, community building, and maintaining code quality. The quality of the code submitted for review helps reviewers form impressions about their teammates, which can influence future collaborations. We found a large amount of similarity between the Microsoft and OSS respondents. One interesting difference is that while OSS respondents view code review as an important method of impression formation, Microsoft respondents found knowledge dissemination to be more important. Finally, we found little difference between distributed and co-located Microsoft teams. Our findings identify the following key areas that warrant focused research: 1) exploring the non-technical benefits of code reviews, 2) helping developers in articulating review comments, and 3) assisting reviewers’ program comprehension during code reviews.
Keywords: code review; commercial projects; peer impressions; Survey

Progression and Forecast of a Curated Web-of-Trust: A Study on the Debian Project’s Cryptographic Keyring - Gunnar Wolf; Víctor González Quiroga (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
The Debian project is one of the largest free software undertakings worldwide. It is geographically distributed, and participation in the project is done on a voluntary basis, without a single formal employee or directly funded person. As we will explain, due to the nature of the project, its authentication needs are very strict—User/password schemes are way surpassed, and centralized trust management schemes such as PKI are not compatible with its distributed and flat organization; fully decentralized schemes such as the PGP Web of Trust are insuficient by themselves. The Debian project has solved this need by using what we termed a “curated Web of Trust”. We will explain some lessons learned from a massive key migration process that was triggered in 2014. We will present the social insight we have found from examining the relationships expressed as signatures in this curated Web of Trust, some recommendations on personal key-signing policies, and a statistical study and forecast on aging, refreshment and survival of project participants stemming from an analysis on their key-handling.
Keywords: cryptography; curated Web of Trust; debian; Keyring; trust management

Release Early, Release Often and Release on Time. An Empirical Case Study of Release Management - Teixeira, Jose (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
The dictum of “Release early, release often.” by Eric Raymond as the Linux modus operandi highlights the importance of release management in open source software development. Nevertheless, there are very few empirical studies addressing release management in open source software development. It is already known that most open source software communities adopt either feature-based or time-based release strategies. Each of these has its advantages and disadvantages that are context-specific. Recent research reported that many prominent open source software projects have moved from feature-based to time-based releases. In this longitudinal case study, we narrate how OpenStack shifted towards a liberal six-month release cycle. If prior research discussed why projects should adopt time-based releases and how they can adopt such a strategy, we discuss how OpenStack adapted its software development processes, its organizational design and its tools toward a hybrid release management strategy — a strive for balancing the benefits and drawbacks of feature-based and time-based release strategies.
Keywords: openstack; release management

Technical Lag in Software Compilations: Measuring How Outdated a Software Deployment Is - González-Barahona, J.M.; Sherwood, P.; Robles, G.; Izquierdo, D. (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
Large software compilations based on free, open source software (FOSS) packages are the basis for many software systems. When they are deployed in production, specific versions of the packages in the compilation are selected for installation. Over time, those versions become outdated with respect to the upstream software from which they are produced, and from the components available in the compilations as well. The fact that deployed components are outdated is not a problem in itself, but there is a price to pay for not being "as much updated as reasonable". This includes bug fixes and new features that could, at least potentially, be interesting for the deployed system. Therefore, a balance has to be maintained between "being up-to-date" and "keeping the good old working versions". This paper proposes a theoretical model (the "technical lag") for measuring how outdated a system is, with the aim of assisting in the decisions about upgrading in production. The paper explores several ways in which technical lag can be implemented, depending on requirements. As an illustration, it presents as well some specific cases in which the evolution of technical lag is computed.

Understanding the Effects of Practices on KDE Ecosystem Health - Simone da Silva Amorim; John D. McGregor; Eduardo Santana de Almeida; Christina von Flach Garcia Chavez (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
Open source software ecosystems have adjusted and evolved a set of practices over the years to support the delivery of sustainable software. However, few studies have investigated the impacts of such practices on the health of these ecosystems. In this paper, we present the results of an ethnographic-based study conducted during the Latin-American KDE users and contributors meeting (LaKademy 2015) with the goal of collecting practices used within the KDE ecosystem and understanding how they affect ecosystem health. The analysis was based on softgoal interdependency graphs adapted to represent practices and relate them to non-functional requirements and goals. Our results provide a preliminary insight to understand how KDE ecosystem community interacts, which working practices have been adopted and how they affect ecosystem health.
Keywords: Ethnographic studies; Open source software ecosystems; Software ecosystem health; Software practices

Understanding the Impressions, Motivations, and Barriers of One Time Code Contributors to FLOSS Projects: A Survey - Amanda Lee; Carver, Jeffrey C.; Bosu, Amiangshu (2017 IEEE/ACM 39th International Conference on Software Engineering, 2017)
Successful Free/Libre Open Source Software (FLOSS) projects must attract and retain high-quality talent. Researchers have invested considerable effort in the study of core and peripheral FLOSS developers. To this point, one critical subset of developers that have not been studied are One-Time code Contributors (OTC) – those that have had exactly one patch accepted. To understand why OTCs have not contributed another patch and provide guidance to FLOSS projects on retaining OTCs, this study seeks to understand the impressions, motivations, and barriers experienced by OTCs. We conducted an online survey of OTCs from 23 popular FLOSS projects. Based on the 184 responses received, we observed that OTCs generally have positive impressions of their FLOSS project and are driven by a variety of motivations. Most OTCs primarily made contributions to fix bugs that impeded their work and did not plan on becoming long term contributors. Furthermore, OTCs encounter a number of barriers that prevent them from continuing to contribute to the project. Based on our findings, there are some concrete actions FLOSS projects can take to increase the chances of converting OTCs into long-term contributors.
Keywords: newcomers; One Time Contributors; Qualitative Research; Survey

Understanding When to Adopt a Library: A Case Study on ASF Projects - Ihara, Akinori; Daiki Fujibayashi; Hirohiko Suwa; Raula Gaikovina Kula; Kenichi Matsumoto (Open Source Systems: Towards Robust Practices 13th International Conference on Open Source Systems, 2017)
Software libraries are widely used by both industrial and open source client projects. Ideally, a client user of a library should adopt the latest version that the library project releases. However, sometimes the latest version is not better than a previous version. This is because the latest version may include additional developer effort to test and integrate all changed features. In this study, our main goal is to better understand the relationship between adoption of library versions and its release cycle. Specifically, we conducted an empirical study of release cycles for 23 libraries and how they were adopted by 415 Apache Software Foundation (ASF) client projects. Our findings show that software projects are quicker to update earlier rapid-release libraries compared to library projects with a longer release cycle. Moreover, results suggest that software projects are more likely to adopt the latest version of a rapid-release library compared to libraries with a longer release cycles.
Keywords: adoption; apache; apache software foundation; libraries

Using Gamification to Orient and Motivate Students to Contribute to OSS Projects - Guilherme C. Diniz; Marco A. Graciotto Silva; Marco Gerosa; Steinmacher, Igor (2017 IEEE/ACM 10th International Workshop on Cooperative and Human Aspects of Software Engineering (CHASE), 2017)
Students can benefit from contributing to Open Source Software (OSS), since they can enrich their portfolio and learn with real world projects. However, sometimes students are demotivated to contribute due to entrance barriers. On the other hand, gamification is widely used to engage and motivate people to accomplish tasks and improve their performance. The goal of this work is to analyze the use of gamification to orient and motivate undergraduate students to overcome onboarding barriers and engage to OSS projects. To achieve this goal, we implemented four gaming elements (Quests, Points, Ranking, and Levels) in GitLab and assessed the environment by means of a study conducted with 17 students within a real OSS project (JabRed). At the end of the study, the students evaluated their experience through a questionnaire. We found that the Quest element helped to guide participants and keep them motivated and points helped by providing feedback on students' performed tasks. We conclude that the gamified environment oriented the students in an attempt to make a contribution and that gamification can motivate and orient newcomers' to engage to OSS projects.
Keywords: engagement; gamification; MOTIVATION; newcomers; students

Using Metrics to Track Code Review Performance - Izquierdo-Cortazar, Daniel; Sekitoleko, Nelson; Jesus M. Gonzalez-Barahona; Kurth, Lars (Proceedings of the 21st International Conference on Evaluation and Assessment in Software Engineering, 2017)
During 2015, some members of the Xen Project Advisory Board became worried about the performance of their code review process. The Xen Project is a free, open source software project developing one of the most popular virtualization platforms in the industry. They use a pre-commit peer review process similar to that in the Linux kernel, based on email messages. They had observed a large increase over time in the number of messages related to code review, and were worried about how this could be a signal of problems with their code review process. To address these concerns, we designed and conducted, with their continuous feedback, a detailed analysis focused on finding these problems, if any. During the study, we dealt with the methodological problems of Linux-like code review, and with the deeper issue of finding metrics that could uncover the problems they were worried about. For having a benchmark, we run the same analysis on a similar project, which uses very similar code review practices: the Linux Netdev (Netdev) project. As a result, we learned how in fact the Xen Project had some problems, but at the moment of the analysis those were already under control. We found as well how different the Xen and Netdev projects were behaving with respect to code review performance, despite being so similar from many points of view. In this paper we show the results of both analyses, and propose a comprehensive methodology, fully automated, to study Linux-style code review. We discuss also the problems of getting significant metrics to track improvements or detect problems in this kind of code review.
Keywords: code review; data mining; Software development analytics

Who Added that Permission to My App? An Analysis of Developer Permission Changes in Open Source Android Apps - Krutz, Daniel E.; Nuthan Munaiah; Anthony Peruma; Mohamed Wiem Mkaouer (2017 IEEE/ACM 4th International Conference on Mobile Software Engineering and Systems (MOBILESoft), 2017)
Android applications rely on a permission-based model to carry out core functionality. Appropriate permission usage is imperative for ensuring device security and protecting the user’s desired privacy levels. But who is making the important decisions of which permissions the app should request? Are they experienced developers with the appropriate project knowledge to make such important decisions, or are these crucial choices being made by those with relatively minor amounts of contributions to the project? When are these permission-related decisions being made in the app’s development life cycle? We examined 1,402 Android version control repositories containing over 331,318 commits including 18,751 AndroidManifest.xml versions to better understand when, why, and who is adding permissions to apps. We found that (I) developers with more experience are more likely to make permission-based changes (II) permissions are typically added earlier in apps’ commit lifetime, but their removal is more sustained throughout the commit lifetime (III) developers reverting permission-based changes are typically more experienced than developers who initially made the change being reverted.
Keywords: android; mobile

Analyzing the Decision Criteria of Software Developers Based on Prospect Theory - Kanako Kina; Tsunoda, Masateru; Tamada, Haruaki; Hiroshi Igaki (23rd IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER 2016) at Osaka, 2016)
To enhance the quality of software, many software development support tools and software development methodologies have been proposed. However, not all proposed tools and methodologies are widely used in software development. We assume that the evaluation of tools and methodologies by developers is different from the evaluation by researchers, and that this is one of the reasons why the tools and methodologies are not widely used. We analyzed the decision criteria of software developers as applied to the tools and methodologies, to clarify whether the difference exists or not. In behavioral economics, there are theories which assume people have biases, and they do not always act reasonably. In the experiment, we made a questionnaire based on behavioral economics, and collected answers from open source software developers. The results suggest that developers do not always act to maximize expected profit because of the certainty effect and ambiguity aversion. Therefore, we should reconsider the evaluation criteria of tools such as the f-measure or AUC, which mainly focus on the expected profit.
Keywords: flossmole

A Bayesian Belief Network for Modeling Open Source Software Maintenance Productivity - Bibi, Stamatia; Apostolos Ampatzoglou; Ioannis Stamelos (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
Maintenance is one of the most effort consuming activities in the software development lifecycle. Efficient maintenance within short release cycles depends highly on the underlying source code structure, in the sense that complex modules are more difficult to maintain. In this paper we attempt to unveil and discuss relationships between maintenance productivity, the structural quality of the source code and process metrics like the type of a release and the number of downloads. To achieve this goal, we developed a Bayesian Belief Network (BBN) involving several maintainability predictors and three managerial indices for maintenance (i.e., duration, production, and productivity) on 20 open source software projects. The results suggest that maintenance duration depends on inheritance, coupling, and process metrics. On the other hand maintenance production and productivity depend mostly on code quality metrics.

BugTracking: A Tool to Assist in the Identification of Bug Reports - Rodríguez-Pérez, Gema; Gonzalez-Barahona, Jesús M.; Gregorio Robles; Dalipaj, Dorealda; Sekitoleko, Nelson (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
Issue tracking systems are used, in most software projects, but in particular in almost all free open source software, to record many different kinds of issues: bug reports, feature requests, maintenance tickets and even design discussions. Identifying which of those issues are bug reports is not a trivial task. When researchers want to conduct studies on the bug reports, managed by a software development project, first of all they need to perform this identification. The job for researchers here is very different from the bug triaging that researchers do. In the latter case, people with a considerate experience in the project make a decision based on the information available at that time (maybe just a short comment by some user), asking, if needed, for more details. In the former case, researchers usually have not that experience in the project, but they have at their use all the information produced, until the moment the issue was closed. This may include not only all comments and actions on the issue tracking system, but for example, discussions about a fix in the code review system, or the final fixing patch in the source code management system. Having all that information conveyed to the researchers, in an easy, flexible and quick way, accelerates and makes their decision process much more reliable. It simplifies large scale manual analysis of issues (in hundreds or thousands), helping researchers to ensure that they are really working with what they intend to work: bug reports. This paper presents a tool designed to solve exactly the problem of providing the researchers with all the relevant information needed to decide whether an issue corresponds to a bug report or not. The tool uses information extracted automatically from the projects repositories. It offers a web-based interface which allows collaboration, traceability and transparency of the identification of bug reports. All this makes the process easier, faster, and more reliable.

Certification of Open Source Software – A Scoping Review - Kalliamvakou, Eirini; Weber, Jens; Knauss, Alessia (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
Open source software (OSS) systems are being used for increasingly critical functions in modern societies, e.g., in health care, finance, government, defense, and other safety and security sensitive sectors. There is an increasing interest in software certification as a means to assure quality and dependability of such systems. However, the development processes and organizational structures of OSS projects can be substantially different from traditional closed-source projects. The distributed, “bazaar-style” approach to software development in OSS systems is often perceived incompatible with certification. This paper presents the results of a scoping review on certification in OSS systems in order to identify and categorize key issues and provide a comprehensive overview of the current evidence on this topic.

Classifying Organizational Adoption of Open Source Software: A Proposal - Murphy, Stephen; Cox, Sharon (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
Staged adoption models are a common feature of information systems (IS) adoption literature, yet these are rarely used in open source software (OSS) adoption studies. In this paper, a staged model for classifying the organizational adoption of OSS is proposed, based upon a critical review of existing staged adoption models and factors identified from OSS adoption literature. Innovations in the proposed model include: defined transition pathways between stages, additional stages and a decomposition of cessation of use into four distinct pathways.

Combining FOSS and Kanban: An Action Research - Harzl, Annemarie (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
Even though Free and Open Source Software (FOSS) and Agile Software Development (ASD) have been recognized as important ways to develop software, share some similarities, and have many success stories, there is a lack of research regarding the comprehensive integration of both practices. This study attempts to consolidate these methods and to answer if FOSS and ASD can be combined successfully. Action Reseach (AR) is conducted with one sub-team of a large FOSS project. We performed two action research cycles based on the Kanban method. This paper has two main contributions; first, it describes a real world situation, where Kanban is applied to a FOSS project, and second, it suggests two new Kanban practices. These two methods are targeted specifically at FOSS projects and their characteristics.

Core-Periphery Communication and the Success of Free/Libre Open Source Software Projects - Kevin Crowston; Shamshurin, Ivan (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
We examine the relationship between communications by core and peripheral members and Free/Libre Open Source Software project success. The study uses data from 74 projects in the Apache Software Foundation Incubator. We conceptualize project success in terms of success building a community, as assessed by graduation from the Incubator. We compare successful and unsuccessful projects on volume of communication by core (committer) and peripheral community members and on use of inclusive pronouns as an indication of efforts to create intimacy among team members. An innovation of the paper is that use of inclusive pronouns is measured using natural language processing techniques. We find that core and peripheral members differ in their volume of contribution and in their use of inclusive pronouns, and that volume of communication is related to project success.

Data Sets: The Circle of Life in Ruby Hosting, 2003-2015 - Squire, Megan (13th International Conference on Mining Software Repositories (MSR '16), 2016)
Studying software repositories and hosting services can provide valuable insights into the behaviors of large groups of software developers and their projects. Traditionally, most analysis of metadata collected from hosting services has been conducted by specifying some short window of time, typically just a few years. To date, few - if any - studies have been built from data comprising the entirety of a repository's lifespan: from its birth to its death, and rebirth. Thus, the first contribution of this data set is to support the historical analysis of over ten years of collected metadata from the now-defunct RubyForge project hosting site, as well as the follow-on successor to RubyForge, the RubyGems hosting facility. The data sets and sample analyses in this paper will be relevant to researchers studying both software evolution and the distributed software development process.

The Debsources Dataset: two decades of free and open source software - Caneill, Matthieu; Daniel M. Germán; Zacchiroli, Stefano (Empirical Software Engineering, 2016)
We present the Debsources Dataset: distribution metadata and source code metrics spanning two decades of Free and Open Source Software (FOSS) history, seen through the lens of the Debian distribution. Debsources is a software platform used to gather, search, and publish on the Web the full source code of the Debian operating system, as well as measures about it. A notable public instance of Debsources is available at http://sources.debian.net, it includes both current and historical releases of Debian. Plugins to compute popular source code metrics (lines of code, defined symbols, disk usage) and other derived data (e.g., Checksums) have been written, integrated, and run on all the source code available on sources.debian.net. The Debsources Dataset is a PostgreSQL database dump of sources.debian.net metadata, as of February 10th, 2015. The dataset contains both Debian-specific metadata -- e.g., which software packages are available in which release, which source code file belong to which package, release dates, etc. -- and source code information gathered by running Debsources plugins. The Debsources Dataset offer a very long-term historical view of the macro-level evolution and constitution of FOSS through the lens of popular, representative FOSS projects of their times.
Keywords: debian; metadata; postgresql

Differentiating Communication Styles of Leaders on the Linux Kernel Mailing List - Schneider, Daniel; Spurlock, Scott; Squire, Megan (12th International Symposium on Open Collaboration (OpenSym 2016), 2016)
Much communication between developers of free, libre, and open source software (FLOSS) projects happens on email mailing lists. Geographically and temporally dispersed development teams use email as an asynchronous, centralized, persistently stored institutional memory for sharing code samples, discussing bugs, and making decisions. Email is especially important to large, mature projects, such as the Linux kernel, which has thousands of developers and a multi-layered leadership structure. In this paper, we collect and analyze data to understand the communication patterns in such a community. How do the leaders of the Linux Kernel project write in email? What are the salient features of their writing, and can we discern one leader from another? We find that there are clear written markers for two leaders who have been particularly important to recent discussions of leadership style on the Linux Kernel Mailing List (LKML): Linux Torvalds and Greg Kroah-Hartman. Furthermore, we show that it is straightforward to use a machine learning strategy to automatically differentiate these two leaders based on their writing. Our findings will help researchers understand how this community works, and why there is occasional controversy regarding differences in communication styles on the LKML.
Keywords: email; flossmole; linus torvalds; linux; lkml

Does the Task Structure of Open Source Projects Matter? Superposition and Value Creation - Poonacha K. Medappa; Shirish C. Srivastava (ICIS 2016 Social Media, 2016)
Collaboration through open superposition describes a process of building free (libre) and open source software (FLOSS), wherein motivationally independent layers of work is sequentially added one-on-top the other over time. This research-in-progress paper theorizes the mechanisms through which superposition influences the value of individual and organizational owned FLOSS projects. We argue for a non-linear relationship between degree of superposition and value of the FLOSS project. Moreover, we posit that the type of ownership will moderate this non-linear relationship. The moderation effect is such that – (1) organizational ownership mitigates the influence of degree of superposition on project value (2) under organizational ownership, the optimal value of degree of superposition (the point at which the project value is maximum) is lower as compared to individual owned projects. This research attempts to advance the theory of superposition and unearth the influence of task structure on the value of the FLOSS project.

An empirical study of integration activities in distributions of open source software - Adams, Bram; Kavanagh, Ryan; Hassan, Ahmed E.; Daniel M. German (Empirical Software Engineering, 2016)
Reuse of software components, either closed or open source, is considered to be one of the most important best practices in software engineering, since it reduces development cost and improves software quality. However, since reused components are (by definition) generic, they need to be customized and integrated into a specific system before they can be useful. Since this integration is system-specific, the integration effort is non-negligible and increases maintenance costs, especially if more than one component needs to be integrated. This paper performs an empirical study of multi-component integration in the context of three successful open source distributions (Debian, Ubuntu and FreeBSD). Such distributions integrate thousands of open source components with an operating system kernel to deliver a coherent software product to millions of users worldwide. We empirically identified seven major integration activities performed by the maintainers of these distributions, documented how these activities are being performed by the maintainers, then evaluated and refined the identified activities with input from six maintainers of the three studied distributions. The documented activities provide a common vocabulary for component integration in open source distributions and outline a roadmap for future research on software integration.

Evaluating the Effects of Architectural Documentation: A Case Study of a Large Scale Open Source Project - Kazman, Rick; Goldenson, Dennis; Monarch, Ira; Nichols, William; Valetto, Giuseppe (IEEE Transactions on Software Engineering, 2016)
Sustaining large open source development efforts requires recruiting new participants; however, a lack of architectural documentation might inhibit new participants since large amounts of project knowledge are unavailable to newcomers. We present the results of a multitrait, multimethod analysis of the effects of introducing architectural documentation into a substantial open source project—the Hadoop Distributed File System (HDFS). HDFS had only minimal architectural documentation, and we wanted to discover whether the putative benefits of architectural documentation could be observed over time. To do this, we created and publicized an architecture document and then monitored its usage and effects on the project. The results were somewhat ambiguous: by some measures the architecture documentation appeared to effect the project but not by others. Perhaps of equal importance is our discovery that the project maintained, in its web-accessible JIRA archive of software issues and fixes, enough architectural discussion to support architectural thinking and reasoning. This “emergent” architecture documentation served an important purpose in recording core project members’ architectural concerns and resolutions. However, this emergent architecture documentation did not serve all project members equally well; it appears that those on the periphery of the project—newcomers and adopters—still require explicit architecture documentation, as we will show.

Externalization of Software Behavior by the Mining of Norms - Daniel Avery; Dam, Hoa Khanh; Savarimuthu, Bastin Tony Roy; Aditya Ghose (13th International Conference on Mining Software Repositories (MSR'16), 2016)
Open Source Software Development (OSSD) often suffers from conflicting views and actions due to the perceived flat and open ecology of an open source community. This often manifests itself as a lack of codified knowledge that is easily accessible for community members. How decisions are made and expectations of a software system are often described in detail through the many forms of social communications that take place within a community. These social interactions form norms which are influential in dictating what behaviors are expected in a community and of the system. In this paper, we provide a tool which mines these social interactions (in the form of bug reports) and extract norms of the system, externalizing this information into a codified form that allows others within the community to be aware of without having witnessed the social interactions.

Folding and unfolding : balancing openness and transparency in open source communities - Maha Shaikh; Vaast, Emmanuelle (Information Systems Research, 2016)
Open source communities rely on the espoused premise of complete openness and transparency of source code and development process. Yet, openness and transparency at times need to be balanced out with moments of less open and transparent work. Through our detailed study of Linux Kernel development we build a theory that explains that transparency and openness are nuanced and changing qualities that certain developers manage as they use multiple digital technologies and create, in moments of needs, more opaque and closed digital spaces of work. We refer to these spaces as digital folds. Our paper contributes to extant literature: by providing a process theory of how transparency and openness are balanced with opacity and closure in open source communities according to the needs of the development work; by conceptualizing the nature of digital folds and their role in providing quiet spaces of work: and, by articulating how the process of digital folding and unfolding is made far more possible by select elite actors’ navigating the line between the pragmatics of coding and the accepted ideology of openness and transparency.

Herding Cats: A Case Study of Release Management in an Open Collaboration Ecosystem - Poo-Caamaño, Germán; Singer, Leif; Knauss, Eric; Daniel M. German (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
Release management in large-scale software development projects requires significant communication and coordination. It is particularly challenging in Free and Open Source Software (FOSS) ecosystems, in which hundreds of loosely connected developers and their projects need to be coordinated to release software to a schedule. To better understand this process and its challenges, we analyzed over two and half years of communication in the GNOME ecosystem and studied developers’ interactions. We cataloged communication channels, categorized high level communication and coordination activities in one of them, and triangulated our results by interviewing developers. We found that a release schedule, influence instead of direct control, and diversity are factors that impact positively the release process in the GNOME ecosystem. Our results can help organizations build better large-scale teams and show that research focused on individual projects might miss important parts of the picture.

How Do Free/Open Source Developers Pick Their Tools? A Delphi Study of the Debian Project - Martin Krafft; Stol, Klaas-Jan; Fitzgerald, Brian (38th International Conference on Software Engineering (ICSE 2016), 2016)
Free and Open Source Software (FOSS) has come to play a critical role in the global software industry. Organizations are widely adopting FOSS and interacting with open source communities, and hence organizations have a considerable interest in seeing these communities flourishing. Very little research has focused on the tools used to develop that software. Given the absence of organizational policies and mandate that would occur in a traditional environment, an open question is how FOSS developers decide what tools to use. In this paper we report on a policy delphi study conducted in the Debian Project, one of the largest FOSS projects. Drawing from data collected in three phases from a panel of 21 experts, we identified 15 factors that affect their decision to adopt tools. This in turn can help FOSS communities to define a suitable policy of actions, in order to improve their processes.
Keywords: Delphi; Free/Open Source Software; Qualitative Study; study; tools

How Software Developers Use Work Breakdown Relationships in Issue Repositories - C. Albert Thompson; Murphy, Gail C.; Palyart, Marc; Marko Gašparic (13th International Conference on Mining Software Repositories, 2016)
Software developers use issues as a means to describe a range of activities to be undertaken on a software system, including features to be added and defects that require fixing. When creating issues, software developers expend manual effort to specify relationships between issues, such as one issue blocking another or one issue being a sub-task of another. In particular, developers use a variety of relationships to express how work is to be broken down on a project. To better understand how software developers use work breakdown relationships between issues, we manually coded a sample of work breakdown relationships from three open source systems. We report on our findings and describe how the recognition of work breakdown relationships opens up new ways to improve software development techniques.

The Impact of a Low Level of Agreement Among Reviewers in a Code Review Process - Hirao, Toshiki; Ihara, Akinori; Ueda, Yuki; Phannachitta, Passakorn; Matsumoto, Ken-ichi (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
Software code review systems are commonly used in software development. In these systems, many patches are submitted to improve the quality. To verify the quality, voting is commonly used by contributors; however, there still exists a major problem, namely, that reviewers do not always simply reach a broad agreement. In our previous study, we found that consensus is not usually reached, implying that an individual reviewer’s final decision usually differs from that of the majority of the other reviewers. In this study, we further investigate the reasons why such situations often occur, and provide suggestions for better handling of these problems. Our analysis of the Qt and OpenStack project datasets allow us to suggest that a patch owner should select more appropriate reviewers who often agree with others’ decisions.

In-between Open and Closed - Drawing the Fine Line in Hybrid Communities - Mäenpää, Hanna; Kilamo, Terhi; Männistö, Tomi (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
Today, the community driven development model extends into a variety of new, often web based collaborations. Among these are hybrid open source development set ups in which various online tools are used to facilitate cooperation between virtual teams of commercial and voluntary stakeholders. As yet, how these relationships form and evolve is not understood extensively. This article presents a longitudinal case study of a smartphone startup that founded its early product development strategy on reliance on feedback from its customers through a web based question and answer forum. With this, the company managed to extend values typical for open source communities to support development of its proprietary software. Our main findings include that the challenge in similar settings lies in striking the right balance between the open and the proprietary – while overt openness may risk the competitive advantage of a company, leaving too much behind closed boundaries can create unnecessary friction in the relationship.

On Involvement in Open Standards: How Do Organisations Contribute to W3C Standards Through Editorship? - Gamalielsson, Jonas; Lundell, Björn (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
Over the years, a number of open standards have been developed and implemented in software for addressing a number of challenges, such as lock-in, interoperability and longevity of software systems and associated digital artefacts. Understanding organisational involvement and collaboration in standardisation is important for informing any future policy and organisational decisions concerning involvement in standardisation. The overarching goal of the study is to establish how organisations contribute to open standards development through editorship. Specifically, the focus is on open standards development in W3C. Through an analysis of editorship for all W3C recommendations we contribute novel findings concerning organisational involvement and collaboration, and highlight contributions from different types of organisations and countries for headquarter of each organisation. We make three principal contributions. First, we establish an overall characterisation of organisational involvement in W3C standardisation. Second, we report on organisational involvement in W3C standardisation over time. Third, we establish organisational collaboration in W3C standardisation through social network analysis.

A Large-Scale Study on Repetitiveness, Containment, and Composability of Routines in Open-Source Projects - Nguyen, Anh Duc; Nguyen, Hoan Anh; Nguyen, Tien N. (13th International Conference on Mining Software Repositories, 2016)
Source code in software systems has been shown to have a good degree of repetitiveness at the lexical, syntactical, and API usage levels. This paper presents a large-scale study on the repetitiveness, containment, and composability of source code at the semantic level. We collected a large dataset consisting of 9,224 Java projects with 2.79M class files, 17.54M methods with 187M SLOCs. For each method in a project, we build the program dependency graph (PDG) to represent a routine, and compare PDGs with one another as well as the subgraphs within them. We found that within a project, 12.1% of the routines are repeated, and most of them repeat from 2–7 times. As entirety, the routines are quite project-specific with only 3.3% of them exactly repeating in 1–4 other projects with at most 8 times. We also found that 26.1% and 7.27% of the routines are contained in other routine(s), i.e., implemented as part of other routine(s) elsewhere within a project and in other projects, respectively. Except for trivial routines, their repetitiveness and containment is independent of their complexity. Defining a subroutine via a per-variable slicing subgraph in a PDG, we found that 14.3% of all routines have all of their subroutines repeated. A high percentage of subroutines in a routine can be found/reused elsewhere. We collected 8,764,971 unique subroutines (with 323,564 unique JDK subroutines) as basic units for code searching/synthesis. We also provide practical implications of our findings to automated tools.

License Compliance in Open Source Cybersecurity Projects - Ahmed Shah; Selman Selman; Ibrahim Abualhaol (Technology Innovation Management Review, 2016)
Developers of cybersecurity software often include and rely upon open source software packages in their commercial software products. Before open source code is absorbed into a proprietary product, developers must check the package license to see if the project is permissively licensed, thereby allowing for commercial-friendly inheritance and redistribution. However, there is a risk that the open source package license could be inaccurate due to being silently contaminated with restrictively licensed open source code that may prohibit the sale or confidentiality of commercial derivative work. Contamination of commercial products could lead to expensive remediation costs, damage to the company{’}s reputation, and costly legal fees. In this article, we report on our preliminary analysis of more than 200 open source cybersecurity projects to identify the most frequently used license types and languages and to look for evidence of permissively licensed open source projects that are likely contaminated by restrictive licensed material (i.e., containing commercial-unfriendly code). Our analysis identified restrictive license contamination cases occurring in permissively licensed open source projects. Furthermore, we found a high proportion of code that lacked copyright attribution. We expect that the results of this study will: i) provide managers and developers with an understanding of how contamination can occur, ii) provide open source communities with an understanding on how they can better protect their intellectual property by including licenses and copyright information in their code, and ii) provide entrepreneurs with an understanding of the open source cybersecurity domain in terms of licensing and contamination and how they affect decisions about cybersecurity software architectures.

License usage and changes: a large-scale study on gitHub - Vendome, Christopher; Bavota, Gabriele; Di Penta, Massimiliano; Linares-Vásquez, Mario; German, Daniel; Poshyvanyk, Denys (Empirical Software Engineering, 2016)
Open source software licenses determine, from a legal point of view, under which conditions software can be integrated and redistributed. The reason why developers of a project adopt (or change) a license may depend on various factors, e.g., the need for ensuring compatibility with certain third-party components, the perspective towards redistribution or commercialization of the software, or the need for protecting against somebody else’s commercial usage of the software. This paper reports a large empirical study aimed at quantitatively and qualitatively investigating when and why developers adopt or change software licenses. Specifically, we first identify license changes in 1,731,828 commits, representing the entire history of 16,221 Java projects hosted on GitHub. Then, to understand the rationale of license changes, we perform a qualitative analysis on 1,160 projects written in seven different programming languages, namely C, C++, C#, Java, Javascript, Python, and Ruby—following an open coding approach inspired by grounded theory—on commit messages and issue tracker discussions concerning licensing topics, and whenever possible, try to build traceability links between discussions and changes. On one hand, our results highlight how, in different contexts, license adoption or changes can be triggered by various reasons. On the other hand, the results also highlight a lack of traceability of when and why licensing changes are made. This can be a major concern, because a change in the license of a system can negatively impact those that reuse it. In conclusion, results of the study trigger the need for better tool support in guiding developers in choosing/changing licenses and in keeping track of the rationale of license changes.

Magnet or Sticky? Measuring Project Characteristics from the Perspective of Developer Attraction and Retention - Yamashita, Kazuhiro; Kamei, Yasutaka; McIntosh, Shane; Hassan, Ahmed E.; Ubayashi, Naoyasu (Journal of Information Processing, 2016)
Open Source Software (OSS) is vital to both end users and enterprises. As OSS systems are becoming a type of infrastructure, long-term OSS projects are desired. For the survival of OSS projects, the projects need to not only retain existing developers, but also attract new developers to grow. To better understand how projects retain and attract contributors, our preliminary study aimed to measure the personnel attraction and retention of OSS projects using a pair of population migration metrics, called Magnet (personnel attraction) and Sticky (retention) metrics. Because the preliminary study analyzed only 90 projects and the 90 projects are not representative of GitHub, this paper extend the preliminary study to better understand the generalizability of the results by analyzing 16, 552 projects of GitHub. Furthermore, we also add a pilot study to investigate the typical duration between releases to find more appropriate release duration. The study results show that (1) approximately 23% of developers remain in the same projects that the developers contribute to, (2) the larger projects are likely to attract and retain more developers, (3) 53% of terminal projects eventually decay to a state of fewer than ten developers and (4) 55% of attractive projects remain in an attractive category.
Keywords: github; retention

Managing Hidden Dependencies in OO Software: a Study Based on Open Source Projects - Nemitari Ajienka; Capiluppi, Andrea; Counsell, Steve (ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM), 2016)
Dependency-based software change impact analysis is the domain concerned with estimating sets of artifacts impacted by a change to a related artifact. Research has shown that analysing the various class dependency types independently will not reveal a complete estimate of impact sets. Therefore, dependency types are combined to improve the precision of estimated when compared to impact sets. Software classes can be linked in different ways; for instance semantically, if their meaning is somewhat related or, structurally, if one class depends on the services of other classes. 'Hidden' dependencies arise when two classes, linked structurally, do not share the same semantic namespace or when semantically dependent classes do not share a structural link. With the goal of revealing hidden dependencies during change impact analysis, we empirically investigated the interplay between structural and semantic class dependencies in object-oriented software systems. Results show that (i) semantic and structural links are significantly associated, (ii) the strengths of those links does not play a significant role and, (iii) a significant number of dependencies are hidden. We propose refactoring techniques to deal with hidden dependencies, based on existing design patterns. Our approach has the potential for reducing refactoring and testing effort.

An Open Continuous Deployment Infrastructure for a Self-driving Vehicle Ecosystem - Berger, Christian (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
Self-driving vehicles are an ongoing research and engineering topic even though first automotive OEMs started to deploy such features to their premium vehicles. Chalmers University of Technology and University of Gothenburg are operating and maintaining a vehicle laboratory comprising 1/10 scaled cars, a Volvo XC90, and a Volvo FH truck to conduct studies with automated driving. This laboratory is used both from researchers from different disciplines and in education. The experimental software for all these platforms is powered by the same software environment for different hardware architectures. Therefore, maintaining and deploying new features and bugfixes to the users of this laboratory in a fast way needs to be organized in a reproducible yet easily maintainable manner. This paper outlines our open approach to encapsulate our build, test, and deployment process using VirtualBox, Docker, and Jenkins.

Open Source Software Ecosystem: A Systematic Literature Review - Javad Nasserifar (2016)
Background: Currently having a software ecosystem is vital for many technology businesses. For this reason, understanding of software ecosystem and its benefits and also the elements of each software ecosystem can help business and software communities to emerge and orchestrate the products ecosystem optimally. Moreover, an interesting phenomenon in computer science and information technology is open source software and systems which enable users to participate in developing and using the software at many scales, from a simple mobile application to large-scale business systems and ICT applications.

OSSAP – A Situational Method for Defining Open Source Software Adoption Processes - López, Lidia; Costal, Dolors; Ralyté, Jolita; Franch, Xavier; Méndez, Lucía; Annosi, Maria Carmela (Advanced Information Systems Engineering: 28th International Conference, CAiSE 2016, Ljubljana, Slovenia, June 13-17, 2016. Proceedings, 2016)
Organizations are increasingly becoming Open Source Software (OSS) adopters, either as a result of a strategic decision or just as a consequence of technological choices. The strategy followed to adopt OSS shapes organizations’ businesses; therefore methods to assess such impact are needed. In this paper, we propose OSSAP, a method for defining OSS Adoption business Processes, built using a Situational Method Engineering (SME) approach. We use SME to combine two well-known modelling methods, namely goal-oriented models (using i*) and business process models (using BPMN), with a pre-existing catalogue of goal-oriented OSS adoption strategy models. First, we define a repository of reusable method chunks, including the guidelines to apply them. Then, we define OSSAP as a composition of those method chunks to help organizations to improve their business processes in order to integrate the best fitting OSS adoption strategy. We illustrate it with an example of application in a telecommunications company.

Peripheral Developer Participation in Open Source Projects: An Empirical Analysis - Krishnamurthy, Rajiv; Jacob, Varghese; Radhakrishnan, Suresh; Kutsal Dogan (ACM Trans. Manage. Inf. Syst., 2016)
The success of the Open Source model of software development depends on the voluntary participation of external developers (the peripheral developers), a group that can have distinct motivations from that of project founders (the core developers). In this study, we examine peripheral developer participation by empirically examining approximately 2,600 open source projects. In particular, we hypothesize that peripheral developer participation is higher when the potential for building reputation by gaining recognition from project stakeholders is higher. We consider recognition by internal stakeholders (such as core developers) and external stakeholders (such as end-users and peers). We find a positive association between peripheral developer participation and the potential of stakeholder recognition after controlling for bug reports, feature requests, and other key factors. Our findings provide important insights for OSS founders and corporate managers for open sourcing or OSS adoption decisions.
Keywords: Code ownership; open source software; project management; software metrics

The quest for open source projects that use UML - fernandez, miguel angel; Hebig, Regina; Quang, Truong Ho; Chaudron, Michel R. V. (Proceedings of the ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems - MODELS '16, 2016)
Context: While industrial use of UML was studied intensely,little is known about UML use in Free/Open Source Soft-ware (FOSS) projects. Goal: We aim at systematically mining GitHub projects to answer the question when mod-els, if used, are created and updated throughout the whole project’s life-span. Method: We present a semi-automated approach to collect UML stored in images, .xmi, and .uml ﬁles and scanned ten percent of all GitHub projects (1.24million). Our focus was on number and role of contributors that created/updated models and the time span during which this happened. Results: We identiﬁed and studied 21 316 UML diagrams within 3 295 projects. Conclusion: Creating/updating of UML happens most often during a very short phase at the project start. For 12% of the models duplicates were found, which are in average spread across 1.88 projects. Finally, we contribute a list of GitHub projects that include UML ﬁles.

The Role of Local Open Source Communities in the Development of Open Source Projects - Abdulwahhab, Sinan; Alabady, Yazen; Sattar, Yacoub; Hammouda, Imed (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
This paper investigates the position of local open source communities (LOSCs) in the development of open source projects (OSPs). We have conducted an empirical study to examine the role of LOSCs, their way of working, and the benefits/challenges they experience compared to the overall global community. The qualitative investigation consisted of ten semi-structured interviews with members within different LOSCs. The results confirm the importance of LOSCs and the pivotal role they play in the development of OSPs. In many cases, they act as the middleman between individual members and the project’s global community. However, LOSCs have their own kinds of challenges.

Roles and politeness behavior in community-based free/libre open source software development - Kangning Wei; Kevin Crowston; Eseryel, U.Yeliz; Robert Heckman (Information & Management, 2016)
Community-based Free/Libre Open Source Software (FLOSS) development relies on contributions from both core and peripheral members. Prior research on core–periphery has focused on software coding-related behaviors. We study how core–periphery roles are related to social-relational behavior in terms of politeness behavior. Data from two FLOSS projects suggest that both core and peripheral members use more positive politeness strategies than negative strategies. Further, core and peripheral members use different strategies to protect positive face in positive politeness, which we term respect and intimacy, respectively. Our results contribute to FLOSS research and politeness theory.
Keywords: Core–periphery structure; open source software development; Politeness behavior

The Sky is Not the Limit: Multitasking Across GitHub Projects - Vasilescu, Bogdan; Blincoe, Kelly; Xuan, Qi; Casalnuovo, Casey; Damian, Daniela; Devanbu, Premkumar; Filkov, Vladimir (Proceedings of the 38th International Conference on Software Engineering (ICSE 2016), 2016)
Software development has always inherently required multitasking: developers switch between coding, reviewing, testing, designing, and meeting with colleagues. The advent of software ecosystems like GitHub has enabled something new: the ability to easily switch between projects. Developers also have social incentives to contribute to many projects; prolific contributors gain social recognition and (eventually) economic rewards. Multitasking, however, comes at a cognitive cost: frequent context-switches can lead to distraction, sub-standard work, and even greater stress. In this paper, we gather ecosystem-level data on a group of programmers working on a large collection of projects. We develop models and methods for measuring the rate and breadth of a developers' context-switching behavior, and we study how context-switching affects their productivity. We also survey developers to understand the reasons for and perceptions of multitasking. We find that the most common reason for multitasking is interrelationships and dependencies between projects. Notably, we find that the rate of switching and breadth (number of projects) of a developer's work matter. Developers who work on many projects have higher productivity if they focus on few projects per day. Developers that switch projects too much during the course of a day have lower productivity as they work on more projects overall. Despite these findings, developers perceptions of the benefits of multitasking are varied.
Keywords: github; multitasking; productivity

A Study of Concurrency Bugs in an Open Source Software - Abbaspour Asadollah, Sara; Sundmark, Daniel; Eldh, Sigrid; Hansson, Hans; Enoiu, Eduard Paul (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
Concurrent programming puts demands on software debugging and testing, as concurrent software may exhibit problems not present in sequential software, e.g., deadlocks and race conditions. In aiming to increase efficiency and effectiveness of debugging and bug-fixing for concurrent software, a deep understanding of concurrency bugs, their frequency and fixing-times would be helpful. Similarly, to design effective tools and techniques for testing and debugging concurrent software understanding the differences between non-concurrency and concurrency bugs in real-word software would be useful. This paper presents an empirical study focusing on understanding the differences and similarities between concurrency bugs and other bugs, as well as the differences among various concurrency bug types in terms of their severity and their fixing time. Our basis is a comprehensive analysis of bug reports covering several generations of an open source software system. The analysis involves a total of 4872 bug reports from the last decade, including 221 reports related to concurrency bugs. We found that concurrency bugs are different from other bugs in terms of their fixing time and their severity. Our findings shed light on concurrency bugs and could thereby influence future design and development of concurrent software, their debugging and testing, as well as related tools.

Is there a wage premium for volunteer OSS engagement? – signalling, learning and noise - Bitzer, Jürgen; Geishecker, Ingo; Schröder, Philipp J. H. (Applied Economics, 2016)
Volunteer-based open-source production has become a significant new model for the organization of software development. Economics often pictures this phenomenon as a case of signaling: Individuals engage in the volunteer programming of open-source software (OSS) as a labor-market signal resulting in a wage premium. Yet, this explanation could so far not be empirically tested. The present paper fills this gap by estimating an upper-bound composite wage premium of voluntary OSS contributions and by separating the potential signaling effect of OSS engagement from other effects. Although some 70% of OSS contributors believe that OSS involvement benefits their careers, we find no actual labor market premium for OSS engagement. The presence of other motives such as fun of play or altruism render OSS contributions too noisy to function as a signal.
Keywords: open source software; peer production; signalling; voluntary work; wage formation

Towards Developing a Theory of Toxicity in the Context of Free/Open Source Software & Peer Production Communities - Carillo, Kevin Daniel Andre; Josianne Marsan; Bogdan Negoita Warwick (2016)
Information technology usage has positive aspects, but it has been acknowledged that there also exist negative ones that must be studied in more depth. Behaviors such as teasing and abusing are a main concern for Free/Open Source Software (FOSS) and peer production project leaders. Indeed, they have recurrently used the words "toxic" and "poison" to qualify behaviors threatening their communities' survival. Community health has been defined as the extent to which the vital systems of an online community are continuously performing normally. This definition is based on the metaphor of "online community as a living organism" , which brings the focus on the inner workings of communities and is particularly suited to study behaviors occurring within it. In this research project, we mobilize this organismic metaphor and borrow ideas from the Toxicology discipline to develop a theory of toxicity in FOSS and & peer production communities. There has been a substantial amount of research attention on 'toxic' and 'poisonous' behaviors at the individual level of analysis. Nonetheless, the higher-level concern of their interplay and implications on the life and health of FOSS/peer production communities, is still vastly unexplored. We would like to partake to the SIGOPEN 2016 Developmental Workshop for Openness Research to help us move our work forward with the ultimate objective to develop a theory of toxicity in the context of FOSS and peer production projects.

Towards Open Source/Data in the Context of Higher Education: Pragmatic Case Studies Deployed in Romania - Coman, Alexandru; Cîtea, Alexandru; Buraga, Sabin C. (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
The open source ideology is unfortunately not so popular in Romania. This subject represents, to this day, an untackled problem especially in various local educational areas. The paper describes an interesting initiative taken this year by the Faculty of Computer Science, University of Iaşi, Romania to change the collective opinion by progressively pushing the new generations of students through a binding process with the ideas involved in the open source philosophy. Three ongoing initiatives addressing this problem are detailed, including the results we have obtained so far through them, and also the steps that are planned to be taken soon on the matter.

Who Cares About My Feature Request? - Heppler, Lukas; Eckert, Remo; Stuermer, Matthias (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
Previous studies on issue tracking systems for open source software (OSS) focused mainly on requests for bug fixes. However, requests to add a new feature or an improvement to an OSS project are often also made in an issue tracking system. These inquiries are particularly important because they determine the further development of the software. This study examines if there is any difference between requests of the IBM developer community and other sources in terms of the likelihood of successful implementation. Our study consists of a case study of the issue tracking system BugZilla in the Eclipse integrated development environment (IDE). Our hypothesis, which was that feature requests from outsiders have less chances of being implemented, than feature requests from IBM developers, was confirmed.

Women in Free/Libre/Open Source Software: The Situation in the 2010s - Gregorio Robles; Reina, Laura Arjona; González-Barahona, Jesús M.; Dueñas Dominguez, Santiago (International Conference on Open Source Systems 2016, 2016)
Women are underrepresented in the IT sector. But the situation in FLOSS (free, libre, open source software) development is really extreme in this respect: past publications and studies show a female participation of around 2% to 5% and have shed some light into this problem. In this paper, we give an update the state of knowledge tot he current situation of gender in FLOSS, by analyzing the results of surveying more than 2,000 contributors to FLOSS projects in 2013, of which more than 200 were women. Our ﬁndings conﬁrm that women enter the FLOSS community later than men, do primarily other tasks than coding, participate less if they have children, and have slightly diﬀerent reasons to enter (and to stay in) the development communities they join. However, we also ﬁnd evidence that women are joiningFLOSS projects in higher numbers in recent years, and that the share of women devoting few hours per week to FLOSS and full-time dedication is higher than for men. All in all, comparing our results with the ones from the 2000s, the context of participation of women in FLOSS has not changed much.

Women in Free/Libre/Open Source Software: The Situation in the 2010s - Gregorio Robles; Reina, Laura Arjona; González-Barahona, Jesús M.; Domínguez, Santiago Dueñas (Open Source Systems: Integrating Communities: 12th IFIP WG 2.13 International Conference, OSS 2016, Gothenburg, Sweden, May 30 - June 2, 2016, Proceedings, 2016)
Women are underrepresented in the IT sector. But the situation in FLOSS (free, libre, open source software) development is really extreme in this respect: past publications and studies show a female participation of around 2 % to 5 % and have shed some light into this problem. In this paper, we give an update the state of knowledge to the current situation of gender in FLOSS, by analyzing the results of surveying more than 2,000 contributors to FLOSS projects in 2013, of which more than 200 were women. Our findings confirm that women enter the FLOSS community later than men, do primarily other tasks than coding, participate less if they have children, and have slightly different reasons to enter (and to stay in) the development communities they join. However, we also find evidence that women are joining FLOSS projects in higher numbers in recent years, and that the share of women devoting few hours per week to FLOSS and full-time dedication is higher than for men. All in all, comparing our results with the ones from the 2000s, the context of participation of women in FLOSS has not changed much.

An Architectural Evolution Dataset - Wermelinger, Michel; Yu, Yijun (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
A good evolution process and a good architecture can greatly support the maintainability of long-lived, large software systems. We present AREVOL, a dataset for the empirical study of architectural evolution. The dataset comprises two popular systems from the same domain and using the same component model, to make comparative studies possible. Besides the original component metadata, AREVOL includes scripts to obtain simplified models that nevertheless support rich studies of architectural evolution, as the authors’ previous work has shown.

Automatically Prioritizing Pull Requests - van der Veen, Erik; Gousios, Georgios; Zaidman, Andy (Proceedings of the 12th International Conference on Mining Software Repositories, 2015)
In previous work, we observed that in the pull-based development model integrators face challenges with regard to prioritizing work in the face of multiple concurrent pull requests. We present the design and initial implementation of a prototype pull request prioritisation tool called PRioritizer. PRioritizer works like a priority inbox for pull requests, recommending the top pull requests the project owner should focus on. A preliminary user study showed that PRioritizer provides functionality that GitHub is currently lacking, even though users need more insight into how the priority ranking is established to make PRioritizer really useful.

On the Availability and Effectiveness of Open Source Software for Digital Signing of PDF Documents - Gamalielsson, Jonas; Jakobsson, Fredrik; Lundell, Björn; Feist, Jonas; Gustavsson, Tomas; Landqvist, Fredric (Open Source Systems: Adoption and Impact, 2015)
Digital signatures are important in order to ensure the integrity and authenticity of information communicated over the Internet involving different stakeholders within and beyond the borders of different nations. The topic has gained increased interest in the European context and there is legislation and project initiatives aiming to facilitate use and standardisation of digital signatures. Open standards and open source implementations of open standards are important means for the interoperability and long-term maintenance of software systems implementing digital signatures. In this paper we report from a study aiming to establish the availability and effectiveness of software provided under an open source license for digital signing and validation of PDF documents. Specifically, we characterise the use of digital signatures in Swedish Governmental agencies, report on the interoperability of open source and proprietary licensed software for digital signatures in PDF documents, and establish the effectiveness of software provided under an open source license for validation of digital signatures in PDF documents.

Big data analytics on large-scale socio-technical software engineering archives - Bayati, Shahabedin; Parsons, David; Susnjak, Teo; Heidary, Marzieh (2015 3rd International Conference on Information and Communication Technology (ICoICT )2015 3rd International Conference on Information and Communication Technology (ICoICT), 2015)
Given the fast growing nature of software engineering data in online software repositories and open source communities, it would be helpful to analyse these assets to discover valuable information about the software engineering development process and other related data. Big Data Analytics (BDA) techniques and frameworks can be applied on these data resources to achieve a high-performance and relevant data collection and analysis. Software engineering is a socio-technical process which needs development team collaboration and technical knowledge to develop a high-quality application. GitHub, as an online social coding foundation, contains valuable information about the software engineers' communications and project life cycles. In this paper, unsupervised data mining techniques are applied on the data collected by general Big Data approaches to analyse GitHub projects, source codes and interactions. Source codes and projects are clustered using features and metrics derived from historical data in repositories, object oriented programming metrics and the influences of developers on source codes.

Candoia: A Platform and an Ecosystem for Building and Deploying Versatile Mining Software Repositories Tools - Nitin M. Tiwari; Dalton D. Mills; Ganesha Upadhyaya; Eric Lin; Rajan, Hridesh (Iowa State University Computer Science Technical Reports, 2015)
Research on mining software repositories (MSR) has shown great promise during the last decade in solving many challenging software engineering problems. There exists, however, a ‘valley of death’ between these significant innovations in the MSR research and their deployment in practice. The significant cost of converting a prototype to software; need to provide support for a wide variety of tools and technologies e.g. CVS, SVN, Git, Bugzilla, Jira, Issues, etc, to improve applicability; and the high cost of customizing tools to practitioner-specific settings are some key hurdles in transition to practice. We describe Candoia, a platform and an ecosystem that is aimed at bridging this valley of death between innovations in MSR research and their deployment in practice. We have implemented Candoia and provide facilities to build and publish MSR ideas as Candoia apps. Our evaluation demonstrates that Candoia drastically reduces the cost of converting an idea to an app, thus reducing the barrier to transitioning research findings into practice. We also see versatility, in Candoia app’s ability to work with a variety of tools and technologies that the platform supports. Finally, we find that customizing Candoia app to fit project-specific needs is often well within the grasp of developers.
Keywords: Analysis of software and its evolution; Application specific development environments; flossmole cited; msr; research to practice; software evolution; software repositories

Characteristics of Sustainable OSS Projects: A Theoretical and Empirical Study - Hata, Hideaki; Todo, Taiki; Onoue, Saya; Kenichi Matsumoto (Proceedings of the Eighth International Workshop on Cooperative and Human Aspects of Software Engineering, 2015)
How can we attract developers? What can we do to incentivize developers to write code? We started the study by introducing the population pyramid visualization to software development communities, called software population pyramids, and found a typical pattern in shapes. This pattern comes from the differences in attracting coding contributors and discussion contributors. To understand the causes of the differences, we then build game-theoretical models of the contribution situation. Based on these results, we again analyzed the projects empirically to support the outcome of the models, and found empirical evidence. The answers to the initial questions are clear. To incentivize developers to code, the projects should prepare documents, or the projects or third parties should hire developers, and these are what sustainable projects in GitHub did in reality. In addition, making innovations to reduce the writing costs can also have an impact in attracting coding contributors.

Characterization and prediction of issue-related risks in software projects - Morakot Choetkiertikul; Dam, Hoa Khanh; Truyen Tran; Aditya Ghose (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
Identifying risks relevant to a software project and planning measures to deal with them are critical to the success of the project. Current practices in risk assessment mostly rely on high-level, generic guidance or the subjective judgements of experts. In this paper, we propose a novel approach to risk assessment using historical data associated with a software project. Specifically, our approach identifies patterns of past events that caused project delays, and uses this knowledge to identify risks in the current state of the project. A set of risk factors characterizing “risky” software tasks (in the form of issues) were extracted from five open source projects: Apache, Duraspace, JBoss, Moodle, and Spring. In addition, we performed feature selection using a sparse logistic regression model to select risk factors with good discriminative power. Based on these risk factors, we built predictive models to predict if an issue will cause a project delay. Our predictive models are able to predict both the risk impact (i.e. the extend of the delay) and the likelihood of a risk occurring. The evaluation results demonstrate the effectiveness of our predictive models, achieving on average 48%–81% precision, 23%–90% recall, 29%–71% F-measure, and 70%–92% Area Under the ROC Curve. Our predictive models also have low error rates: 0.39–0.75 for Macroaveraged Mean Cost-Error and and 0.7–1.2 for Macro-averaged Mean Absolute Error

Co-evolution of Infrastructure and Source Code - An Empirical Study - Yujuan Jiang; Adams, Bram (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
Infrastructure-as-code automates the process of configuring and setting up the environment (e.g., servers, VMs and databases) in which a software system will be tested and/or deployed, through textual specification files in a language like Puppet or Chef. Since the environment is instantiated automatically by the infrastructure languages’ tools, no manual intervention is necessary apart from maintaining the infrastructure specification files. The amount of work involved with such maintenance, as well as the size and complexity of infrastructure specification files, have not yet been studied empirically. Through an empirical study of the version control system of 265 OpenStack projects, we find that infrastructure files are large and churn frequently, which could indicate a potential of introducing bugs. Furthermore, we found that the infrastructure code files are coupled tightly with the other files in a project, especially test files, which implies that testers often need to change infrastructure specifications when making changes to the test framework and tests.
Keywords: openstack

Data Mining Behavioral Transitions in Open Source Repositories - Robinson, William; Tianjie Deng (Hawaii International Conference on System Sciences 48, 2015)
Open-source repository data can be automatically mined using sequence mining methods to provide high-level feedback on project status. GitHub.com projects are acquired, sequence-mined, clustered, and regressed to analyze project characteristics. Such results can be presented to project managers, as part of a display generated by an automated monitoring system. Such monitoring systems provide high-level feedback in real-time. This project is a preliminary step in a larger research project aimed at understanding and monitoring FLOSS projects using this process modeling approach.

A Data Set for Social Diversity Studies of GitHub Teams - Vasilescu, Bogdan; Serebrenik, Alexander; Filkov, Vladimir (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
Like any other team oriented activity, the software development process is effected by social diversity in the programmer teams. The effect of team diversity can be significant, but also complex, especially in decentralized teams. Discerning the precise contribution of diversity on teams’ effectiveness requires quantitative studies of large data sets. Here we present for the first time a large data set of social diversity attributes of programmers in GITHUB teams. Using alias resolution, location data, and gender inference techniques, we collected a team social diversity data set of 23,493 GITHUB projects. We illustrate how the data set can be used in practice with a series of case studies, and we hope its availability will foster more interest in studying diversity issues in software teams.
Keywords: ghtorrent; github

A Dataset For API Usage - Anand Ashok Sawant; Bacchelli, Alberto (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
An Application Programming Interface (API) provides a specific set of functionalities to a developer. The main aim of an API is to encourage the reuse of already existing functionality. There has been some work done into API popularity trends, API evolution and API usage. For all the aforementioned research avenues there has been a need to mine the usage of an API in order to perform any kind of analysis. Each one of the approaches that has been employed in the past involved a certain degree of inaccuracy as there was no type check that takes place. We introduce an approach that takes type information into account while mining API method invocations and annotation usages. This approach accurately makes a connection between a method invocation and the class of the API to which the method belongs to. We try collecting as many usages of an API as possible, this is achieved by targeting projects hosted on GitHub. Additionally, we look at the history of every project to collect the usage of an API from earliest version onwards. By making such a large and rich dataset public, we hope to stimulate some more research in the field of APIs with the aid of accurate API usage samples.

A Dataset of High Impact Bugs: Manually-Classified Issue Reports - Ohira, Masao; Yutaro Kashiwa; Yosuke Yamatani; Hayato Yoshiyuki; Yoshiya Maeda; Nachai Limsettho; Keisuke Fujino; Hata, Hideaki; Ihara, Akinori; Kenichi Matsumoto (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
The importance of supporting test and maintenance activities in software development has been increasing, since recent software systems have become large and complex. Although in the field of Mining Software Repositories (MSR) there are many promising approaches to predicting, localizing, and triaging bugs, most of them do not consider impacts of each bug on users and developers but rather treat all bugs with equal weighting, excepting a few studies on high impact bugs including security, performance, blocking, and so forth. To make MSR techniques more actionable and effective in practice, we need deeper understandings of high impact bugs. In this paper we introduced our dataset of high impact bugs which was created by manually reviewing four thousand issue reports in four open source projects (Ambari, Camel, Derby and Wicket).
Keywords: ambari; camel; derby; wicket

A Dataset of the Activity of the git Super-repository of Linux in 2012 - Daniel M. German; Adams, Bram; Hassan, Ahmed E. (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
This dataset documents the activity in the public portion of the git Super-repository of the Linux kernel during 2012. In a distributed version control system, such as git, the Super-repository is the collection of all the repositories (repos) used for development. In such a Super-repository, some repos will be accessible only by their owners (they are private, and are located in places that are unreachable to other users) while others are available to other members of the team. The latter public repositories are used as avenues through which commits flow from one developer to another. During the last six weeks of 2011, we proceeded to automatically discover the public portion of the Super-repository of Linux. Then, in 2012, every 3 hrs, each of these public repositories was queried to see what new commits it had and what commits had disappeared from it using a process we call continuous mining. This resulted in the identification of 533,513 different commits across 451 different public repositories and how they propagated through the Linux Super-repository, including the repository of Linus Torvalds (i.e., the main repository of the Linux kernel). This information could help us understand how kernel contributors use git, how they collaborate and how commits are integrated into the Linux kernel and into the repositories of organizations that distribute the kernel. This dataset is at http://turingmachine.org/2015/linuxGit

The Debsources Dataset: Two Decades of Debian Source Code Metadata - Zacchiroli, Stefano (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
We present the Debsources Dataset: distribution metadata and source code metrics spanning two decades of Free and Open Source Software (FOSS) history, seen through the lens of the Debian distribution. Debsources is a software platform used to gather, search, and publish on the Web the full source code of the Debian operating system, as well as measures about it. A notable public instance of Debsources is available at http://sources.debian.net; it includes both current and historical releases of Debian. Plugins to compute popular source code metrics (lines of code, defined symbols, disk usage) and other derived data (e.g., checksums) have been written, integrated, and run on all the source code available on sources.debian.net. The Debsources Dataset is a PostgreSQL database dump of sources.debian.net metadata, as of February 10th, 2015. The dataset contains both Debian-specific metadata—e.g., which software packages are available in which release, which source code file belong to which package, release dates, etc.—and source code information gathered by running Debsources plugins. The Debsources Dataset offer a very long-term historical view of the macro-level evolution and constitution of FOSS through the lens of popular, representative FOSS projects of their times.
Keywords: debian

The diffusion of pastebin tools to enhance communication in FLOSS mailing lists - Squire, Megan; Smith, Amber (11th International Conference on Open Source Systems, 2015)
This paper describes how software developers who use mailing lists to communicate reacted and adjusted to a new supplementary collaboration tool, called a pastebin service. Using publicly-available archives of 8800 mailing lists, we examine the adoption of the pastebin tool by software developers and compare it to the model presented in Diffusion of Innovation (DoI) theory. We then compare the rate at which software developers decided whether to accept or reject the new pastebin tools. We find that the overall rate of pastebin adoption follows the S-curve predicted by classic DoI theory. We then compare the individual pastebin services and their rates of adoption, as well as the reaction of different communities to the new tools and the various rationales for accepting or rejecting them.

Do Bugs Foreshadow Vulnerabilities? A Study of the Chromium Project - Felivel Camilo (2015)
As developers face ever-increasing pressure to engineer secure software, researchers are building an understanding of security-sensitive bugs (i.e. vulnerabilities). Research into mining software repositories has greatly increased our understanding of software quality via empirical study of bugs. However, conceptually vulnerabilities are different from bugs: they represent abusive functionality as opposed to wrong or insufficient functionality commonly associated with traditional, non-security bugs. In this study, we performed an in-depth analysis of the Chromium project to empirically examine the relationship between bugs and vulnerabilities. We mined 374,686 bugs and 703 post-release vulnerabilities over five Chromium releases that span six years of development. Using logistic regression analysis, we examined how various categories of pre-release bugs and review experiences (e.g. stability, compatibility, etc.) are associated with post-release vulnerabilities. While we found statistically significant correlations between our metrics and post-release vulnerabilities, we also found the association to be weak. Number of features, SLOC, and number of pre-release security bugs are, in general, more closely associated with post-release vulnerabilities than any of our non-security bug categories. In a separate analysis, we found that the files with highest defect density did not intersect with the files of highest vulnerability density. These results indicate that bugs and vulnerabilities are empirically dissimilar groups, warranting the need for more research targeting vulnerabilities specifically.

Ecosystems in GitHub and a Method for Ecosystem Identification using Reference Coupling - Blincoe, Kelly; Harrison, Francis; Damian, Daniela (12th Working Conference on Mining Software Repositories, 2015)
Software projects are not developed in isolation. Recent research has shifted to studying software ecosystems, communities of projects that depend on each other and are developed together. However, identifying technical dependencies at the ecosystem level can be challenging. In this paper, we propose a new method, known as reference coupling, for detecting technical dependencies between projects. The method establishes dependencies through user-specified cross-references between projects. We use our method to identify ecosystems in GitHubhosted projects, and we identify several characteristics of the identified ecosystems. We find that most ecosystems are centered around one project and are interconnected with other ecosystems. The predominant type of ecosystems are those that develop tools to support software development. We also found that the project owners’ social behaviour aligns well with the technical dependencies within the ecosystem, but project contributors’ social behaviour does not align with these dependencies. We conclude with a discussion on future research that is enabled by our reference coupling method.

An Empirical Study of Architectural Change in Open-Source Software Systems - Duc Minh Le; Pooyan Behnamghader; Joshua Garcia‡ Daniel Link; Arman Shahbazian; Nenad Medvidovic (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
From its very inception, the study of software architecture has recognized architectural decay as a regularly occurring phenomenon in long-lived systems. Architectural decay is caused by repeated changes to a system during its lifespan. Despite decay’s prevalence, there is a relative dearth of empirical data regarding the nature of architectural changes that may lead to decay, and of developers’ understanding of those changes. In this paper, we take a step toward addressing that scarcity by conducting an empirical study of changes found in software architectures spanning several hundred versions of 14 opensource systems. Our study reveals several new findings regarding the frequency of architectural changes in software systems, the common points of departure in a system’s architecture during maintenance and evolution, the difference between system-level and component-level architectural change, and the suitability of a system’s implementation-level structure as a proxy for its architecture.
Keywords: architectural change; architecture recovery; open-source systems; software architecture; software evolution

An Empirical Study of Developer Quality - Qiu, Yilin; Zhang, Weiqiang; Zou, Weiqin; Liu, Jia; Liu, Qin (2015 International Conference on Software Quality, Reliability and Security - Companion (QRS-C), 2015)
Human factors have attracted more and more attention in software engineering. Of many kinds of developer metrics proposed, developer quality is important. Recently, some researchers measure a developer's quality as the rate of his/hernon bug-introducing commits. In this paper, we conduct an empirical study of this developer quality metric. We use the data of six open source software projects and get the following conclusions: (1) the values of developer quality in a project are uniformly distributed in a certain range, (2) developer quality tends to increase with software evolution, (3) developers with more contribution are more likely to have higher developer quality, (4) ownership does not have a consistent and significant correlation with developer quality. These results can provide project leaders and team members with some guides to improve developer quality, and thus improve software quality.

An Empirical Study of Developer Quality - Qiu, Yilin; Zhang, Weiqiang; Zou, Weiqin; Liu, Jia; Liu, Qin (2015 International Conference on Software Quality, Reliability and Security - Companion (QRS-C), 2015)
Human factors have attracted more and more attention in software engineering. Of many kinds of developer metrics proposed, developer quality is important. Recently, some researchers measure a developer's quality as the rate of his/hernon bug-introducing commits. In this paper, we conduct an empirical study of this developer quality metric. We use the data of six open source software projects and get the following conclusions: (1) the values of developer quality in a project are uniformly distributed in a certain range, (2) developer quality tends to increase with software evolution, (3) developers with more contribution are more likely to have higher developer quality, (4) ownership does not have a consistent and significant correlation with developer quality. These results can provide project leaders and team members with some guides to improve developer quality, and thus improve software quality.

An Empirical Study of the Relation Between Strong Change Coupling and Defects Using History and Social Metrics in the Apache Aries Project - Wiese, Igor Scaliante; Kuroda, Rodrigo Takashi; Re, Reginaldo; Oliva, Gustavo Ansaldi; Gerosa, MarcoAurélio (Open Source Systems: Adoption and Impact, 2015)
Change coupling is an implicit relationship observed when artifacts change together during software evolution. The literature leverages change coupling analysis for several purposes. For example, researchers discovered that change coupling is associated with software defects and reveals relationships between software artifacts that cannot be found by scanning code or documentation. In this paper, we empirically investigate the strongest change couplings from the Apache Aries project to characterize and identify their impact in software development. We used historical and social metrics collected from commits and issue reports to build classification models to identify strong change couplings. Historical metrics were used because change coupling is a phenomenon associated with recurrent co-changes found in the software history. In turn, social metrics were used because developers often interact with each other in issue trackers to accomplish the tasks. Our classification models showed high accuracy, with 70−99 % F-measure and 88−99 % AUC. Using the same set of metrics, we also predicted the number of future defects for the artifacts involved in strong change couplings. More specifically, we were able to predict 45.7 % of defects where these strong change couplings reoccurred in the post-release. These findings suggest that developers and projects managers should detect and monitor strong change couplings, because they can be associated with defects and tend to happen again in the subsequent release.

An empirically-based characterization and quantification of information seeking through mailing lists during open source developers’ software evolution - Sharif, Khaironi Y; English, Michael; Ali, Nour; Exton, Chris; Collins, JJ; Buckley, Jim (Information and Software Technology, 2015)
Context Several authors have proposed information seeking as an appropriate perspective for studying software evolution. Empirical evidence in this area suggests that substantial time delays can accrue, due to the unavailability of required information, particularly when this information must travel across geographically distributed sites. Objective As a first step in addressing the time delays that can occur in information seeking for distributed Open Source (OS) programmers during software evolution, this research characterizes the information seeking of OS developers through their mailing lists. Method A longitudinal study that analyses 17 years of developer mailing list activity in total, over 6 different OS projects is performed, identifying the prevalent information types sought by developers, from a qualitative, grounded analysis of this data. Quantitative analysis of the number-of-responses and response time-lag is also performed. Results The analysis shows that Open Source developers are particularly implementation centric and team focused in their use of mailing lists, mirroring similar findings that have been reported in the literature. However novel findings include the suggestion that OS developers often require support regarding the technology they use during development, that they refer to documentation fairly frequently and that they seek implementation-oriented specifics based on system design principles that they anticipate in advance. In addition, response analysis suggests a large variability in the response rates for different types of questions, and particularly that participants have difficulty ascertaining information on other developer’s activities. Conclusion The findings provide insights for those interested in supporting the information needs of OS developer communities: They suggest that the tools and techniques developed in support of co-located developers should be largely mirrored for these communities: that they should be implementation centric, and directed at illustrating “how” the system achieves its functional goals and states. Likewise they should be directed at determining the reason for system bugs: a type of question frequently posed by OS developers but less frequently responded to.
Keywords: Information seeking software maintenance; Open source software; Qualitative empirical study

Enabling the Definition and Enforcement of Governance Rules in Open Source Systems - Izquierdo, Javier Luis Canovas; Cabot, Jordi (2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, 2015)
Governance rules in software development projects help to prioritize and manage their development tasks, and contribute to the long-term sustainability of the project by clarifying how core and external contributors should collaborate in order to advance the project during its whole lifespan. Despite their importance, specially in Open Source Software (OSS) projects, these rules are usually implicit or scattered in the project documentation/tools (e.g., tracking-systems or forums), hampering the correct understanding of the development process. We propose to enable the explicit definition and enforcement of governance rules for OSS projects. We believe this brings several important benefits, including improvements in the transparency of the process, its traceability and the semi-automation of the governance itself. Our approach has been implemented on top of Mylyn, a project-management Eclipse plug-in supporting most popular tracking-systems.

Evaluation of FLOSS by Analyzing Its Software Evolution: - Macho, Héctor J.; Gregorio Robles; González-Barahona, Jesus M (Journal of Information Technology Research, 2015)
In today’s world, management often rely on FLOSS (Free/Libre/Open Source Software) systems to run their organizations. However, the nature of FLOSS is different from the software they have been using in the last decades. Its development model is distributed, and its authors are diverse as many volunteers and companies may collaborate in the project. In this paper, we want to shed some light on how to evaluate a FLOSS system by looking at the Moodle platform, which is currently the most used learning management system among educational institutions worldwide. In contrast with other evaluation models that have been proposed so far, the one we present is based on retrieving historical information that can be obtained publicly from the Internet, allowing us to study its evolution. As a result, we will show how by using our methodology management can take informed decisions that lower the risk that organizations face when investing in a FLOSS system.
Keywords: free software; LMS; moodle; open source; software engineering; software evaluation; software evolution

Examining Usability Work and Culture in OSS - Rajanen, Mikko; Iivari, Netta (Open Source Systems: Adoption and Impact, 2015)
Organizational culture has been recognized as an influential factor affecting the successes and failures of usability work in organizations; however, there is a lack of research on organizational culture in open source software (OSS) development. This paper shows that there are different kinds of cultures in OSS development projects and builds propositions on the relationship between culture and usability work in OSS development projects. Partly those are derived from the literature, partly from an exploratory empirical inquiry. We speculate whether there is an ideal culture type for usability work in OSS development or whether usability work should be modified to fit the different cultures of OSS development projects.
Keywords: culture; empirical study; open source software; Usability

First Results About Motivation and Impact of License Changes in Open Source Projects - Viseur, Robert; Gregorio Robles (Open Source Systems: Adoption and Impact, 2015)
Free and open source software is characterized by the freedoms and criteria that are warranted by specific licenses. These licenses describe the rights and duties of the licensors and licensees. However, a licensing change may be necessary in the life of an open source project to meet legal developments or to allow the implementation of new business models. This paper examines the motivations and impacts of license changes in open source projects. After a state of the art on the subject, a set of case studies where projects changed their license is presented. Then a set of motivations to change licenses, the ways to legally make this change, the problems caused by this change and a set of benefits of the license change are discussed.
Keywords: Business model; Contributor agreement; intellectual property; license; open source

FLOSS as a source for profanity and insults: Collecting the data - Squire, Megan; Gazda, Rebecca (48th Hawaii International Conference on System Sciences, 2015)
An important task in machine learning and natural language processing is to learn to recognize different types of human speech, including humor, sarcasm, insults, and profanity. In this paper we describe our method to produce test and training data sets to assist in this task. Our test data sets are taken from the domain of free, libre, and open source software (FLOSS) development communities. We describe our process in constructing helper sets of relevant data, such as profanity lists, lists of insults, and lists of projects with their codes of conduct. Contributions of this paper are to describe the background literature on computer-aided methods of recognizing insulting or profane speech, to describe the parameters of data sets that are useful in this work, and to outline how FLOSS communities are such a rich source of insulting or profane speech data. We then describe our data sets in detail, including how we created these data sets, and provide some initial guidelines for usage.

The FLOSS History in Japan: An Ethnographic Approach - Iio, Jun; Hatta, Masayuki; Ko Kazaana (OpenSym 2015, the 11th International Symposium on Open Collaboration, 2015)
This paper reports an overview of the Internet history project which especially focuses on Free / Libre / Open-Source Software (FLOSS) history. The project adopts an ethnographical approach and it aims to compose a chronicle on the growth of FLOSS history in Japan. An outcome of the project is expected to be not only a record but a compass for younger generations. The project has already started and conducted several interviews. In this paper, an interim report of our analysis based on the interviews is presented.

Gender and Tenure Diversity in GitHub Teams - Vasilescu, Bogdan; Posnett, Daryl; Ray, Baishakhi; van den Brand, Mark G.J.; Serebrenik, Alexander; Devanbu, Premkumar; Filkov, Vladimir (Proceedings of the 2015 ACM CHI, 2015)
Software development is usually a collaborative venture. Open Source Software (OSS) projects are no exception; indeed, by design, the OSS approach can accommodate teams that are more open, geographically distributed, and dynamic than commercial teams. This, we find, leads to OSS teams that are quite diverse. Team diversity, predominantly in of- fline groups, is known to correlate with team output, mostly with positive effects. How about in OSS? Using GITHUB, the largest publicly available collection of OSS projects, we studied how gender and tenure diversity relate to team productivity and turnover. Using regression modeling of GITHUB data and the results of a survey, we show that both gender and tenure diversity are positive and significant predictors of productivity, together explaining a sizable fraction of the data variability. These results can inform decision making on all levels, leading to better outcomes in recruiting and performance.
Keywords: gender; github; team

Generating the Blueprints of the Java Ecosystem - Vassilios Karakoidas; Mitropoulos, Dimitris; Louridas, Panos; Gousios, Georgios; Diomidis Spinellis (MSR '15: Proceedings of the 2015 International Working Conference on Mining Software Repositories, 2015)

A Historical Analysis of Debian Package Incompatibilities - Claes Maelick; Mens Tom; Di Cosmo Robert; Vouillon Jerome (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
Users and developers of software distributions are often confronted with installation problems due to conflicting packages. A prototypical example of this are the Linux distributions such as Debian. Conflicts between packages have been studied under different points of view in the literature, in particular for the Debian operating system, but little is known about how these package conflicts evolve over time. This article presents an extensive analysis of the evolution of package incompatibilities, spanning a decade of the life of the Debian stable and testing distributions for its most popular architecture, i386. Using the technique of survival analysis, this empirical study sheds some light on the origin and evolution of package incompatibilities, and provides the basis for building indicators that may be used to improve the quality of package-based distributions.

How Developers Acquire FLOSS Skills - Barcomb, Ann; Grottke, Michael; Stauffert, Jan-Philipp; Dirk Riehle; Jahn, Sabrina (Open Source Systems: Adoption and Impact, 2015)
With the increasing prominence of open collaboration as found in free/libre/open source software projects and other joint production communities, potential participants need to acquire skills. How these skills are learned has received little research attention. This article presents a large-scale survey (5,309 valid responses) in which users and developers of the beta release of a popular file download application were asked which learning styles were used to acquire technical and social skills. We find that the extent to which a person acquired the relevant skills through informal methods tends to be higher if the person is a free/libre/open source code contributor, while being a professional software developer does not have this effect. Additionally, younger participants proved more likely to make use of formal methods of learning. These insights will help individuals, commercial companies, educational institutions, governments and open collaborative projects decide how they promote learning.
Keywords: competencies; Informal learning; Non-formal learning; open source; Skills; Software developer

Implicit Coordination: A Case Study of the Rails OSS Project - Blincoe, Kelly; Damian, Daniela (Open Source Systems: Adoption and Impact, 2015)
Previous studies on coordination in OSS projects have studied explicit communication. Research has theorized on the existence of coordination without direct communication or implicit coordination in OSS projects, suggesting that it contributes to their success. However, due to the intangible nature of implicit coordination, no studies have confirmed these theories. We describe how implicit coordination can now be measured in modern collaborative development environments. Through a case study of a popular OSS GitHub-hosted project, we report on how and why features that support implicit coordination are used.

An in-depth study of the promises and perils of mining GitHub - Kalliamvakou, Eirini; Gousios, Georgios; Blincoe, Kelly; Singer, Leif; Daniel M. German; Damian, Daniela (Empirical Software Engineering, 2015)
With over 10 million git repositories, GitHub is becoming one of the most important sources of software artifacts on the Internet. Researchers mine the information stored in GitHub’s event logs to understand how its users employ the site to collaborate on software, but so far there have been no studies describing the quality and properties of the available GitHub data. We document the results of an empirical study aimed at understanding the characteristics of the repositories and users in GitHub; we see how users take advantage of GitHub’s main features and how their activity is tracked on GitHub and related datasets to point out misalignment between the real and mined data. Our results indicate that while GitHub is a rich source of data on software development, mining GitHub for research purposes should take various potential perils into consideration. For example, we show that the majority of the projects are personal and inactive, and that almost 40% of all pull requests do not appear as merged even though they were. Also, approximately half of GitHub’s registered users do not have public activity, while the activity of GitHub users in repositories is not always easy to pinpoint. We use our identified perils to see if they can pose validity threats; we review selected papers from the MSR 2014 Mining Challenge and see if there are potential impacts to consider. We provide a set of recommendations for software engineering researchers on how to approach the data in GitHub.
Keywords: github

Inner Source--Adopting Open Source Development Practices within Organizations: A Tutorial - Stol, Klaas-Jan; Fitzgerald, Brian (IEEE Software, 2015)
Inner source, the adoption and tailoring of Open Source development practices inside organizations, is a topic of increasing interest. While Inner Source offers a number of benefits, in our experience many practitioners are unclear as to what Inner Source is, and what steps to take towards adoption. In this article we present a tutorial in which we outline nine key factors, pertaining to product, process and organization, which we have found to be important in working with organizations who are interested in Inner Source. This paper illustrates these nine factors with three inner source initiatives that we have studied.

An insight into license tools for open source software systems - Kapitsaki, Georgia M.; Tselikas, Nikolaos D.; Foukarakis, Ioannis E. (Journal of Systems and Software, 2015)
Free/Libre/Open Source Software (FLOSS) has gained a lot of attention lately allowing organizations to incorporate third party source code into their implementations. When open source software libraries are used, software resources may be linked directly or indirectly with multiple open source licenses giving rise to potential license incompatibilities. Adequate support in license use is vital in order to avoid such violations and address how diverse licenses should be handled. In the current work we investigate software licensing giving a critical and comparative overview of existing assistive approaches and tools. These approaches are centered on three main categories: license information identification from source code and binaries, software metadata stored in code repositories, and license modeling and associated reasoning actions. We also give a formalization of the license compatibility problem and demonstrate the role of existing approaches in license use decisions.
Keywords: flossmole cited

Integrating Open Source Software Repositories on the Web through Linked Data - Iqbal, Aftab; Decker, Stefan (2015 IEEE International Conference on Information Reuse and Integration (IRI)2015 IEEE International Conference on Information Reuse and Integration, 2015)
In this paper, we propose a novel approach to the problem of integrating code forges based on metadata (e.g., programming language, database, intended audience, operating system), similar software projects and software developers. We review the current problems in integrating metadata of different code forges and argue that Semantic Web technologies are suitable for representing and integrating knowledge contained inside these code forges. Further, we show the advantages of interlinking metadata of software projects to other relevant data sources on the Web, which will enable querying more information from the Web. Moreover, we compute the overlapping between code forges based on similar software developers and argue the benefit of interlinking similar software developers and software projects across different code forges through examples.

Investigating Code Review Practices in Defective Files: An Empirical Study of the Qt System - Patanamon Thongtanunam; McIntosh, Shane; Hassan, Ahmed E.; Hajimu Iida (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
Software code review is a well-established software quality practice. Recently, Modern Code Review (MCR) has been widely adopted in both open source and proprietary projects. To evaluate the impact that characteristics of MCR practices have on software quality, this paper comparatively studies MCR practices in defective and clean source code files. We investigate defective files along two perspectives: 1) files that will eventually have defects (i.e., future-defective files) and 2) files that have historically been defective (i.e., risky files). Through an empirical study of 11,736 reviews of changes to 24,486 files from the Qt open source project, we find that both future-defective files and risky files tend to be reviewed less rigorously than their clean counterparts. We also find that the concerns addressed during the code reviews of both defective and clean files tend to enhance evolvability, i.e., ease future maintenance (like documentation), rather than focus on functional issues (like incorrect program logic). Our findings suggest that although functionality concerns are rarely addressed during code review, the rigor of the reviewing process that is applied to a source code file throughout a development cycle shares a link with its defect proneness.
Keywords: code review; software quality

An Investigation of Migrating from Proprietary RTOS to Embedded Linux - Oscar Muchow; David Ustarbowski; Hammouda, Imed (OpenSym 2015, the 11th International Symposium on Open Collaboration, 2015)
Embedded systems and the open source operating system Linux have been going hand in hand for a long time now. Companies using Linux for their embedded products are praising it for being time and cost efficient when it comes to performance and maintainability. Another solution for embedded systems is a Real-Time Operating System (RTOS). The goal of this this paper is to investigate whether a traditional proprietary RTOS can be substituted with embedded Linux, and if this kind of migration can lead to reduced licensing costs and increased general quality of the system. We used a qualitative research method for this case-study. The investigation was conducted with interviews as the main source of information. The result of this study is an empirical model we named ’Embedded Linux Adoption Model’. We concluded that in many cases a proprietary RTOS can be substituted with embedded Linux without affecting the critical needs of the system. The study also showed that many embedded system developers are very receptive to open source solutions and could think of contributing to the community.

A Large Scale Study of License Usage on GitHub - Vendome, Christopher (2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, 2015)
The open source community relies upon licensing in order to govern the distribution, modification, and reuse of existing code. These licenses evolve to better suit the requirements of the development communities and to cope with unaddressed or new legal issues. In this paper, we report the results of a large empirical study conducted over the change history of 16,221 open source Java projects mined from GitHub. Our study investigates how licensing usage and adoption changes over a period of ten years. We consider both the distribution of license usage within projects of a rapidly growing forge and the extent that new versions of licenses are introduced in these projects.
Keywords: github; license

Lessons Learned from Applying Social Network Analysis on an Industrial Free/Libre/Open Source Software Ecosystem - Teixeira, Jose; Gregorio Robles; Jesus M. Gonzalez-Barahona (2015)
Many software projects are no longer done in-house by a single organization. Instead, we are in a new age where software is developed by a networked community of individuals and organizations, which base their relations to each other on mutual interest. Paradoxically, recent research suggests that software development can actually be jointly-developed by rival firms. For instance, it is known that the mobile-device makers Apple and Samsung kept collaborating in open source projects while running expensive patent wars in the court. Taking a case study approach, we explore how rival firms collaborate in the open source arena by employing a multi-method approach that combines qualitative analysis of archival data (QA) with mining software repositories (MSR) and Social Network Analysis (SNA). While exploring collaborative processes within the OpenStack ecosystem, our research contributes to Software Engineering research by exploring the role of groups, sub-communities and business models within a high-networked open source ecosystem. Surprising results point out that competition for the same revenue model (i.e., operating conflicting business models) does not necessary affect collaboration within the ecosystem. Moreover, while detecting the different sub-communities of the OpenStack community, we found out that the expected social tendency of developers to work with developers from same firm (i.e., homophony) did not hold within the OpenStack ecosystem. Furthermore, while addressing a novel, complex and unexplored open source case, this research also contributes to the management literature in coopetition strategy and high-tech entrepreneurship with a rich description on how heterogeneous actors within a high-networked ecosystem (involving individuals, startups, established firms and public organizations) joint-develop a complex infrastructure for big-data in the open source arena.
Keywords: business models; cloud computing; homophily; open source; Open-Coopetition; openstack; social network analysis; Software ecosystems

Matching GitHub developer profiles to job advertisements - Hauff, Claudia; Gousios, Georgios (Proceedings of the 12th International Conference on Mining Software Repositories, 2015)
GitHub is a social coding platform that enables developers to efficiently work on projects, connect with other developers, collaborate and generally “be seen” by the community. This visibility also extends to prospective employers and HR personnel who may use GitHub to learn more about a developer’s skills and interests. We propose a pipeline that automatizes this process and automatically suggests matching job advertisements to developers, based on signals extracting from their activities on GitHub.

Measuring the Crowd – A Preliminary Taxonomy of Crowdsourcing Metrics - Eoin Cullina; Kieran Conboy; Morgan, Lorraine (OpenSym 2015, the 11th International Symposium on Open Collaboration, 2015)
Crowdsourcing initiatives benefit from tapping into diversity. A vast plethora of disparate individuals, organizations, frameworks and skillsets can all play a role in sourcing solutions to a challenge. Nevertheless, while crowdsourcing has become a pervasive phenomenon, there is a paucity of research that addresses how the crowdsourcing process is measured. Whereas research has advanced various taxonomies of crowdsourcing none to date have specifically addressed the issue of measuring either specific stages of the crowdsourcing process or the process as a whole. As a first step towards achieving this goal, this research-inprogress paper examines crowdsourcing at the operational level with a view towards (i) identifying the parts of the process (ii) identifying what can be measured and (iii) categorising operational metrics to facilitate deployment in practice. The taxonomy advanced is overarching in nature and can be deployed across disciplines. Furthermore, the preliminary taxonomy presented will offer practitioners a comprehensive list of metrics that will enable them to facilitate comparison across various crowdsourcing initiatives.

A Method to Detect License Inconsistencies in Large-Scale Open Source Projects - Yuhao Wu; Manabe, Yuki; Tetsuya Kanda; Daniel M. German; Inoue, Katsuro (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
The reuse of free and open source software (FOSS) components is becoming more and more popular. They usually contain one or more software licenses describing the requirements and conditions which should be followed when been reused. Licenses are usually written in the header of source code files as program comments. Removing or modifying the license header by re-distributors will result in the inconsistency of license with its ancestor, and may potentially cause license infringement. But to the best of our knowledge, no research has been devoted to investigate such kind of license infringements nor license inconsistencies. In this paper, we describe and categorize different types of license inconsistencies and propose a feasible method to detect them. Then we apply this method to Debian 7.5 and present the license inconsistencies found in it. With a manual analysis, we summarized various reasons behind these license inconsistencies, some of which imply license infringement and require the attention from the developers. This analysis also exposes the difficulty to discover license infringements, highlighting the usefulness of finding and maintaining source code provenance.

Mining Component Repositories for Installability Issues - Abate, Pietro; Di Cosmo, Roberto; Gesbert, Louis; Fabrice Le Fessant; Ralf Treinen; Zacchiroli, Stefano (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
Component repositories play an increasingly relevant role in software life-cycle management, from software distribution to end-user, to deployment and upgrade management. Software components shipped via such repositories are equipped with rich metadata that describe their relationship (e.g., dependencies and conflicts) with other components. In this practice paper we show how to use a tool, distcheck, that uses component metadata to identify all the components in a repository that cannot be installed (e.g., due to unsatisfiable dependencies), provides detailed information to help developers understanding the cause of the problem, and fix it in the repository. We report about detailed analyses of several repositories: the Debian distribution, the OPAM package collection, and Drupal modules. In each case, distcheck is able to efficiently identify not installable components and provide valuable explanations of the issues. Our experience provides solid ground for generalizing the use of distcheck to other component repositories.
Keywords: drupal; opam

Mining Energy-Aware Commits - Irineu Moura; Pinto, Gustavo; Felipe Ebert; Fernando Castor (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
Over the last years, energy consumption has become a first-class citizen in software development practice. While energy-efficient solutions on lower-level layers of the software stack are well-established, there is convincing evidence that even better results can be achieved by encouraging practitioners to participate in the process. For instance, previous work has shown that using a newer version of a concurrent data structure can yield a 2.19x energy savings when compared to the old associative implementation [75]. Nonetheless, little is known about how much software engineers are employing energy-efficient solutions in their applications and what solutions they employ for improving energy-efficiency. In this paper we present a qualitative study of “energy-aware commits”. Using Github as our primary data source, we perform a thorough analysis on an initial sample of 2,189 commits and carefully curate a set of 371 energy-aware commits spread over 317 real-world non-trivial applications. Our study reveals that software developers heavily rely on lowlevel energy management approaches, such as frequency scaling and multiple levels of idleness. Also, our findings suggest that ill-chosen energy saving techniques can impact the correctness of an application. Yet, we found what we call “energy-aware interfaces”, which are means for clients (e.g., developers or endusers) to save energy in their applications just by using a function, abstracting away the low-level implementation details.

Mining Software Repositories for Social Norms - Dam, Hoa Khanh; Savarimuthu, Bastin Tony Roy; Daniel Avery; Aditya Ghose (2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, 2015)
Social norms facilitate coordination and cooperation among individuals, thus enable smoother functioning of social groups such as the highly distributed and diverse open source software development (OSSD) communities. In these communities, norms are mostly implicit and hidden in huge records of human-interaction information such as emails, discussions threads, bug reports, commit messages and even source code. This paper aims to introduce a new line of research on extracting social norms from the rich data available in software repositories. Initial results include a study of coding convention violations in JEdit, ArgoUML and Glassfish projects. It also presents a new lifecycle model for norms in OSSD communities and demonstrates how a number of norms extracted from the Python development community follow this life-cycle model.

Mining StackOverflow to Filter out Off-topic IRC Discussion - Shaiful Alam Chowdhury; Hindle, Abram (International Working Conference on Mining Software Repositories, 2015)
Internet Relay Chat (IRC) is a commonly used tool by OpenSource developers. Developers use IRC channels to discuss programming related problems, but much of the discussion is irrelevant and off-topic. Essentially if we treat IRC discussions like email messages, and apply spam filtering, we can try to filter out the spam (the off-topic discussions) from the ham (the programming discussions). Yet we need labelled data that unfortunately takes time to curate. To avoid costly curration in order to filter out off-topic discussions, we need positive and negative data-sources. On- line discussion forums, such as StackOverflow, are very effective for solving programming problems. By engaging in open-data, StackOverflow data becomes a powerful source of labelled text regarding programming. This work shows that we can train classifiers using StackOverflow posts as positive examples of on-topic programming discussion. YouTube video comments, notorious for their lack of quality, serve as training set of off- topic discussion. By exploiting these datasets, accurate classifiers can be built, tested and evaluated that require very little effort for end-users to deploy and exploit.
Keywords: irc; topics

Mining StackOverflow to Filter out Off-topic IRC Discussion - Shaiful Alam Chowdhury; Hindle, Abram (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
Internet Relay Chat (IRC) is a commonly used tool by OpenSource developers. Developers use IRC channels to discuss programming related problems, but much of the discussion is irrelevant and off-topic. Essentially if we treat IRC discussions like email messages, and apply spam filtering, we can try to filter out the spam (the off-topic discussions) from the ham (the programming discussions). Yet we need labelled data that unfortunately takes time to curate. To avoid costly curration in order to filter out off-topic discussions, we need positive and negative data-sources. Online discussion forums, such as StackOverflow, are very effective for solving programming problems. By engaging in open-data, StackOverflow data becomes a powerful source of labelled text regarding programming. This work shows that we can train classifiers using StackOverflow posts as positive examples of on-topic programming discussion. YouTube video comments, notorious for their lack of quality, serve as training set of offtopic discussion. By exploiting these datasets, accurate classifiers can be built, tested and evaluated that require very little effort for end-users to deploy and exploit.
Keywords: irc; Stack Overflow; youtube

A multiple case study of small free software businesses as social entrepreneurships - Barcomb, Ann (Proceedings of the 11th International Symposium on Open Collaboration (OpenSym 2015), 2015)
Free/libre and open source software are frequently described as a single community or movement. The difference between free software and open source ideology may influence founders, resulting in different types of companies being created. Specifically, the relationship between free/libre software ideology and social entrepreneurships is investigated. This paper presents seven case studies of businesses, five of which were founded by people who identify with the free/libre software movement. The result is a theory that small businesses founded by free/libre software advocates have three characteristics of social entrepreneurships. First, social benefit is prioritized over wealth creation. Second, the business’s social mission is not incidental but is furthered through its for-profit activities, rather than supported by the company’s profits. Third, the company’s success is defined in part by the success of its social mission Free/libre software entrepreneurs who recognize their activities as social entrepreneurships can benefit from the existing literature on the unique challenges faced by socially-oriented businesses.
Keywords: free software; open source software; public good; small business; social entrepreneurship; social ventures

On the Need of Integrating Social Media Channels and Open Source Software Repositories - Iqbal, Aftab; Decker, Stefan (2015 IEEE International Conference on Information Reuse and Integration (IRI)2015 IEEE International Conference on Information Reuse and Integration, 2015)
The growing interest in the usage of social media channels have attracted the open source software community to adopt an identity in order to disseminate project-related information to a wider audience. We foresee the need to integrate social media channels and open source software repositories in order to get an integrated view on the software project not only from the software development perspective but also from social perspective. Therefore, in this paper we study the usage of Twitter by software developers through harvesting their project-related activities on Twitter. In particular, we present the most frequently used hashtags by software developers and further investigate if project-related hashtags are the most frequent and commonly used hashtags by software developers. Based on our findings, we argue that relevant information from social media channels should be integrated with the open source software repositories in order to provide a homogeneous view on a software project.

Open Innovation for Innovation Tools: the Case of Co-Design Platforms - Albrecht Fritzsche; Angela Roth; Kathrin Moslein (OpenSym 2015, the 11th International Symposium on Open Collaboration, 2015)
This paper explores the dynamics of openness and enclosure of innovation activities with IT artifacts on the example of co-design platforms. While modern information and communication technologies offer many new possibilities for innovation, they also subject innovation to the underlying technical structures, which can misdirect the activities on the platform. In order to avoid this, we propose an open innovation approach for open innovation solutions. We perform an empirical study on two co-design platforms which become subjects of innovation themselves in an open laboratory in the downtown area of a European city. Visitors to the laboratory are allowed to engage in innovate activities regarding the co-design platforms in whatever way they want. The results show that they do not only address technical improvements of the platforms, but also look into new directions to make the platforms more relevant or to replace them by other ways of innovating in the given contexts.

Open Source Technology Development - Kevin Crowston (Handbook of Science and Technology Convergence, 2015)
In this chapter, we introduce the practices of free/libre open source software (FLOSS) development as an instance of the convergence of technological affordances with novel social practices to create a novel mode of work. We then consider how FLOSS software might be used for various scientific applications, perhaps leading to a convergence of current distinct disciplines. We conclude by considering how the technologies and practices of FLOSS development might be applied to other settings, thus leading to further convergence of those settings.
Keywords: Free/Libre Open Source Software

Open Source-Style Collaborative Development Practices in Commercial Projects Using GitHub - Kalliamvakou, E; Damian, Daniela; Blincoe, Kelly; Singer, L.; German, Daniel (2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, 2015)
Researchers are currently drawn to study projects hosted on GitHub due to its popularity, ease of obtaining data, and its distinctive built-in social features. GitHub has been found to create a transparent development environment, which together with a pull request-based workflow, provides a lightweight mechanism for committing, reviewing and managing code changes. These features impact how GitHub is used and the benefits it provides to teams’ development and collaboration. While most of the evidence we have is from GitHub’s use in open source software (OSS) projects, GitHub is also used in an increasing number of commercial projects. It is unknown how GitHub supports these projects given that GitHub’s workflow model does not intuitively fit the commercial development way of working. In this paper, we report findings from an online survey and interviews with GitHub users on how GitHub is used for collaboration in commercial projects. We found that many commercial projects adopted practices that are more typical of OSS projects including reduced communication, more independent work, and self-organization. We discuss how GitHub’s transparency and popular workflow can promote open collaboration, allowing organizations to increase code reuse and promote knowledge sharing across their teams.
Keywords: github

On the openness of digital platforms/ecosystems - Teixeira, Jose (OpenSym 2015, the 11th International Symposium on Open Collaboration, 2015)
A plenitude of technology is neither developed in-house nor simply outsourced in dyadic relationships. Instead, we are in a new age where technologies are developed by a networked community of actors and organizations, which base their relations dynamically to each other on a common interest. Such dynamic and networked complexity of technology development is often theoretical explored around the concept of platform, and more recently by employing the concept of ecosystem in an analogy to natural ecosystems. Following the success of open-source software, academics have long been examining openness in digital platforms/ecosystems; however most contributions take the perspective of a single stakeholder from the many that constitute a digital platform/ecosystem. Predominantly, they take the sole perspective of platform providers, those bundling hardware and software or more rarely, the perspective of third-party software developers developing valuable software ’apps’ that add value to the overall platform. In this conceptual article, we grasp openness more holistically, both by acknowledging that openness means different things to different people and involve all stakeholders within the platforms/ecosystems. Towards the development of a theory of openness within digital settings, we propose six novel aspects of openness for enabling a greater understanding of the open-source software movement with a digital platforms/ecosystems perspective. Moreover, we invite scholars to reconsider the more predominating product-dominant logic in open-source software research to a more holistic logic embracing platforms and ecosystem thinking.

OSSEAN: Mining Crowd Wisdom in Open Source Communities - Yin, Gang; Wang, Tao; Wang, Huaimin; Fan, Qiang; Zhang, Yang; Yu, Yue; Yang, Cheng (2015 IEEE Symposium on Service-Oriented System Engineering (SOSE), 2015)
Nowadays open source software represents a successful crowd-based software production model and is becoming an ecosystem combining huge amounts of software producers (such as software developers) and consumers (such as software users and customers). Lots of research work has been conducted on analyzing software artifacts created by producers, but few of them reveal the power of feedback from consumers which we believe is very important for the evaluation and evolution of open source software. This paper introduces OSSEAN, a platform for Open Source Software Evaluating, Analyzing and Networking. OSSEAN divides the open source communities into two groups: software production communities and software consumption communities. The former contain structured software artifacts such as projects, source code and issues, while the latter are full of textual documents with rich semantics of user feedback. We show the power of OSSEAN with some interesting demos by analyzing more than 200 thousands of open source projects and 10 million documents.
Keywords: flossmole

A Qualitative Study on the Adoption of Open Source Software in Information Technology Outsourcing Organizations - Ramanathan, Lakshmanan; Iyer, Sundaresan Krishnan (Open Source Systems: Adoption and Impact, 2015)
The purpose of this paper is to identify the influence of Outsourcing on Open source software (OSS) and further investigate the factors that impact the adoption of OSS in global Information Technology (IT) outsourcing organizations serviced by Indian IT services providers. This exploratory research adopted positivism research philosophy and qualitative approach. An in-depth interview was conducted with ten participants across IT outsourcing organizations, IT service providers, and OSS service providers. The results show that IT outsourcing was not found to have an impact on OSS adoption. However, eight factors including management support and OSS support availability was identified to influence OSS adoption. IT services providers can utilize this research model to increase their understanding of why some IT outsourcing organizations choose to adopt OSS, while seemingly similar ones facing similar market conditions do not.
Keywords: Diffusion of innovation; Indian IT; IT outsourcing; open source software; OSS adoption; TOE

A Repository with 44 Years of Unix Evolution - Diomidis Spinellis (MSR '15: Proceedings of the 12th Working Conference on Mining Software Repositories, 2015)
The evolution of the Unix operating system is made available as a version-control repository, covering the period from its inception in 1972 as a five thousand line kernel, to 2015 as a widely-used 26 million line system. The repository contains 659 thousand commits and 2306 merges. The repository employs the commonly used Git system for its storage, and is hosted on the popular GitHub archive. It has been created by synthesizing with custom software 24 snapshots of systems developed at Bell Labs, Berkeley University, and the 386BSD team, two legacy repositories, and the modern repository of the open source FreeBSD system. In total, 850 individual contributors are identified, the early ones through primary research. The data set can be used for empirical research in software engineering, information systems, and software archaeology.

The Right to a Contribution: An Exploratory Survey on How Organizations Address It - Poo-Caamaño, Germán; German, DanielM. (Open Source Systems: Adoption and Impact, 2015)
Free and Open Source Software (FOSS) projects are characterized by the opportunity to attract external contributors, where contributions can be in any form of copyrightable material, such as code or documentation. In most of them it is understood that contributions would be licensed in similar or compatible terms than the project’s license. Some projects require a copyright transfer from the contributor to an organization for the work contributed to a project, such documents are known as copyright assignment agreements. In a way, it is similar to the copyright transfer than some researchers grant to a publisher. In this work we present an exploratory survey of the multiple visions of copyright assignments, and aggregate them in a work that researchers and practitioners could use to get informed of the alternatives available in the literature. We expect that our findings help inform practitioners on legal concerns when receiving external contributions.

The RISCOSS Platform for Risk Management in Open Source Software Adoption - Franch, X.; Kenett, R.; Mancinelli, F.; Susi, A.; Ameller, D.; Annosi, M.C.; Ben-Jacob, R.; Blumenfeld, Y.; Franco, O.H.; Gross, D.; Lopez, L.; Morandini, M.; et al. (Open Source Systems: Adoption and Impact, 2015)
Managing risks related to OSS adoption is a must for organizations that need to smoothly integrate OSS-related practices in their development processes. Adequate tool support may pave the road to effective risk management and ensure the sustainability of such activity. In this paper, we present the RISCOSS platform for managing risks in OSS adoption. RISCOSS builds upon a highly configurable data model that allows customization to several types of scopes. It implements two different working modes: exploration, where the impact of decisions may be assessed before making them; and continuous assessment, where risk variables (and their possible consequences on business goals) are continuously monitored and reported to decision-makers. The blackboard-oriented architecture of the platform defines several interfaces for the identified techniques, allowing new techniques to be plugged in.
Keywords: Open source adoption; Open Source Projects; open source software; OSS; Risk Management; Software platform

On the role of FOSS business models and participation architectures in supporting open innovation - Michelle W. Purcell (OpenSym 2015, the 11th International Symposium on Open Collaboration, 2015)
Most research regarding innovation in free and open source software (FOSS) pertains to identifying supporting conditions for promoting code contribution. This raises concerns about the ability of FOSS communities to remain innovative based only on the perspectives of developer-users. Preliminary research suggests different open source business models may provide motivation to support greater involvement of non-developer users. This research focuses on understanding the relationship between business model and supporting participation architectures, beyond users’ code contributions, to enable user participation in design of the software.

Scaling and Internationalizing an Agile FOSS Project: Lessons Learned - Fellhofer, Stephan; Harzl, Annemarie; Slany, Wolfgang (Open Source Systems: Adoption and Impact, 2015)
This paper describes problems that arose with the scaling and internationalization of the open source project Catrobat. The problems we faced were the lack of a centralized user management, insufficient scaling of our communication channels, and the necessity to adapt agile development techniques to remote collaboration. To solve the problems we decided to use a mix of open source tools (Git, IRC, LDAP) and commercial solutions (Jira, Confluence, GitHub) because we believe that this mix best fits our needs. Other projects can benefit from the lessons we learned during the reorganization of our knowledge base and communication tools, as infrastructure changes can be very labor-intensive and time-consuming.
Keywords: Agile development; communication; Distributed software development; Documentation management; Internationalization; kanban; Scaling

"Should we move to Stack Overflow?" Measuring the utility of social media for developer support - Squire, Megan (37th International Conference on Software Engineering, 2015)
Stack Overflow is an enormously popular question-and-answer web site intended for software developers to help each other with programming issues. Some software projects aimed at developers (for example, application programming interfaces, application engines, cloud services, development frameworks, and the like) are closing their self-supported developer discussion forums and mailing lists and instead directing developers to use special-purpose tags on Stack Overflow. The goals of this paper are to document the main reasons given for moving developer support to Stack Overflow, and then to collect and analyze data from a group of software projects that have done this, in order to show whether the expected quality of support was actually achieved. The analysis shows that for all four software projects in this study, two of the desired quality indicators, developer participation and response time, did show improvements on Stack Overflow as compared to mailing lists and forums. However, we also found several projects that moved back from Stack Overflow, despite achieving these desired improvements. The results of this study are applicable to a wide variety of software projects that provide developer support using social media.
Keywords: developer support; forums; mailing list; metrics; quality; social media; Stack Overflow; technical support

Smart Route Planning Using Open Data and Participatory Sensing - Nallur, Vivek; Elgammal, Amal; Clarke, Siobhán (Open Source Systems: Adoption and Impact, 2015)
Smart cities are not merely the infusion of technology into a city’s infrastructure, but also require citizens interacting with their urban environment in a smart and informed manner. Transportation is key aspect of smart cities. In this paper, we present a smart route planning open-source system; SMART-GH utilizes open data and participatory sensing, where citizens actively participate in collecting data about the city in their daily environment, e.g., noise, air pollution, etc. SMART-GH then augments the routing logic with sensor data to answer queries such as ‘return the least noisy route’. SMART-GH enables citizens to make smarter decisions about their daily commute, and subsequently improve their quality of life.
Keywords: Open-data; open-source; Participatory sensing; Smart-city-routing

Software Patents: A Replication Study - Poo-Caamaño, Germán; Daniel M. German (OpenSym 2015, the 11th International Symposium on Open Collaboration, 2015)
Previous research has documented the legal and economic aspects of software patents. To study the evolution in the granting of software patents we reproduced and extended part of the empirical study on software patents conducted by Bessen and Hunt. The original study established a criteria to identify software patents, and provided a look at the evolution of patents granted until 2002. We present a simple approach to retrieve patents from the full text database provided by the United States Patent and Trademark Of- fice (USPTO), which is freely accessible. We also present the evolution of software patents since the original study, and which we also present separated by major technological firms. Our research shows a continuous increase in the number of software patents granted higher, both in number of patents granted (in absolute numbers) and in proportion of overall patents (in relative terms). The relevance of studying the evolution of software patents relies in the challenges to find prior-art, either for practitioners looking for patenting as well as for examiners evaluating granting a new patent.

Stigmergic coordination in FLOSS development teams: Integrating explicit and implicit mechanisms - Bolici, Francesco; Howison, James; Kevin Crowston (Cognitive Systems Research, 2015)
The vast majority of literature on coordination in team-based projects has drawn on a conceptual separation between explicit (e.g. plans, feedbacks) and implicit coordination mechanisms (e.g. mental maps, shared knowledge). This analytical distinction presents some limitations in explaining how coordination is reached in organizations characterized by distributed teams, scarce face to face meetings and fuzzy and changing lines of authority, as in free/libre open source software (FLOSS) development. Analyzing empirical illustrations from two FLOSS projects, we highlight the existence of a peculiar model, stigmergic coordination, which includes aspects of both implicit and explicit mechanisms. The work product itself (implicit) and the characteristics under which it is shared (explicit) play an under-appreciated role in helping software developers manage dependencies as they arise. We develop this argument beyond the existing literature by working with an existing coordination framework, considering the role that the codebase itself might play at each step. We also discuss the features and the practices to support stigmergic coordination in distributed teams, as well as recommendations for future research. “Not everything that implicitly exists needs to be rendered explicit” (Sloterdijk, 2009, p. 3).
Keywords: Coordination mechanisms; distributed teams; FLOSS teams; Stigmergic coordination

A Study of Demand-Driven Documentation in Two Open Source Projects - Andersson, Jessica; Larsson, Sofia; Ericsson, Morgan; Wingkvist, Anna (Hawaii International Conference on System Sciences 48, 2015)
We investigate how demand-driven documentation is used by open source projects. Our study relies on questions and answers (i.e., demand-driven documentation) posted to Stack Overflow and focuses on two projects: Apache POI and Fennec (Firefox for Android). We find that the demand-driven documentation provided by respective community is of good quality and contributions are made within an acceptable amount of time. We conclude that demand-driven documentation can be suitable as a primary information source if other resources accompany it, e.g., websites. However, the suitability is closely related to size and activity of the project’s community. We also investigate whether the type of project (e.g., API, application, product, etc.) matters, and find that given the nature of a forum, projects where the intended users are developers have larger and more active communities and are thus better suited for demand-driven documentation.

Surveying the Adoption of FLOSS by Public Administration Local Organizations - Tosi, Davide; Lavazza, Luigi; Morasca, Sandro; Chiappa, Marco (Open Source Systems: Adoption and Impact, 2015)
Background. The introduction of Open Source Software technologies in the Public Administration plays a key role in the spread of Open Source Software. The state of the art in the adoption of Open Source Software solutions in the Public Administration is not very well known even in areas like Lombardy, which is Italy’s largest and most developed region. Goal. The goal of the investigation documented in this paper is to obtain a clear picture about the introduction of Open Source Software technologies in the Public Administration, the obstacles to their adoption, and the willingness of stakeholders to proceed with their introduction. Method. We carried out a qualitative and quantitative survey that was submitted to a representative part of the Public Administrations in Lombardy. Results. The analysis of the qualitative and quantitative information shows that several Public Administrations are already using Open Source Software technologies, though not in all application areas. The savings are one frequently cited incentive to the adoption of Open Source Software. However, one obstacle is the fact that a comprehensive law on software in the Public Administration has not yet been approved. Conclusions. Our analysis provides results that indicate a common understanding of incentives, obstacles, and opportunities for Open Source Software technologies in Public Administrations.
Keywords: FLOSS adoption; Italy; Public administrations; Survey

A Systematic Approach for Evaluating BPM Systems: Case Studies on Open Source and Proprietary Tools - Delgado, Andrea; Calegari, Daniel; Milanese, Pablo; Falcon, Renatta; García, Esteban (Open Source Systems: Adoption and Impact, 2015)
Business Process Management Systems (BPMS) provide support for modeling, developing, deploying, executing and evaluating business processes in an organization. Selecting a BPMS is not a trivial task, not only due to the many existing alternatives, both in the open source and proprietary realms, but also because it requires a thorough evaluation of its capabilities, contextualizing them in the organizational environment in which they will be used. In this paper we present a methodology to guide the systematic evaluation of BPMS that takes into account the specific needs of each organization. It provides a list of key characteristics of BPMS which are ranked by the organization and evaluated using test cases and quantitative criteria. We also present case studies of open source and proprietary BPMS evaluations following our proposal.
Keywords: Business Process Management Systems (BPMS); Evaluation methodology; Open source and proprietary BPMS; Systematic approach

Toward Reusing Code Changes - Higo, Yoshiki; Akio Ohtani; Shinpei Hayashi; Hata, Hideaki; Kusumoto Shinji (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
Existing techniques have succeeded to help developers implement new code. However, they are insufficient to help to change existing code. Previous studies have proposed techniques to support bug fixes but other kinds of code changes such as function enhancements and refactorings are not supported by them. In this paper, we propose a novel system that helps developers change existing code. Unlike existing techniques, our system can support any kinds of code changes if similar code changes occurred in the past. Our research is still on very early stage and we have not have any implementation or any prototype yet. This paper introduces our research purpose, an outline of our system, and how our system is different from existing techniques.
Keywords: apache

Toward understanding new feature request systems as participation architectures for supporting open innovation - Michelle W. Purcell (OpenSym 2015, the 11th International Symposium on Open Collaboration, 2015)
Most research regarding innovation in open source software communities pertains to identifying supporting conditions for promoting code contribution as a way to innovate the software. Instead, this paper seeks to identify social and technological affordances of new feature request systems and their potential to support open innovation through integration of peripheral community members’ ideas for advancing the software. Initial findings from the first of a planned study of multiple open source software communities are presented to identify attributes of effective participation architectures.

Understanding and Supporting the Choice of an Appropriate Task to Start With In Open Source Software Communities - Steinmacher, Igor; Conte, Tayana; Gerosa, MarcoAurélio (Hawaii International Conference on System Sciences 48, 2015)
Open Source Software (OSS) projects leverage the contribution of outsiders. In fact, the sustainability of many projects relies on retaining some of these newcomers. Usually these communities do not coordinate the work of the newcomers, who go to the issue trackers and self-select a task to start with. We found that “finding a way to start” was reported as an important issue by practitioners. To further investigate this specific barrier, we conducted a qualitative analysis with data obtained from semi-structured interviews with 36 subjects from 14 different projects, including newcomers and experienced members. We used procedures of Grounded Theory – open and axial coding – to analyze the data. We found that newcomers are not confident enough to choose their initial task and they need information about the tasks or direction from the community to support choosing a task more suitable for them. We also present a set of strategies identified in the literature, interviews, and state-of-the practice that can provide newcomers with such information, enabling them to be more confident when choosing their first tasks and collaborate with the community.
Keywords: coordination; joining process; new developer; newcomers; onboarding; open source software; task selection

The Uniqueness of Changes: Characteristics and Applications - Ray, Baishakhi; Meiyappan Nagappan; Christian Bird; Nachiappan Nagappan; Zimmermann, Thomas (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
Changes in software development come in many forms. Some changes are frequent, idiomatic, or repetitive (e.g. adding checks for nulls or logging important values) while others are unique. We hypothesize that unique changes are different from the more common similar (or non-unique) changes in important ways; they may require more expertise or represent code that is more complex or prone to mistakes. As such, these changes are worthy of study. In this paper, we present a definition of unique changes and provide a method for identifying them in software project history. Based on the results of applying our technique on the Linux kernel and two large projects at Microsoft, we present an empirical study of unique changes. We explore how prevalent unique changes are and characterize where they occur along the architecture of the project. We further investigate developers' contribution towards uniqueness of changes. We also describe potential applications of leveraging the uniqueness of change and implement two such applications, evaluating the risk of changes based on uniqueness and providing change recommendations for non-unique changes.
Keywords: linux kernel

Unveiling Exception Handling Bug Hazards in Android based on GitHub and Google Code Issues - Roberta Coelho; Lucas Almeida; Gousios, Georgios; van Deursen, Arie (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
This paper reports on a study mining the exception stack traces included in 159,048 issues reported on Android projects hosted in GitHub (482 projects) and Google Code (157 projects). The goal of this study is to investigate whether stack trace information can reveal bug hazards related to exception handling code that may lead to a decrease in application robustness. Overall 6,005 exception stack traces were extracted, and subjected to source code and bytecode analysis. The outcomes of this study include the identification of the following bug hazards: (i) unexpected cross-type exception wrappings (for instance, trying to handle an instance of OutOfMemoryError “hidden” in a checked exception) which can make the exceptionrelated code more complex and negatively impact the application robustness; (ii) undocumented runtime exceptions thrown by both the Android platform and third party libraries; and (iii) undocumented checked exceptions thrown by the Android Platform. Such undocumented exceptions make difficult, and most of the times infeasible for the client code to protect against “unforeseen” situations that may happen while calling third-party code. This study provides further insights on such bug hazards and the robustness threats they impose to Android apps as well as to other systems based on the Java exception model.
Keywords: github; google code

Using Developer-Interaction Trails to Triage Change Requests - Motahareh Bahrami Zanjani; Kagdi, Huzefa; Christian Bird (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
The paper presents an approach, namely iHDev, to recommend developers who are most likely to implement incoming change requests. The basic premise of iHDev is that the developers who interacted with the source code relevant to a given change request are most likely to best assist with its resolution. A machine-learning technique is first used to locate source-code entities relevant to the textual description of a given change request. iHDev then mines interaction trails (i.e., Mylyn sessions) associated with these source-code entities to recommend a ranked list of developers. iHDev integrates the interaction trails in a unique way to perform its task, which was not investigated previously. An empirical study on open source systems Mylyn and Eclipse Project was conducted to assess the effectiveness of iHDev. A number of change requests were used in the evaluated benchmark. Recall for top one to five recommended developers and Mean Reciprocal Rank (MRR) values are reported. Furthermore, a comparative study with two previous approaches that use commit histories and/or the source-code authorship information for developer recommendation was performed. Results show that iHDev could provide a recall gain of up to 127.27% with equivalent or improved MRR values by up to 112.5%.

Utilization and Development Contribution of Open Source Software in Japanese IT Companies: An Exploratory Study of the Effect on Business Growth (2nd report based on 2014 survey) - Tansho, Terutaka; Noda, Tetsuo (OpenSym 2015, the 11th International Symposium on Open Collaboration, 2015)
The usage of Open Source Software (OSS) has been extended in a wide range of business fields not only IT industries. Behind this current situation, there are tremendous inputs by the volunteer engineers in the development communities. In this series of studies, we have conducted questionnaire survey to Japanese IT companies in 2012 and 2013, and then analyzed the relation between OSS utilization and development contribution, and how these affect the business growth. Our study revealed that Japanese IT companies are rather free riders of OSS, the volume of development contributions are far less than that of utilization. From our previous studies, it was anticipated that some OSSrelated factors were affecting the business growth; however, clear evidence has not been found. In autumn 2014, we conducted the questionnaire survey for the third time and this paper presents the survey results as the second report of the continued research. We constructed the simplified Logistic Model to investigate the influential factors on business growth. However, no clear evidence was found as the same as the previous study. In summary, we conclude that there are some form of relationships between OSS utilization and development contribution, but these are not the determinant factors on the business growth in the Japanese IT companies at present.

On the Variability of the BSD and MIT Licenses - Maryka, Trevor; German, DanielM.; Poo-Caamaño, Germán (Open Source Systems: Adoption and Impact, 2015)
The MIT/X11 and the BSD are two of the most important family of Free and Open Source (FOSS) licenses. Because these licenses are to be inserted into the files that use it, and because they are expected to be changed by those who use them, their text has suffered alterations over time. Some of this variability is the result of licenses containing template fields which allow the license to be customized to include information such as the copyright holder name. Other variability can be attributed to changes in spelling, punctuation, and adding or removing conditions. This study empirically evaluated the extent that the BSD and MIT/X11 family of licenses are varied, and the manner and frequency in which license texts vary from the original definition. The study found that the BSD family has little variability, with a significant proportion fitting the common standard. The MIT/X11 family of licenses exhibited significantly more variation, with a higher propensity to customize the license text. In addition, the MIT/X11 license has spawned several specialized variants which likely constitute different legal meanings. Based on these findings, recommendations are proposed on what variability needs to be accommodated by the Software Package Data Exchange (SPDX) which is in the process of standardizing the allowed variability of both licenses.

Volunteer Management in Open Source Communities - Barcomb, Ann (OpenSym 2015, the 11th International Symposium on Open Collaboration, 2015)
Open source community management is largely ad-hoc and relies on practitioner guides. Yet there is a great deal of information about volunteer management in the general volunteering literature, open source literature and general volunteering guides which could be relevant to open source communities if it were categorized and validated. Bringing these different sources of information together also reveals gaps in our understanding of volunteer management in open source which I hope to address.

Wait For It: Determinants of Pull Request Evaluation Latency on GitHub - Yu, Yue; Wang, Huaimin; Filkov, Vladimir; Devanbu, Premkumar; Vasilescu, Bogdan (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
The pull-based development model, enabled by git and popularised by collaborative coding platforms like BitBucket, Gitorius, and GitHub, is widely used in distributed software teams. While this model lowers the barrier to entry for potential contributors (since anyone can submit pull requests to any repository), it also increases the burden on integrators (i.e., members of a project’s core team, responsible for evaluating the proposed changes and integrating them into the main development line), who struggle to keep up with the volume of incoming pull requests. In this paper we report on a quantitative study that tries to resolve which factors affect pull request evaluation latency in GitHub. Using regression modeling on data extracted from a sample of GitHub projects using the Travis-CI continuous integration service, we find that latency is a complex issue, requiring many independent variables to explain adequately.

What is the Gist? Understanding the Use of Public Gists on GitHub - Weiliang Wang; Poo-Caamaño, Germán; Evan Wilde; German, Daniel (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
Keywords: gist; github

Why and How Should Open Source Projects Adopt Time-Based Releases? - Martin Michlmayr; Fitzgerald, Brian (IEEE Software, 32(2), 2015)
Traditional release strategies have a number of associated problems, which can be overcome by time-based release management. We present findings from interviews with key members of seven prominent volunteer-based open source projects, all of which have adopted a time-based release strategy. We discuss the importance of release planning, the numerous challenges that can result from a lack of such planning, and the benefits of time-based releases. Finally, we discuss how an open source project can adopt a time-based release strategy.

Why Power Laws? An Explanation from Fine-Grained Code Changes - Zhongpeng Lin; Jim Whitehead (2015)
Throughout the years, empirical studies have found power law distributions in various measures across many software systems. However, surprisingly little is known about how they are produced. What causes these power law distributions? We offer an explanation from the perspective of fine-grained code changes. A model based on preferential attachment and selforganized criticality is proposed to simulate software evolution. The experiment shows that the simulation is able to render power law distributions out of fine-grained code changes, suggesting preferential attachment and self-organized criticality are the underlying mechanism causing the power law distributions in software systems.
Keywords: Apache Maven; cvsanaly; eclipse; git; Google Guice; java; jedit; open source

Will they like this? Evaluating Code Contributions With Language Models - Vincent J. Hellendoorn; Premkumar T. Devanbu; Bacchelli, Alberto (12th Working Conference on Mining Software Repositories (MSR 2015), 2015)
Popular open-source software projects receive and review contributions from a diverse array of developers, many of whom have little to no prior involvement with the project. A recent survey reported that reviewers consider conformance to the project’s code style to be one of the top priorities when evaluating code contributions on Github. We propose to quantitatively evaluate the existence and effects of this phenomenon. To this aim we use language models, which were shown to accurately capture stylistic aspects of code. We find that rejected changesets do contain code significantly less similar to the project than accepted ones; furthermore, the less similar changesets are more likely to be subject to thorough review. Armed with these results we further investigate whether new contributors learn to conform to the project style and find that experience is positively correlated with conformance to the project’s code style.

Adapting SCRUM to the Italian Army: Methods and (Open) Tools - Cotugno, FrancoRaffaele; Messina, Angelo (Open Source Software: Mobile Open Source Technologies, 2014)
Many software-related technologies, including software development methodologies, quality models, etc. have been developed due to the huge software needs of the Department of Defense (DoD) of the United States. Therefore, it is not surprising that the DoD is promoting open source software and agile approaches into the development processes of the defense contractors. The quality of many open source product has been demonstrated to be comparable to the close source ones and in many cases even higher and the effectiveness of agile approaches has been demonstrated in many industrial settings. Moreover, the availability of the source code makes open source products attractive for obvious reasons (e.g., security, long term maintenance, etc.). Following this trend, also the Italian Army has started using open source software and promotes its usage into the development processes of its contractors, also promoting agile approaches in many contexts focusing on the SCRUM methodology. This paper provides an overview of the SCRUM development process adopted by the Italian Army for the development of software systems using open source technologies.

The Agile Management of Development Projects of Software Combining Scrum, Kanban and Expert Consultation - Febles Parker, MichelEvaristo; Monte, YusleydiFernández (Open Source Software: Mobile Open Source Technologies, 2014)
At the University of Informatics Sciences (UCI), Havana, Cuba, it is found The Center of Free Solutions of Software (CESOL) who has an informatic project named “Auditing of Source Code” (ACF). This project has as objective to develop an open source software solution to auditing the source code of several software solutions with an agile projects management. In the present investigation have been showed the experiences obtained in the mixed application of two methods of agile projects management; Kanban and Scrum, together with the method Judgment of Expert, during the stage of construction of the lifecycle of ACF, when it is was performed a quality auditing by specialists of the CALISOFT company. In the auditing were detected several errors and to resolve them was necessary to estimate efforts, time and to revalue the lifecycle of the project. Moreover, the investigation show how this method can be used as a guide for young project managers for a correct planification and how can be used as a personal organizational method.
Keywords: Agile management of projects; kanban; scrum

Analysing the 'Biodiversity' of Open Source Ecosystems: The GitHub Case - Matragkas, Nicholas; Williams, James R.; Kolovos, Dimitris S.; Paige, Richard F. (Proceedings of the 11th Working Conference on Mining Software Repositories, 2014)
In nature the diversity of species and genes in ecological communities affects the functioning of these communities. Biologists have found out that more diverse communities appear to be more productive than less diverse communities. Moreover such communities appear to be more stable in the face of perturbations. In this paper, we draw the analogy between ecological communities and Open Source Software (OSS) ecosystems, and we investigate the diversity and structure of OSS communities. To address this question we use the MSR 2014 challenge dataset, which includes data from the top-10 software projects for the top programming languages on GitHub. Our findings show that OSS communities on GitHub consist of 3 types of users (core developers, active users, passive users). Moreover, we show that the percentage of core developers and active users does not change as the project grows and that the majority of members of large projects are passive users.
Keywords: Data and knowledge visualization; data mining; mining challenge; msr challenge

Analyzing the Relationship between the License of Packages and Their Files in Free and Open Source Software - Manabe, Yuki; German, DanielM.; Inoue, Katsuro (Open Source Software: Mobile Open Source Technologies, 2014)
Free and Open Source Software (FOSS) is widely reused today. To reuse FOSS one must accept the conditions imposed by the software license under which the component is made available. This is complicated by the fact that often FOSS packages contain files from many licenses. In this paper we analyze the source code of packages in the Fedora Core Linux distribution with the goal of discovering the relationship between the license of a source package, and the license of the files it contains. For this purpose we create license inclusion graphs. Our results show that more modern reciprocal licenses such as the General Public License v3 tend to include files of less licenses than its previous versions, and that packages under an Apache License tend to contain only files under the same license.

Applying the Submission Multiple Tier (SMT) Matrix to Detect Impact on Developer Interest on Open Source Project Survivability - Chua, BeeBee (Open Source Software: Mobile Open Source Technologies, 2014)
There is a significant relationship between project activity and developer interest on Open Source (OS) projects. Total project activity submission count number can be an indicator for gauging developer interest. The higher the project activity submission of a project is, the larger developer interest in a project. My paper proposed that applying a Submission Multiple Tier (SMT) matrix can detect the impact of developer interest on project activity. Results showed more volume of OS projects with low project activity than high. Activity submission results also showed that developers are more likely to review than correct projects, with the first priority to find and fix bugs. Further research is needed to determine the impact of project activity type on developer motivation to contribute, participate and support OS projects.

Automation of Agricultural Irrigation System with Open Source - Quezada, BladimirJaimePérez; Fernández, Javier (Open Source Software: Mobile Open Source Technologies, 2014)
In this present job, we seek to develop a prototype of an automated agricultural irrigation system, monitored and controlled remotely. For that, we will use inexpensive tools, flexibility and support such as Arduino, XBee and Android. Arduino and XBee, will be responsible of the automating the system. Android will achieve the remote monitoring and control from anywhere in the world where there is cellular service and Internet. In this way we can give the farmer the comfort and security that he don’t get with a manually controlled system.
Keywords: ADK; android; Arduino; XBee

Barriers Faced by Newcomers to Open Source Projects: A Systematic Review - Steinmacher, Igor; Silva, MarcoAurélioGraciotto; Gerosa, MarcoAurélio (Open Source Software: Mobile Open Source Technologies, 2014)
To remain sustainable, some open source projects need a constant influx of new volunteers, or newcomers. However, the newcomers face different kinds of problems when onboarding to a project. In this paper we present the results of a systematic literature review aiming at identifying the barriers that a newcomer can face when contributing to an Open Source Software project. We identified and analyzed 21 studies that evidence this kind of problem. As a result we provide a hierarchical model that relies on five categories of barriers: finding a way to start, social interactions, code issues, documentation problems and newcomers’ knowledge. The most evidenced barriers are newcomers’ previous technical skills, receiving response from community, centrality of social contacts, and finding the appropriate way to start contributing. This classification provides a baseline for further researches related to newcomers onboarding.

"A bit of code": How the Stack Overflow Community Creates Quality Postings - Squire, Megan; Funkhouser, Christian (47th International Hawai'i Conference on System Sciences (HICSS-47), 2014)
The Stack Overflow web site is an online community where programmers can ask and answer one another's questions, earning points and badges. The site offers guidance in the form of a Frequently Asked Questions (FAQ), beginning with "What kind of questions can I ask here?" The answer explains that "the best Stack Overflow questions have a bit of source code in them". This paper explores the role of source code and non-source code text on Stack Overflow in both questions and answers. The primary contribution of this paper is to provide a more detailed understanding of whether the presence of source code (and how much) actually will produce the "best" Stack Overflow questions or answers. A second contribution of this paper is to determine how the non-code portions of the text might also contribute the "best" Stack Overflow postings.
Keywords: COLLABORATION; collaborative development; data mining; developer network; knowledge collaboration; open content; text mining

Book Locator: Books Manager - García Rivas, Dairelys (Open Source Software: Mobile Open Source Technologies, 2014)
After performing a study of digital books organizing tools, it’s observed that these don’t count on a multi platform integration, and those who do, don’t count on the elements pursued in the investigation. It is decided then to proceed to the implementation of a book organizer software, taking an initial requirements list from the studied tools, following the guidelines of the collaborative and open source development. It has been developed to its version 4.1, which after going through different development processes, detecting mistakes and adding new functionalities that join to the requirements list, it’s fully functional.

The Bug Catalog of the Maven Ecosystem - Mitropoulos, Dimitris; Vassilios Karakoidas; Louridas, Panos; Gousios, Georgios; Diomidis Spinellis (Proceedings of the 11th Working Conference on Mining Software Repositories, 2014)
Examining software ecosystems can provide the research community with data regarding artifacts, processes, and communities. We present a dataset obtained from the Maven central repository ecosystem (approximately 265GB of data) by statically analyzing the repository to detect potential software bugs. For our analysis we used FindBugs, a tool that examines Java bytecode to detect numerous types of bugs. The dataset contains the metrics results that FindBugs reports for every project version (a JAR) included in the ecosystem. For every version we also stored specific metadata such as the JAR's size, its dependencies and others. Our dataset can be used to produce interesting research results, as we show in specific examples.
Keywords: findbugs; Maven Repository; msr data showcase; Software Bugs

The Census of the Brazilian Open-Source Community - Pinto, Gustavo; Kamei, Fernando (Open Source Software: Mobile Open Source Technologies, 2014)
During a long time, software engineering research has been trying to better understand open-source communities and uncover two fundamental questions: (i) who are the contributors and (i) why they contribute. Most of these researches focus on well-known OSS projects, but little is known about the OSS movement in emerging countries. In this paper, we attempt to fill this gap by presenting a picture of the Brazilian open-source contributor. To achieve this goal, we examined activities from more than 12,400 programmers on Github, during the period of a year. Subsequently, we correlate our findings with a survey that was answered by more than 1,000 active contributors. Our results show that exists an OSS trend in Brazil: most part of the contributors are active, performing around 30 contributions per year, and they contribute to OSS basically by altruism.
Keywords: Brazilian OSS Community; github; OSS

Characterizing and Predicting Blocking Bugs in Open Source Projects - Valdivia Garcia, Harold; Shihab, Emad (Proceedings of the 11th Working Conference on Mining Software Repositories, 2014)
As software becomes increasingly important, its quality becomes an increasingly important issue. Therefore, prior work focused on software quality and proposed many prediction models to identify the location of software bugs, to estimate their fixing-time, etc. However, one special type of severe bugs is blocking bugs. Blocking bugs are software bugs that prevent other bugs from being fixed. These blocking bugs may increase maintenance costs, reduce overall quality and delay the release of the software systems. In this paper, we study blocking-bugs in six open source projects and propose a model to predict them. Our goal is to help developers identify these blocking bugs early on. We collect the bug reports from the bug tracking systems of the projects, then we obtain 14 different factors related to, for example, the textual description of the bug, the location the bug is found in and the people involved with the bug. Based on these factors we build decision trees for each project to predict whether a bug will be a blocking bug or not. Then, we analyze these decision trees in order to determine which factors best indicate these blocking bugs. Our results show that our prediction models achieve F-measures of 15-42%, which is a two- to four-fold improvement over the baseline random predictors. We also find that the most important factors in determining blocking bugs are the comment text, comment size, the number of developers in the CC list of the bug report and the reporter's experience. Our analysis shows that our models reduce the median time to identify a blocking bug by 3-18 days.
Keywords: Code Metrics; Post-release Defects; Process Metrics

A Code Clone Oracle - Krutz, Daniel E.; Le, Wei (Proceedings of the 11th Working Conference on Mining Software Repositories, 2014)
Code clones are functionally equivalent code segments. Detecting code clones is important for determining bugs, fixes and software reuse. Code clone detection is also essential for developing fast and precise code search algorithms. How- ever, the challenge of such research is to evaluate that the clones detected are indeed functionally equivalent, consider- ing the majority of clones are not textual or even syntactically identical. The goal of this work is to generate a set of method level code clones with a high confidence to help to evaluate future code clone detection and code search tools to evaluate their techniques. We selected three open source programs, Apache, Python and PostgreSQL, and randomly sampled a total of 1536 function pairs. To confirm whether or not these function pairs indicate a clone and what types of clones they belong to, we recruited three experts who have experience in code clone research and four students who have experience in programming for manual inspection. For confidence of the data, the experts consulted multiple code clone detection tools to make the consensus. To assist manual inspection, we built a tool to automatically load function pairs of interest and record the manual inspection results. We found that none of the 66 pairs are textual identical type- 1 clones, and 9 pairs are type-4 clones. Our data is available at: http://phd.gccis.rit.edu/weile/data/cloneoracle/.
Keywords: clone; Clone Oracle; Code Clone Detection; msr data showcase; software engineering

Code Review Analytics: WebKit as Case Study - González-Barahona, Jesús M.; Izquierdo-Cortázar, Daniel; Gregorio Robles; Mario Gallegos (IFIP Advances in Information and Communication TechnologyOpen Source Software: Mobile Open Source Technologies. 10th IFIP WG 2.13 International Conference on Open Source Systems, OSS 2014, San José, Costa Rica, May 6-9, 2014. Proceedings, 2014)
During the last years, most of the large free / open source software projects have included code review as an usual, or even mandatory practice for changes to their code. In many cases it is implemented as a process in which a developer proposing some change needs to ask for a review by another developer before it can enter the code base. Code reviews, therefore, become a critical process for the project, which could cause delays in contributions being accepted, and risk to become a bottleneck if not enough reviewers are available. In this paper we present a methodology designed to analyze the code review process, to determine its main characteristics and parameters, and to detect potential problems with it. We also present how we have applied this methodology to the WebKit project, learning about the main characteristics of how code review works in their case.

Co-evolution of Project Documentation and Popularity Within Github - Aggarwal, Karan; Hindle, Abram; Stroulia, Eleni (Proceedings of the 11th Working Conference on Mining Software Repositories, 2014)
Github is a very popular collaborative software-development platform that provides typical source-code management and issue tracking features augmented by strong social-networking features such as following developers and watching projects. These features help "spread the word" about individuals and projects, building the reputation of the former and increasing the popularity of the latter. In this paper, we investigate the relation between project popularity and regular, consistent documentation updates. We found strong indicators that consistently popular projects exhibited consistent documentation effort and that this effort tended to attract more documentation collaborators. We also found that frameworks required more documentation effort than libraries to achieve similar adoption success, especially in the initial phase.
Keywords: Cross Correlation; Documentation Change; mining challenge; msr challenge; popularity

Collaboration in Open-source Projects: Myth or Reality? - Tymchuk, Yuriy; Mocci, Andrea; Lanza, Michele (Proceedings of the 11th Working Conference on Mining Software Repositories, 2014)
One of the fundamental principles of open-source projects is that they foster collaboration among developers, disregarding their geographical location or personal background. When it comes to software repositories collaboration is a rather ephemeral phenomenon which lacks a clear definition, and it must therefore be mined and modeled. This throws up the question whether what is mined actually maps to reality. In this paper we investigate collaboration by modeling it using a number of diverse approaches that we then compare to a ground truth obtained by surveying a substantial set of developers of the Pharo open-source community. Our findings indicate that the notion of collaboration must be revisited, as it is undermined by a number of factors that are often tackled in imprecise ways or not taken into account at all.
Keywords: COLLABORATION; Software ecosystems

COLLABORATION THROUGH OPEN SUPERPOSITION: A THEORY OF THE OPEN SOURCE WAY. - Howison, James; Kevin Crowston (MIS Quarterly, 2014)
This paper develops and illustrates the theory of collaboration through open superposition: the process of depositing motivationally independent layers of work on top of each other over time. The theory is developed in a study of community-based free and open source software (FLOSS) development, through a research arc of discovery (participant observation), replication (two archival case studies), and theorization. The theory explains two key findings: (1) the overwhelming majority of work is accomplished with only a single programmer working on any one task, and (2) tasks that appear too large for any one individual are more likely to be deferred until they are easier rather than being undertaken through structured team work. Moreover, the theory explains how working through open superposition can lead to the discovery of a work breakdown that results in complex, functionally interdependent, work being accomplished without crippling search costs. We identify a set of socio-technical
Keywords: COLLABORATION; COMPUTER programmers; COMPUTER programming; COMPUTER software; coordination; FREEWARE (Computer software); INFORMATION storage & retrieval systems; open source software; research; socio-technical system

Considerations Regarding the Creation of a Post-graduate Master’s Degree in Free Software - Montes León, SergioRaúl; Gregorio Robles; González-Barahona, JesúsM.; Sánchez C., LuisE. (Open Source Software: Mobile Open Source Technologies, 2014)
Free software has gained importance over the last few years, and can be found in almost any sphere in which ‘software processes’ are important. However, even when universities and higher education establishments include subjects concerning free programming and technologies in their curriculums, their graduates tend to attain limited technological, organisational and philosophical knowledge that limits them as regards their participation in, management and development of free software projects. This gap in skills and knowledge has recently led to a series of post-graduate studies whose objective is to offer students the possibility of acquiring competencies that will allow them to become experts in free software. This paper presents a study concerning the offers for post-graduate studies in free software that currently exist, with the intention of creating similar post-graduate studies in Ecuador.

Continuous integration in a social-coding world: Empirical evidence from GitHub - Vasilescu, Bogdan; Serebrenik, Alexander; Schuylenberg, Stef; Wulms, Jules; Brand, Mark G.J. (30th IEEE International Conference on Software Maintenance - Early Research Achievements (ICSM 2014 ERA), 2014)
Continuous integration is a software engineering practice of frequently merging all developer working copies with a shared main branch, e.g., several times a day. With the advent of GITHUB, a platform well known for its “social coding” features that aid collaboration and sharing, and currently the largest code host in the open source world, collaborative software development has never been more prominent. In GITHUB development one can distinguish between two types of developer contributions to a project: direct ones, coming from a typically small group of developers with write access to the main project repository, and indirect ones, coming from developers who fork the main repository, update their copies locally, and submit pull requests for review and merger. In this paper we explore how GITHUB developers use continuous integration as well as whether the contribution type (direct versus indirect) and different project characteristics (e.g., main programming language, or project age) are associated with the success of the automatic builds.
Keywords: github

Crafting a Systematic Literature Review on Open-Source Platforms - Teixeira, Jose; Baiyere, Abayomi (Open Source Software: Mobile Open Source Technologies, 2014)
This working paper unveils the crafting of a systematic literature review on open-source platforms. The high-competitive mobile devices market, where several players such as Apple, Google, Nokia and Microsoft run a platforms- war with constant shifts in their technological strategies, is gaining increasing attention from scholars. It matters, then, to review previous literature on past platforms-wars, such as the ones from the PC and game-console industries, and assess its implications to the current mobile devices platforms-war. The paper starts by justifying the purpose and rationale behind this literature review on open-source platforms. The concepts of open-source software and computer-based platforms were then discussed both individually and in unison, in order to clarify the core-concept of “open-source platform” that guides this literature review. The detailed design of the employed methodological strategy is then presented as the central part of this paper. The paper concludes with preliminary findings organizing previous literature on open-source platforms for the purpose of guiding future research in this area.
Keywords: Ecosystems; FLOSS; open-source; Platforms; R&D Management

Cream of the crop - Katherine Panciera; Mikhil Masli; Loren Terveen (The International SymposiumProceedings of The International Symposium on Open Collaboration - OpenSym '14, 2014)
In open content communities like Wikipedia and StackOverflow and in open source software projects, a small proportion of users produce a majority of the content and take on much of the required community maintenance work. Understanding this class of users is crucial to creating and sustaining healthy communities. We carried out a mixed-method study of core contributors to the Cyclopath geographic wiki and bicycle routing web site. We present our findings and organize our discussion using concepts from activity theory. We found that the Cyclopath core contributors aren't the dedicated cyclists and that the characteristics of the community shape the site, the rules, and the tools for contributing. Additionally, we found that numerous aspects about the surrounding ecology of related systems and communities may help to shape how the site functions and views itself. We draw implications for future research and design from these findings.

Cuban GNU/Linux Nova Distribution for Server Computers - Rosales Rosa, Eugenio; Fuentes Rodríguez, JuanManuel; Fírvida Donéstevez, AbelAlfonso; García Rivas, Dairelys (Open Source Software: Mobile Open Source Technologies, 2014)
This article presents the novelties offered by the new version of GNU / Linux Nova distribution in its server edition, exposing the new features such as network attached storage, distributed files system, charge balance for PostgreSQL database servers and thin clients, as well as the basic features of a standard server. All these developments are obtained from the integration with the server management platform Zentyal designed to facilitate the work of the end users of the variant of this Cuban distribution.

A Dataset for Maven Artifacts and Bug Patterns Found in Them - Saini, Vaibhav; Sajnani, Hitesh; Ossher, Joel; Lopes, Cristina V. (Proceedings of the 11th Working Conference on Mining Software Repositories, 2014)
In this paper, we present data downloaded from Maven, one of the most popular component repositories. The data includes the binaries of 186,392 components, along with source code for 161,025. We identify and organize these components into groups where each group contains all the versions of a library. In order to asses the quality of these components, we make available report generated by the FindBugs tool on 64,574 components. The information is also made available in the form of a database which stores total number, type, and priority of bug patterns found in each component, along with its defect density. We also describe how this dataset can be useful in software engineering research.
Keywords: Empirical Research; Empirical software engineering; findbugs; maven; software quality

A Dataset for Pull-based Development Research - Gousios, Georgios; Zaidman, Andy (Proceedings of the 11th Working Conference on Mining Software Repositories, 2014)
Pull requests form a new method for collaborating in distributed software development. To study the pull request distributed development model, we constructed a dataset of almost 900 projects and 350,000 pull requests, including some of the largest users of pull requests on Github. In this paper, we describe how the project selection was done, we analyze the selected features and present a machine learning tool set for the R statistics environment.
Keywords: Distributed software development; Empirical software engineering; msr data showcase; pull request; pull-based development

A Dataset of Feature Additions and Feature Removals from the Linux Kernel - Passos, Leonardo; Czarnecki, Krzysztof (Proceedings of the 11th Working Conference on Mining Software Repositories, 2014)
This paper describes a dataset of feature additions and removals in the Linux kernel evolution history, spanning over seven years of kernel development. Features, in this context, denote configurable system options that users select when creating customized kernel images. The provided dataset is the largest corpus we are aware of capturing feature additions and removals, allowing researchers to assess the kernel evolution from a feature-oriented point-of-view. Furthermore, the dataset can be used to better understand how features evolve over time, and how different artifacts change as a result. One particular use of the dataset is to provide a real-world case to assess existing support for feature traceability and evolution. In this paper, we detail the dataset extraction process, the underlying database schema, and example queries. The dataset is directly available at our Bitbucket repository: https://bitbucket.org/lpassos/kconfigdb
Keywords: evolution; linux; msr data showcase; Traceability; Version Control History

Do Developers Discuss Design? - Brunet, João; Murphy, Gail C.; Terra, Ricardo; Figueiredo, Jorge; Serey, Dalton (Proceedings of the 11th Working Conference on Mining Software Repositories, 2014)
Design is often raised in the literature as important to attaining various properties and characteristics in a software system. At least for open-source projects, it can be hard to find evidence of ongoing design work in the technical artifacts produced as part of the development. Although developers usually do not produce specific design documents, they do communicate about design in different ways. In this paper, we provide quantitative evidence that developers address design through discussions in commits, issues, and pull requests. To achieve this, we built a discussions' classifier and automatically labeled 102,122 discussions from 77 projects. Based on this data, we make four observations about the projects: i) on average, 25% of the discussions in a project are about design; ii) on average, 26% of developers contribute to at least one design discussion; iii) only 1% of the developers contribute to more than 15% of the discussions in a project; and iv) these few developers who contribute to a broad range of design discussions are also the top committers in a project.
Keywords: Design Discussions; empirical study; machine learning; mining challenge; msr challenge

Do Developers Feel Emotions? An Exploratory Analysis of Emotions in Software Artifacts - Murgia, Alessandro; Tourani, Parastou; Adams, Bram; Ortu, Marco (Proceedings of the 11th Working Conference on Mining Software Repositories, 2014)
Software development is a collaborative activity in which developers interact to create and maintain a complex software system. Human collaboration inevitably evokes emotions like joy or sadness, which can affect the collaboration either positively or negatively, yet not much is known about the individual emotions and their role for software development stakeholders. In this study, we analyze whether development artifacts like issue reports carry any emotional information about software development. This is a first step towards verifying the feasibility of an automatic tool for emotion mining in software development artifacts: if humans cannot determine any emotion from a software artifact, neither can a tool. Analysis of the Apache Software Foundation issue tracking system shows that developers do express emotions (in particular gratitude, joy and sadness). However, the more context is provided about an issue report, the more human raters start to doubt and nuance their interpretation of emotions. More investigation is needed before building a fully automatic emotion mining tool.
Keywords: Emotion Mining; Empirical Software Engineer- ing; Issue Report

Does Contributor Characteristics Influence Future Participation? A Case Study on Google Chromium Issue Tracking System - Rastogi, Ayushi; Sureka, Ashish (Open Source Software: Mobile Open Source Technologies, 2014)
Understanding and measuring factors influencing future participation is relevant to organizations. This information is useful for planning and strategic decision-making. In this work, we measure contributor characteristics and compute attrition to investigate their relationship by mining Issue Tracking System. We conduct experiments on four year data extracted from Google Chromium Issue Tracking System. Experimental results show that the likelihood of future participation increases with increase in relevance of role in project and level of participation in previous time-interval.

Drawing the Big Picture: Temporal Visualization of Dynamic Collaboration Graphs of OSS Software Forks - Amir Azarbakht; Jensen, Carlos (10th IFIP WG 2.13 International Conference on Open Source Systems, OSS 2014, San José, Costa Rica, May 6-9, 2014. Proceedings, 2014)
How can we understand FOSS collaboration better? Can social issues that emerge be identified and addressed as they happen? Can the community heal itself, become more transparent and inclusive, and promote diversity? We propose a technique to address these issues by quantitative analysis and temporal visualization of social dynamics in FOSS communities. We used social network analysis metrics to identify growth patterns and unhealthy dynamics; This gives the community a heads-up when they can still take action to ensure the sustainability of the project.

Drupal As a Commons-Based Peer Production Community: A Sociological Perspective - Rozas, David (Proceedings of The International Symposium on Open Collaboration, 2014)
The aim of this research consists of extracting a set of insights related to the dynamics, group decision making procedures, motivations to contribute and mechanisms employed in the coordination of Commons-Based Peer Production communities, using as a case study the community responsible for the development of the Free/Libre Open Source Software Drupal. A sociological perspective is taken for this purpose, and a set of social research qualitative and quantitative methods employed for the study of online communities (virtual ethnography) are being used.
Keywords: Activity Theory; Commons-Based Peer Production; drupal; Free/Libre Open Source Software; Virtual Ethnography

Estimating Development Effort in Free/Open Source Software Projects by Mining Software Repositories: A Case Study of OpenStack - Gregorio Robles; González-Barahona, Jesus M; Cervigón, Carlos; Capiluppi, Andrea (14th International Conference on Mining Software Repositories, 2014)
Because of the distributed and collaborative nature of free/open source software (FOSS) projects, the development effort invested in a project is usually unknown, even after the software has been released. However, this information is becoming of major interest, especially - but not only- because of the growth in the number of companies for which FOSS has become relevant for their business strategy. In this paper we present a novel approach to estimate effort by considering data from source code management repositories. We apply our model to the OpenStack project, a FOSS project with more than 1,000 authors, in which several tens of companies cooperate. Based on data from its repositories and together with the input from a survey answered by more than 100 developers, we show that the model offers a simple, but sound way of obtaining software development estimations with bounded margins of error.
Keywords: effort estimation; openstack