Applying Social Network Analysis Techniques to Community-Driven Libre Software Projects

Applying Social Network Analysis Techniques to Community-Driven Libre Software Projects

Luis López-Fernández (Universidad Rey Juan Carlos, Spain), Gregorio Robles (Universidad Rey Juan Carlos, Spain), Jesus M. Gonzalez-Barahona (Universidad Rey Juan Carlos, Spain) and Israel Herraiz (Universidad Rey Juan Carlos, Spain)
DOI: 10.4018/978-1-60566-418-7.ch003
OnDemand PDF Download:


Source code management repositories of large, long-lived libre (free, open source) software projects can be a source of valuable data about the organizational structure, evolution and knowledge exchange in the corresponding development communities. Unfortunately, the sheer volume of the available information renders it almost unusable without applying methodologies which highlight the relevant information for a given aspect of the project. Such methodology is proposed in this paper, based on well known concepts from the social networks analysis field, which can be used to study the relationships among developers and how they collaborate in different parts of a project. It is also applied to data mined from some well known projects (Apache, GNOME, and KDE), focusing on the characterization of their collaboration network architecture. These cases help to understand the potentials of the methodology and how it is applied, but also show some relevant results which open new paths in the understanding of the informal organization of libre software development communities.
Chapter Preview


Software projects are usually the collective work of many developers. In most cases, and especially in the case of large projects, those developers are formally organized in a well defined (usually hierarchical) structure, with clear guidelines about how to interact with each other, and the procedures and channels to use. Each team of developers is assigned certain modules of the project, and only in rare cases do they work outside that realm. However, this is usually not the case with libre software1 projects, where only loose (if any) formal structures are acknowledged. On the contrary, libre software developers usually have access to any part of the software, and even in the case of large projects, they can move freely to a certain extent from one module to other, with only some restrictions imposed by common usage in the project and the rules on which developers themselves have agreed to.

In fact, during the late 1990s some voices started to claim that the success of some libre software projects was rooted in this different way of organization, which was referred to as the “bazaar development model,” described by Eric Raymond (1997) and later complemented by some more formal models of nonhierarchical coordination (Elliott & Scacchi, 2004; Healy & Schussman, 2003). Some empirical studies have found that many libre software projects cannot follow this bazaar-style model, since they are composed of just one or two developers (Healy & Schussman, 2003; Krishnamurthy, 2002), but the idea remains valid for large projects, with tens or even hundreds of developers, where coordination is obviously achieved, but (usually) not by using formal procedures. These latter cases have gained much attention from the software engineering community during the last years, in part because despite apparently breaking some traditional premises (hard-to-find requirement studies, apparently no internal structure, global software development, etc.) final products of reasonable quality are being delivered. Large libre software projects are also suspicious of breaking one of the traditional software evolution laws, showing linear or even superlinear growth even after reaching a size of several millions of lines of code (Godfrey & Tu, 2000; Robles, Amor, Gonzalez-Barahona & Herraiz, 2005a). The laws of software evolution state that the evolution of a system is a self-regulating process that maintains its organizational stability. Thus, unless feedback mechanisms are appropriately introduced, the effective global activity tends to remain constant, and incremental growth declines. The fact that several studies on some large libre software projects show evidence that some of these laws are disobeyed may be indicative of an efficient organizational structure.

On the other hand, the study of several large libre software projects has shown evidence about the unequal distribution of the contributions of developers (Dinh-Trong & Bieman, 2005; Koch & Schneider, 2002; Mockus, Fielding & Herbsleb, 2002). These studies have identified roles within the development community, and have discovered that a large fraction of the development work is done by a small group of about 15 persons, which has been called the “core” group. The number of developers is around one order of magnitude larger, and the number of occasional bug reporters is again about one order of magnitude larger than that of developers (Dinh-Trong & Bieman, 2005; Mockus et al., 2002). This is what has been called the onion structure of libre software projects (Crowston, Scozzi & Buonocore, 2003). In this direction, it has also been suggested that large projects need to adopt policies to divide the work, giving rise to smaller, clearly defined projects (Mockus et al., 2002). This trend can be observed in the organization of the CVS2 repository of really large libre software projects, where the code base is split into modules with their own maintainers, goals, and so forth. Modules are usually supposed to be built maintaining the interrelationships to a minimum, so that independent evolution is possible (Germán, 2004).

Complete Chapter List

