• DocumentCode
    2347959
  • Title

    A Study of the Time Dependence of Code Changes

  • Author

    Alam, Omar ; Adams, Bram ; Hassan, Ahmed E.

  • Author_Institution
    Sch. of Comput., Software Anal. & Intell. Lab. (SAIL), Queen´´s Univ., Kingston, ON, Canada
  • fYear
    2009
  • fDate
    13-16 Oct. 2009
  • Firstpage
    21
  • Lastpage
    30
  • Abstract
    Much of modern software development consists of building on older changes. Older periods provide the structure (e.g., functions and data types) on which changes in future periods will build. Given a particular period in the lifetime of a project, one can determine prior periods on which it builds, and future periods which build on it. Using this knowledge, managers can identify foundational periods in the lifetime of a project, which provide the structural foundation for a large number of future periods. A good understanding and detailed documentation of events and decisions in such foundational periods is essential for the smooth evolution of a project. This paper examines how changes build on older changes by measuring the time dependence between code changes. Using our approach, we can create time dependence relations between periods and study the characteristics of such dependence relations. We apply our approach on two large open source projects, PostgreSQL and FreeBSD. We find that foundational periods are periods with huge restructurings, important new features or large imports of external source code. We also find that a project, as it ages, either progressively depends on older periods or cycles between depending on old and new periods.
  • Keywords
    project management; software development management; software maintenance; software prototyping; FreeBSD open source project; PostgreSQL open source project; project evolution; project lifetime; software code change; software development; time dependence; Buildings; Documentation; Intelligent structures; Programming; Project management; Resource management; Reverse engineering; Software development management; Software maintenance; Time measurement;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Reverse Engineering, 2009. WCRE '09. 16th Working Conference on
  • Conference_Location
    Lille
  • ISSN
    1095-1350
  • Print_ISBN
    978-0-7695-3867-9
  • Type

    conf

  • DOI
    10.1109/WCRE.2009.25
  • Filename
    5328659