Unifying Program Slicing and Concept Assignment For Higher-Level Executable Source Code Extraction

Nicolas Gold, David Binkley, Mark Harman, Rob Hierons

Research output: Contribution to journalArticlepeer-review

16 Citations (Scopus)

Abstract

Program slicing and concept assignment have both been proposed as source code extraction techniques. Unfortunately, each has a weakness that prevents wider application. For slicing, the extraction criterion is expressed at a very low level; constructing a slicing criterion requires detailed code knowledge which is often unavailable. The concept assignment extraction criterion is expressed at the domain level. However, unlike a slice, the extracted code is not executable as a separate subprogram in its own right. This paper introduces a unification of slicing and concept assignment which exploits their combined advantages, while overcoming these two individual weaknesses. Our ' concept slices ' are executable programs extracted using high-level criteria. The paper introduces four techniques that combine slicing and concept assignment and algorithms for each. These algorithms were implemented in two separate tools used to illustrate the application of the concept slicing algorithms in two very different case studies. The first is a commercially-written COBOL module from a large financial organization, the second is an open source utility program written in C. Copyright (c) 2005 John Wiley & Sons, Ltd
Original languageEnglish
Pages (from-to)977 - 1006
Number of pages30
JournalSOFTWARE: PRACTICE AND EXPERIENCE
Volume35
Issue number10
DOIs
Publication statusPublished - Aug 2005

Fingerprint

Dive into the research topics of 'Unifying Program Slicing and Concept Assignment For Higher-Level Executable Source Code Extraction'. Together they form a unique fingerprint.

Cite this