• DocumentCode
    731487
  • Title

    Co-evolution of Infrastructure and Source Code - An Empirical Study

  • Author

    Yujuan Jiang ; Adams, Bram

  • Author_Institution
    MCIS Lab., Polytech. Montreal, Montreal, QC, Canada
  • fYear
    2015
  • fDate
    16-17 May 2015
  • Firstpage
    45
  • Lastpage
    55
  • Abstract
    Infrastructure-as-code automates the process of configuring and setting up the environment (e.g., servers, VMs and databases) in which a software system will be tested and/or deployed, through textual specification files in a language like Puppet or Chef. Since the environment is instantiated automatically by the infrastructure languages´ tools, no manual intervention is necessary apart from maintaining the infrastructure specification files. The amount of work involved with such maintenance, as well as the size and complexity of infrastructure specification files, have not yet been studied empirically. Through an empirical study of the version control system of 265 Open Stack projects, we find that infrastructure files are large and churn frequently, which could indicate a potential of introducing bugs. Furthermore, we found that the infrastructure code files are coupled tightly with the other files in a project, especially test files, which implies that testers often need to change infrastructure specifications when making changes to the test framework and tests.
  • Keywords
    formal specification; source code (software); infrastructure code files; infrastructure coevolution; infrastructure specifications; source code; Association rules; Cloud computing; Couplings; Maintenance engineering; Measurement; Servers;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Mining Software Repositories (MSR), 2015 IEEE/ACM 12th Working Conference on
  • Conference_Location
    Florence
  • Type

    conf

  • DOI
    10.1109/MSR.2015.12
  • Filename
    7180066