Search this Book:
Editorial Advisory Board
Table of Contents
Chapter 1
Olivier Berger, Christian Bac, Benoît Hamet
Libre software provides powerful applications ready to be integrated for the build-up of platforms for internal use in organizations. We describe... Sample PDF
Integration of Libre Software Applications to Create a Collaborative Work Platform for Researchers at GET
Chapter 2
James Howison, Megan Conklin, Kevin Crowston
This paper introduces and expands on previous work on a collaborative project, called FLOSSmole (formerly OSSmole), designed to gather, share and... Sample PDF
FLOSSmole: A Collaborative Repository for FLOSS Research Data and Analyses
Chapter 3
Luis López-Fernández, Gregorio Robles, Jesus M. Gonzalez-Barahona, Israel Herraiz
Source code management repositories of large, long-lived libre (free, open source) software projects can be a source of valuable data about the... Sample PDF
Applying Social Network Analysis Techniques to Community-Driven Libre Software Projects
Chapter 4
Walt Scacchi, Chris Jensen, John Noll, Margaret Elliott
Understanding the context, structure, activities, and content of software development processes found in practice has been and remains a challenging... Sample PDF
Multi-Modal Modeling, Analysis, and Validation of Open Source Software Development Processes
Chapter 5
B. B. Rossi, M. Scotto, A. Sillitti, G. Succi
The aim of the paper is to report the results of a migration to Open Source Software (OSS) in one Public Administration. The migration focuses on... Sample PDF
An Empirical Study on the Migration to in a Public Administration
Chapter 6
Claudio Agostino Ardagna, Fulvio Frati, Gabriele Gianini
Business and recreational activities on the global communication infrastructure are increasingly based on the use of remote resources and services... Sample PDF
Open Source in Web-Based Applications: A Case Study on Single Sign-On
Chapter 7
Qusay H. Mahmoud, Zakaria Maamar
Conventional desktop software applications are usually designed, built, and tested on a platform similar to the one on which they will be deployed... Sample PDF
Engineering Wireless Mobile Applications
Chapter 8
G. Sivaradje, R. Nakkeeran, P. Dananjayan
In this paper, a novel prediction technique is proposed, which uses road topology information for prediction. The proposed scheme uses real time... Sample PDF
A Prediction Based Flexible Channel Assignment in Wireless Networks using Road Topology Information
Chapter 9
Hesham A. Ali, Tamer Ahmed Farrag
Due to the rapidly increasing of the mobile devices connected to the internet, a lot of researches are being conducted to maximize the benefit of... Sample PDF
High Performance Scheduling Mechanism for Mobile Computing Based on Self-Ranking Algorithm (SRA)
Chapter 10
Khaldoon Al-Zoubi
This paper proposes hierarchal scheduling schemes for Grid systems: a self-discovery scheme for the resource discovery stage and an adaptive child... Sample PDF
Hierarchical Scheduling in Heterogeneous Grid Systems
Chapter 11
Amjad Mahmood, Taher S.K. Homeed
Object replication is a well-known technique to improve performance of a distributed Web server system. This paper first presents an algorithm to... Sample PDF
Object Grouping and Replication on a Distributed Web Server System
Chapter 12
Saher S. Manaseer, Mohamed Ould-Khaoua, Lewis M. Mackenzie
In wireless communication environments, backoff is traditionally based on the IEEE binary exponential backoff (BEB). Using BEB results in a high... Sample PDF
On the Logarithmic Backoff Algorithm for MAC Protocol in MANETs
Chapter 13
Xunhua Wang, David Rine
Domain Name System (DNS) is the system for the mapping between easily memorizable host names and their IP addresses. Due to its criticality, the... Sample PDF
Secure Online DNS Dynamic Updates: Architecture and Implementation
Chapter 14
Osama H.S. Khader
In mobile ad hoc networks, routing protocols are becoming more complicated and problematic. Routing in mobile ad hoc networks is multi-hop because... Sample PDF
FSR Evaluation Using the Suboptimal Operational Values
Chapter 15
Suet Chun Lee
Software product line (SPL) is a software engineering paradigm for software development. A software product within a product line often has specific... Sample PDF
Modeling Variant User Interfaces for Web-Based Software Product Lines
Chapter 16
M. Brian Blake, Lisa Singh, Andrew B. Williams, Wendell Norman, Amy L. Sliva
Organizations are beginning to apply data mining and knowledge discovery techniques to their corporate data sets, thereby enabling the... Sample PDF
Experience Report: A Component-Based Data Management and Knowledge Discovery Framework for Aviation Studies
Chapter 17
A. F. Tappenden, T. Huynh, J. Miller, A. Geras, M. Smith
This article outlines a four-point strategy for the development of secure Web-based applications within an agile development framework and... Sample PDF
Agile Development of Secure Web-Based Applications
Chapter 18
D. Xuan Le, J. Wenny Rahayu, David Taniar
This paper proposes a data warehouse integration technique that combines data and documents from different underlying documents and database design... Sample PDF
Web Data Warehousing Convergence: From Schematic to Systematic
Chapter 19
Haya El-Ghalayini, Mohammed Odeh, Richard McClatchey
This paper studies the differences and similarities between domain ontologies and conceptual data models and the role that ontologies can play in... Sample PDF
Engineering Conceptual Data Models from Domain Ontologies: A Critical Evaluation
Chapter 20
John D. Ferguson, James Miller
It is now widely accepted that software projects utilizing the Web (e-projects) face many of the same problems and risks experienced with more... Sample PDF
Modeling Defects in E-Projects
Chapter 21
Jaime Gomez, Alejandro Bia, Antonio Parraga
This paper describes the engineering foundations of VisualWADE, a CASE tool to automate the production of Web applications. VisualWADE follows a... Sample PDF
Tool Support for Model-Driven Development of Web Applications
About the Editors