DocumentCode :
2741650
Title :
Source code modularization using lattice of concept slices
Author :
Al-Ekram, Raihan ; Kontogiannis, Kostas
Author_Institution :
Dept. of Electr. & Comput. Eng., Waterloo Univ., Ont., Canada
fYear :
2004
fDate :
24-26 March 2004
Firstpage :
195
Lastpage :
203
Abstract :
Most legacy systems have been altered due to prolonged maintenance to the point that they deviate significantly from their original and intended design and consequently, they lack modularity. Static source code analysis techniques like concept assignment, formal concept analysis and program slicing, have been successfully used by researchers for program understanding and for restoring system design properties. In our approach we combine these three techniques, aiming to gain on their individual strengths and overcoming their weaknesses. Here we present a program representation formalism that we call the lattice of concept slices and a program modularization technique that aims to separate statements in a code fragment according to the concept they implement or they may belong to. The lattice shows the relationship between the statements of a program and the domain concepts that might be implemented by the statements. Using the lattice as a primary data structure we present two algorithms for decomposing the program into appropriate modules. The goal is to achieve a modularization such that the modules are self-contained, side effect free and the code duplication among nodes is minimal. The modularization process is illustrated with an example C program.
Keywords :
program slicing; reverse engineering; software maintenance; formal concept analysis; lattice of concept slices; program modularization; program representation formalism; program slicing; program understanding; software maintenance; source code modularization; static source code analysis; Algorithms; Books; Data mining; Data structures; Lattices; Software maintenance; Software systems; System analysis and design;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Maintenance and Reengineering, 2004. CSMR 2004. Proceedings. Eighth European Conference on
ISSN :
1534-5351
Print_ISBN :
0-7695-2107-X
Type :
conf
DOI :
10.1109/CSMR.2004.1281420
Filename :
1281420
Link To Document :
بازگشت