• DocumentCode
    2208623
  • Title

    Co-evolution of source code and the build system

  • Author

    Adams, Bram

  • Author_Institution
    Software Anal. & Intell. Lab., Queen´´s Univ., Kingston, ON, Canada
  • fYear
    2009
  • fDate
    20-26 Sept. 2009
  • Firstpage
    461
  • Lastpage
    464
  • Abstract
    A build system breathes life into source code, as it configures and directs the construction of a software system from textual source code modules. Surprisingly, build languages and tools have not received considerable attention by academics and practitioners, making current build systems a mysterious and frustrating resource to work with. Our dissertation presents a conceptual framework with tool support to recover, analyze and refactor a build system. We demonstrate the applicability of our framework by analyzing the evolution of the Linux kernel build system and the introduction of AOSD technology in five legacy build systems. In all cases, we found that the build system is a complex software system of its own, trying to co-evolve in a synchronized way with the source code while working around shortcomings of the underlying build technology. Based on our findings, we hypothesize four conceptual reasons of co-evolution to guide future research in the area of build systems.
  • Keywords
    software maintenance; software prototyping; AOSD technology; Linux kernel build system; build language; build system; build system analysis; build system recovery; build system refactoring; legacy build system; software system; source code co-evolution; textual source code module; Computer architecture; Joining processes; Kernel; Libraries; Linux; Modular construction; Programming; Software development management; Software systems; Spine;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Maintenance, 2009. ICSM 2009. IEEE International Conference on
  • Conference_Location
    Edmonton, AB
  • ISSN
    1063-6773
  • Print_ISBN
    978-1-4244-4897-5
  • Electronic_ISBN
    1063-6773
  • Type

    conf

  • DOI
    10.1109/ICSM.2009.5306272
  • Filename
    5306272