Usage
  • 85 views
  • 423 downloads

Build System Issues in Multilanguage Software

  • Author / Creator
    Neitsch, Andrew D.
  • Software build systems are often viewed as a solved problem by software engineers, since there are many mature tools and techniques for implementing them. However, existing tools and techniques focus on building single-language software and do not necessarily scale to building multilanguage software. An exploratory qualitative study of five open-source multilanguage software packages finds significant issues in getting these packages to build at all. The key finding of this thesis is that there are commonalities among build problems that could be systematically addressed. A comparative analysis of the five case studies produces a set of build patterns and anti-patterns, some of which could also apply to single-language software. One such finding is that multilanguage packages may avoid certain build problems by supporting build-free extension. As well, there is evidence that abstractions from the application and implementation domains may “leak” into the build system, with both positive and negative effects.

  • Subjects / Keywords
  • Graduation date
    2012-09
  • Type of Item
    Thesis
  • Degree
    Master of Science
  • DOI
    https://doi.org/10.7939/R3XW53
  • License
    This thesis is made available by the University of Alberta Libraries with permission of the copyright owner solely for non-commercial purposes. This thesis, or any portion thereof, may not otherwise be copied or reproduced without the written consent of the copyright owner, except to the extent permitted by Canadian copyright law.
  • Language
    English
  • Institution
    University of Alberta
  • Degree level
    Master's
  • Department
    • Department of Computing Science
  • Supervisor / co-supervisor and their department(s)
    • Wong, Kenny (Computing Science)
  • Examining committee members and their departments
    • Hindle, Abram (Computing Science)
    • Reformat, Marek (Electrical and Computer Engineering)