• No results found

Increase of Core-Periphery Proportion

5.7 RE Process Discovery within Community-generated Content

6.1.2 Increase of Core-Periphery Proportion

We studied the change of the community social constellation in relation to the influence which the periphery executes on the OSS project. Specifically, we addressed the following questions:

• Do the requirements from the core and the periphery of OSS communities influence development process differently?

• To what extent do requirements give rise to development?

• Does the level of participation in RE influence the level of satisfaction of the peripheral project participants?

• Which social constellation empowers the end-users most?

Core-periphery proportion is one measure to reflect social structure of CoPs including OSS communities. Social constellations of OSS communities experience continuous evolution. The change of the core-periphery proportion determines the change in the community constellation.

To study the interplay between social constellation of OSS communities and the influence of periphery on the project, we applied our model for RE process discovery in OSS content (cf. Subsection 5.7.1). For each period between two releases, every OSS community under study was mapped to a graph structure. Using hierarchical clustering, we separated the core from the periphery in all project graphs. By these means, we were able to monitor the evolution of core-periphery proportion over eleven years in three given cases. Our analysis showed that the requirements from the periphery gave rise to the development process unless the core-periphery proportion exceeded a certain threshold. Thus, core-periphery proportion is the second identified stimulus in the life of the OSS communities which we were able to identify.

Figure 6.11: Network of Biopython Project between Release 1.4.0 and 1.4.1. Red

Nodes - Core, Blue Nodes - Periphery.

Event We assume that the core and the periphery of an OSS community par-

ticipate differently in the development process. Especially in the bioinformatics OSS, we expect peripheral project participants to be mainly biologists, who are taking their first steps towards software development whereas the cores of the bioinformatics OSSs typically consist of professional developers with a special passion for computational biology.

With help of the hierarchical clustering based on degree centrality (Algorithm 1), the core and the periphery for each period between two releases j and j + 1 within the Bio* projects were separated. Figure 6.11 displays a clustering result of the Biopython SN. The blue nodes represent the community members assigned to the periphery. Whereby, the red ones represent the members identified as the core. Most of the detected core project participants are also mentioned on the projects wikis as important contributors. However, the information on the projects wikis lacks the temporal component which makes it impossible to trace the evolution based on the wiki data.

Our analysis showed that the core members in the Bio* projects were respon- sible for majority of the messages in the mailing lists and for the majority of the contributions in the projects RCS. Furthermore, the core sub-communities were based on two to three permanent leaders who played significant role in the corresponding projects. Other three to five developers from the periphery joined the core groups temporarily. Hence, the core groups within three OSS projects under study experienced continuous change.

Despite the similarity in average size of the core sub-communities, the total numbers of the project members differed strongly. This resulted in different fractions of the BioJava, Biopython, BioPerl core in the corresponding communities. Figure 6.12 depicts the estimated core-periphery ratio in the Bio* OSS projects. In the Biopython community, core-periphery ratio was on average 12%. In BioJava, the ratio was about 6%, while in BioPerl, it was about 4%. Therefore, the BioPerl project managed to cultivate the biggest periphery among the three projects under study. More detailed investigation of the communities’ social structure showed that in the BioJava and Biopython projects, there was a sharp jump from the most active project participants to the long-tail of the communities. In contrast, in BioPerl, we additionally observed an intermediate level of participation (cf. Section 6.1.1). To remind, we defined the intermediate layer by project participants who contributed actively to the project without taking the central position in the community.

Figure 6.12: Core-Periphery Ratio in Bio* Projects.

Effect Next, we studied the effects different OSS community constellations have

on OSS development. In more detail, we addressed the question which social con- stellation empowers the end-users most. Therefore, within the projects under study, we analyzed the correlation between RE and development process in comparison to the detected social structures. Here again, we based our research on our model for RE process discovery within OSS content (cf. Subsection 5.7.1).

mailing lists. The correlation values of the requirements amount and the devel- opment activity are displayed in Table 6.3. In the BioPerl project, we observe the highest correlation coefficients for both the core and the periphery. Hence, the more requirements are submitted within this project, the more lines of code are implemented. In the BioJava project, also the requirements amount from both sub-communities correlates with the development progress. However, in this case the correlation coefficients are much smaller indicating the light correlation only. Remarkably, in Biopython, the light correlation is identified only for the core sub-community. To summarize, the development in the BioPerl project is driven by both the core and the periphery. In the BioJava project, the development is driven by the core and by the periphery to some extent. Whereby, in the Biopython project, the development is mainly driven by the requirements originated from the core.

If we combine these results with the previously estimated core-periphery propor- tion, we observe that in case of Biopython, where the core fraction exceed 10%, the periphery is relatively small to influence the project development significantly. In the BioJava project, where core-periphery proportion is 6%, the periphery is weakly empowered with a voice. The periphery of BioPerl presents the biggest fraction within the community in comparison to BioJava and Biopython. The BioPerl periphery also shows the strongest influence on the development of the project. The observation supports empirically the claim that “OSS projects depend on the increase of the size of its user community” by Sowe [SSS07b]. Crowston and Howison [CH06a] and Crowston et al. [CWL+06] also ague that success or failure of OSS projects depends largely on the health of their community. Mockus et al. [MFH02] stated that active periphery is one of the reasons for the success of well-organized OSS project.

The strongest influence of the periphery in the BioPerl project can be additionally related to the previously detected layer of ‘contributors’ in the project (Section 6.1.1). Table 6.2 visualizes that in case of BioPerl the 58% of mails posted by the periphery contain requirements, whereas in BioJava and Biopython the fraction of periphery mails classified as requirements is only about 40%. Thus, the active peripheral project participants support innovation inflow into the project.