Back to results

Queens University

Studying the Evolution of Build Systems

Abstract

dc:description.abstract

As a software project ages, its source code is improved by refining existing features, adding new ones, and fixing bugs. Software developers can attest that such changes often require accompanying changes to the infrastructure that converts source code into executable software packages, i.e., the build system. Intuition suggests that these build system changes slow down development progress by diverting developer focus away from making improvements to the source code. While source code evolution and maintenance is studied extensively, there is little work that focuses on the build system. In this thesis, we empirically study the static and dynamic evolution of build system complexity in proprietary and open source projects. To help counter potential bias of the study, 13 projects with different sizes, domains, build technologies, and release strategies were selected for examination, including Eclipse, Linux, Mozilla, and JBoss. We find that: (1) similar to Lehman's first law of software evolution, Java build system specifications tend to grow unless explicit effort is invested into restructuring them, (2) the build system accounts for up to 31\% of the code files in a project, and (3) up to 27\% of source code related development tasks require build maintenance. Project managers should include build maintenance effort of this magnitude in their project planning and budgeting estimations.

Degree

thesis:*
Department dc:contributor.department
Computing
Year dc:date.issued
2011

Author and committee

dc:creator, dc:contributor.*
Author dc:creator
  • McIntosh, Shane
Advisors dc:contributor.supervisor
  • Adams, Bram
  • Hassan, Ahmed E.

Subjects

dc:subject × 2

Rights

Language dc:language.iso
eng

Identifiers

dc:identifier.*
Handle dc:identifier.uri
http://hdl.handle.net/1974/6294
OAI identifier oai:identifier
oai:queensu.scholaris.ca:1974/6294

Chain of custody

source
Harvested from
Queens University
Base URL
qspace.library.queensu.ca/server/oai/request
Last updated
2026-07-27
Source record
OAI-PMH GetRecord
citation

McIntosh, Shane. Studying the Evolution of Build Systems. 2011. http://hdl.handle.net/1974/6294