An Empirical Study of Build System Migrations in Practice Case Studies on KDE and the Linux Kernel
Authors -
Roman, Suvorov;
Bram, Adams;
Meiyappan, Nagappan;
Ahmed, Hassan and
Ying, Zou
Venue -
In Proceedings of the 28th IEEE International Conference on Software Maintenance (ICSM 2012), Riva del Garda, Trento, Italy, September 25 27, 2012
Related Tags -
Abstract -
As the build system, i.e. the infrastructure that
constructs executable deliverables out of source code and other
resources, tries to catch up with the ever-evolving source
code base, its size and already significant complexity keep on
growing. Recently, this has forced some major software projects
to migrate their build systems towards more powerful build
system technologies. Since at all times software developers, testers and QA personnel rely on a functional build system to
do their job, a build system migration is a risky and possibly
costly undertaking, yet no methodology, nor best practices have
been devised for it. In order to understand the build system
migration process, we empirically studied two failed and two
successful attempts of build system migration in two major
open source projects, i.e. Linux and KDE, by mining source
code repositories and tens of thousands of developer mailing
list messages. The major contributions of this paper are: (a)
isolating the phases of a common methodology for build system
migrations, which is similar to the spiral model for source code
development (multiple iterations of a waterfall process); (b)
identifying four of the major challenges associated with this
methodology: requirements gathering, communication issues, performance vs. complexity of build system code, and effective
evaluation of build system prototypes; (c) detailed analysis of
the first challenge, i.e., requirements gathering for the new build
system, which revealed that the failed migrations did not gather
requirements rigorously. Based on our findings, practitioners
will be able to make more informed decisions about migrating
their build system, potentially saving them time and money.
)
Preprint -
PDF
BibTex -
@article{Suvorov2012,
author = {Roman, Suvorov and Bram, Adams and Meiyappan, Nagappan and Ahmed, Hassan and Ying, Zou},
keyword = {Release Engineering},
title = {An Empirical Study of Build System Migrations in Practice Case Studies on KDE and the Linux Kernel},
type = {conference},
venue = {In Proceedings of the 28th IEEE International Conference on Software Maintenance (ICSM 2012), Riva del Garda, Trento, Italy, September 25 27, 2012}
}