Dynamic slicing method for maintenance of large C programs

Árpád Beszédes, Tamás Gergely, Zsolt Mihály Szabó, János Csirik, Tibor Gyimóthy

Research output: Contribution to conferencePaper

52 Citations (Scopus)

Abstract

Different program slicing methods are used for maintenance, reverse engineering, testing and debugging. Slicing algorithms can be classified as static slicing and dynamic slicing methods. In several applications the computation of dynamic slices is more preferable since it can produce more precise results. In this paper we introduce a new forward global method for computing backward dynamic slices of C programs. In parallel to the program execution the algorithm determines the dynamic slices for any program instruction. We also propose a solution for some problems specific to the C language (such as pointers and function calls). The main advantage of our algorithm is that it can be applied to real size C programs, because its memory requirements are proportional to the number of different memory locations used by the program (which is in most cases far smaller than the size of the execution history-which is, in fact, the absolute upper bound of our algorithm).

Original languageEnglish
Pages105-113
Number of pages9
Publication statusPublished - Dec 1 2001
EventProceedings of the 5th European Conference on Software Maintenance and Reengineering - Lisbon, Portugal
Duration: Mar 14 2001Mar 16 2001

Other

OtherProceedings of the 5th European Conference on Software Maintenance and Reengineering
CountryPortugal
CityLisbon
Period3/14/013/16/01

    Fingerprint

ASJC Scopus subject areas

  • Software

Cite this

Beszédes, Á., Gergely, T., Szabó, Z. M., Csirik, J., & Gyimóthy, T. (2001). Dynamic slicing method for maintenance of large C programs. 105-113. Paper presented at Proceedings of the 5th European Conference on Software Maintenance and Reengineering, Lisbon, Portugal.