Identifying Modules Via Concept Analysis
Michael Siff and Thomas Reps
We describe a general technique for identifying modules in legacy
code. The method is based on concept analysis --- a branch
of lattice theory that can be used to identify similarities among a
set of objects based on their attributes. We
discuss how concept analysis can identify potential modules using both
``positive'' and ``negative'' information. We present an algorithmic
framework to construct a lattice of concepts from a program, where
each concept represents a potential module.
Key Words and Phrases:
Concept analysis, modularization, software migration, software
restructuring, reverse engineering, design recovery.
(Click here to access the paper:
PostScript,
PDF.)
University of Wisconsin