• DocumentCode
    1928305
  • Title

    Dex: a semantic-graph differencing tool for studying changes in large code bases

  • Author

    Raghavan, Shruti ; Rohana, Rosanne ; Leon, David ; Podgurski, Andy ; Augustine, Vinay

  • Author_Institution
    Dept. Electr. Eng. & Comput. Sci., Case Western Reserve Univ., Cleveland, OH, USA
  • fYear
    2004
  • fDate
    11-14 Sept. 2004
  • Firstpage
    188
  • Lastpage
    197
  • Abstract
    This paper describes an automated tool called Dex (difference extractor) for analyzing syntactic and semantic changes in large C-language code bases. It is applied to patches obtained from a source code repository, each of which comprises the code changes made to accomplish a particular task. Dex produces summary statistics characterizing these changes for all of the patches that are analyzed. Dex applies a graph differencing algorithm to abstract semantic graphs (ASGs) representing each version. The differences are then analyzed to identify higher-level program changes. We describe the design of Dex, its potential applications, and the results of applying it to analyze bug fixes from the Apache and GCC projects. The results include detailed information about the nature and frequency of missing condition defects in these projects.
  • Keywords
    C language; program debugging; software tools; Apache; GCC; abstract semantic graphs; automated tool; difference extractor; higher-level program changes; large C-language code bases; semantic-graph differencing tool; source code repository; Application software; Computer science; Control systems; Frequency; History; Software debugging; Software engineering; Software systems; Software testing; Statistical analysis;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Maintenance, 2004. Proceedings. 20th IEEE International Conference on
  • ISSN
    1063-6773
  • Print_ISBN
    0-7695-2213-0
  • Type

    conf

  • DOI
    10.1109/ICSM.2004.1357803
  • Filename
    1357803