CONSIT: a fully automated conditioned program slicer

C Fox, S Danicic, M Harman, R M Hierons

Research output: Contribution to journalArticlepeer-review

21 Citations (Scopus)

Abstract

Conditioned slicing is a source code extraction technique. The extraction is performed with respect to a slicing criterion which contains a set of variables and conditions of interest. Conditioned slicing removes the parts of the original program which cannot affect the variables at the point of interest, when the conditions are satisfied. This produces a conditioned slice, which preserves the behaviour of the original with respect to the slicing criterion. Conditioned slicing has applications in source code comprehension, reuse, restructuring and testing. Unfortunately, implementation is not straightforward because the full exploitation of conditions requires the combination of symbolic execution, theorem proving and traditional static slicing. Hitherto, this difficultly has hindered development of fully automated conditioning slicing tools. This paper describes the first fully automated conditioned slicing system, CONSIT, detailing the theory that underlies it, its architecture and the way it combines symbolic execution, theorem proving and slicing technologies. The use of CONSIT is illustrated with respect to the applications of testing and comprehension. (51 References).
Original languageEnglish
Pages (from-to)15 - 46
Number of pages32
JournalSOFTWARE: PRACTICE AND EXPERIENCE
Volumeol.34
Issue number.1
Publication statusPublished - Jan 2004

Fingerprint

Dive into the research topics of 'CONSIT: a fully automated conditioned program slicer'. Together they form a unique fingerprint.

Cite this