Build-Level Components in FLOSS Systems

Capiluppi, Andrea and Knowles, Thomas (2009) ‘Build-Level Components in FLOSS Systems’,

Capiluppi, A., Knowles, T.(2009) WICSAECSA.pdf - Presentation
Available under License Creative Commons Attribution No Derivatives.

Download (402Kb) | Preview


As one of the often cited resources in Software Engineering, the modularization principle states that the coupling between modules should be minimised, while the cohesion within modules maximised. Apart from precisely defining what a module is, this principle should be challenged in empirical settings on two grounds: first, dynamically, to understand whether a module maintains or changes its behaviour over time; second, by encapsulating third-party modules, and observing how the system’s modules cope with the imported ones. This paper studies the evolution of the components of a Free/Libre/Open Source Software – FLOSS – system (MPlayer) which comprises its own modules and several imported, external modules. It studies whether all modules behave in a consistent way or different patterns are observed. It is found that few modules keep their behaviour throughout the life-cycle, and these often comprise the externally imported modules. The project’s own modules are instead prone to changes in their behaviour, most often by degrading their cohesion, therefore increasing the coupling with other modules.

Item Type: Conference or Event Item (Paper)
Divisions: Schools > Architecture Computing and Engineering, School of
Depositing User: Andrea Capiluppi
Date Deposited: 18 Sep 2009 14:16
Last Modified: 27 Sep 2012 11:58

Actions (login required)

View Item View Item