Back to results

Ghent University

Co-Evolution of Source Code and the Build System: Impact on the Introduction of AOSD in Legacy Systems

Abstract

dc:description

Software is omnipresent in our daily lives. As users demand ever more advanced features, software systems have to keep on evolving. In practice, this means that software developers need to adapt the description of a software application. Such a description not only consists of source code written down in a programming language, as a lot of knowledge is hidden in lesser known software development artifacts, like the build system. As its name suggests, the build system is responsible for building an executable program, ready for use, from the source code. There are various indications that the evolution of source code is strongly related to that of the build system. When the source code changes, the build system has to co-evolve to safeguard the ability to build an executable program. A rigid build system on the other hand limits software developers. This phenomenon especially surfaces when drastic changes in the source code are coupled with an inflexible build system, as is the case for the introduction of AOSD technology in legacy systems. AOSD is a young software development approach which enables developers to structure and compose source code in a better way. Legacy systems are old software systems which are still mission-critical, but of which the source code and the build system are no longer fully understood, and which typically make use of old(-fashioned) technology. This PhD dissertation focuses on finding an explanation for this co-evolution of source code and the build system, and on finding developer support to grasp and manage this phenomenon. We postulate four "roots of co-evolution" which represent four different ways in which source code and the build system interact with each other. Based on these roots, we have developed tool and aspect language support to understand and manage co-evolution. The roots and the tool support have been validated in case studies, both in the context of co-evolution in general and of the introduction of AOSD technology in legacy systems. The dissertation experimentally shows that co-evolution indeed is a real problem, but that specific software development and aspect language support enables developers to deal with it.

Author and committee

dc:creator, dc:contributor.*
Author dc:creator
  • Adams, Bram
Contributors dc:contributor
  • Tromp, H
  • De Meuter, W

Rights

dc:rights
Statement dc:rights
  • info:eu-repo/semantics/openAccess
Language dc:language
und

Identifiers

dc:identifier.*
OAI identifier oai:identifier
oai:archive.ugent.be:470699

Chain of custody

source
Harvested from
Ghent University
Base URL
biblio.ugent.be/oai
Last updated
2026-07-24
Source record
OAI-PMH GetRecord
related terms
citation

Adams, Bram. Co-Evolution of Source Code and the Build System: Impact on the Introduction of AOSD in Legacy Systems. 2008. http://hdl.handle.net/1854/LU-470699