Textual and behavioral views of function changes

  • Authors:
  • Kai Pan;E. James Whitehead;Guozheng Ge

  • Affiliations:
  • University of California, Santa Cruz;University of California, Santa Cruz;University of California, Santa Cruz

  • Venue:
  • TEFSE '05 Proceedings of the 3rd international workshop on Traceability in emerging forms of software engineering
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper, we describe an approach that automatically computes function change information between consecutive revisions along the revision history of C language projects. Function changes are computed at two abstract levels. First, we compute the textual changes between two function revisions. Computed results include function additions and deletions, and the quantity and the ratio of textual change in changed functions across two revisions. Second, we compute the behavioral changes of functions using program slicing techniques. We use an XML-formatted document to represent computed function change information. The function change information, together with the SCM change log, helps maintainers understand code changes between two revisions. The structured format of the function change information also helps create traceability links between the changes and other artifacts. We describe our prototype implementation for computing function changes, and we evaluate our approach through a case study on the Sed project.