• DocumentCode
    600291
  • Title

    The effect of branching strategies on software quality

  • Author

    Shihab, Emad ; Bird, Christian ; Zimmermann, Thomas

  • Author_Institution
    Software Anal. & Intell. Lab. (SAIL), Queens Univ., Kingston, ON, Canada
  • fYear
    2012
  • fDate
    20-21 Sept. 2012
  • Firstpage
    301
  • Lastpage
    310
  • Abstract
    Branching plays a major role in the development process of large software. Branches provide isolation so that multiple pieces of the software system can be modified in parallel without affecting each other during times of instability. However, branching has its own issues. The need to move code across branches introduces additional overhead and branch use can lead to integration failures due to conflicts or unseen dependencies. Although branches are used extensively in commercial and open source development projects, the effects that different branch strategies have on software quality are not yet well understood. In this paper, we present the first empirical study that evaluates and quantifies the relationship between software quality and various aspects of the branch structure used in a software project. We examine Windows Vista and Windows 7 and compare components that have different branch characteristics to quantify differences in quality. We also examine the effectiveness of two branching strategies - branching according to the software architecture versus branching according to organizational structure. We find that, indeed, branching does have an effect on software quality and that misalignment of branching structure and organizational structure is associated with higher post-release failure rates.
  • Keywords
    software architecture; software quality; Windows 7; Windows Vista; branching strategy; commercial software; open source software; organizational structure; post-release failure rate; software architecture; software development process; software quality; Computer architecture; Entropy; Linear regression; Measurement; Organizations; Software quality; Branching; Quality;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Empirical Software Engineering and Measurement (ESEM), 2012 ACM-IEEE International Symposium on
  • Conference_Location
    Lund
  • ISSN
    1938-6451
  • Print_ISBN
    978-1-4503-1056-7
  • Electronic_ISBN
    1938-6451
  • Type

    conf

  • DOI
    10.1145/2372251.2372305
  • Filename
    6475431