2 research outputs found
On Using Network Science in Mining Developers Collaboration in Software Engineering: A Systematic Literature Review
The goal of this study is to identify, review, and analyze the published
research works that used network analysis as a tool for understanding the human
collaboration on different levels of software development. This study and its
findings are expected to be of benefit for software engineering practitioners
and researchers who are mining software repositories using tools from network
science field. We conducted a systematic literature review, in which we
analyzed a number of selected papers from different digital libraries based on
inclusion and exclusion criteria. We identified primary studies (PSs) from
4 digital libraries, then we extracted data from each PS according to a
predefined data extraction sheet. The results of our data analysis showed that
not all of the constructed networks used in the PSs were valid as the edges of
these networks did not reflect a real relationship between the entities of the
network. Additionally, the used measures in the PSs were in many cases not
suitable for the used networks. Also, the reported analysis results by the PSs
were not, in most cases, validated using any statistical model. Finally, many
of the PSs did not provide lessons or guidelines for software practitioners
that can improve the software engineering practices. Although employing network
analysis in mining developers' collaboration showed some satisfactory results
in some of the PSs, the application of network analysis needs to be conducted
more carefully. That is said, the constructed network should be representative
and meaningful, the used measure needs to be suitable for the context, and the
validation of the results should be considered. More and above, we state some
research gaps, in which network science can be applied, with some pointers to
recent advances that can be used to mine collaboration networks.Comment: International Journal of Data Mining & Knowledge Management Process
(IJDKP
A Survey of Software Foundations in Open Source
A number of software foundations have been created as legal instruments to
better articulate the structure, collaboration and financial model of Open
Source Software (OSS) projects. Some examples are the Apache, Linux, or Mozilla
foundations. However, the mission and support provided by these foundations
largely differ among them. In this paper we perform a study on the role of
foundations in OSS development. We analyze the nature, activities, role and
governance of 101 software foundations and then go deeper on the 27 having as
concrete goal the development and evolution of specific open source projects
(and not just generic actions to promote the free software movement or
similar). Our results reveal the existence of a significant number of
foundations with the sole purpose of promoting the free software movement
and/or that limit themselves to core legal aspects but do not play any role in
the day-to-day operations of the project (e.g., umbrella organizations for a
large variety of projects). Therefore, while useful, foundations do not remove
the need for specific projects to develop their own specific governance,
contribution and development policies. A website to help projects to choose the
foundation that best fits their needs is also available.Comment: 15 pages, 3 figures, 6 tables, extended version of paper published at
ICSE-SEIS'1