Title:
|
Software evolution through UML-models extraction
|
With the high demand for renovation of legacy systems, their evolution is becoming an
urgent need. Although some approaches have been introduced to evolving legacy
systems, they are not sufficient for understanding legacy code.
In this thesis, development/environment-specific models of domain-specific legacy
systems are acquired, based on their characteristics and operations. The
development/environment-specific model of COBOL legacy systems is based on the
characteristics and operations of COBOL, and is a procedure-based model comprising a
graph that describes the calling and being-called relationships of those procedures in
COBOL legacy systems. It has four types: linear, branch, joint, and synthetic
procedure-based models. The link-based model of HTML legacy systems uses a graph
that describes the importing or imported relationships of webs in a legacy system. It has
three types: sequential, cyclical, and compositive link-based models. The
development/environment-specific model of the SQL legacy system comprises
association, generation and composition database-based models based on the basic
operations of SQL and the two main relationships of generation and association between
the databases in an SQL legacy system.
The structural stage of UML extraction in this thesis contains class realisation. The
classification of classes from COBOL legacy system is two, which are procedure class
and variable class. Every procedure in COBOL legacy system is defined as one
procedure class. Variable class is based on the program slicing techniques with two
stages of pseudo class and real class extraction from COBOL legacy system. The
variable of the sliced criterion is defined as the class name, and the variables contained in
its slicing criterion are defined as the attributes of that variable class. Because the
behavioural analysis of domain-specific legacy systems is behind the analysis of
structural analysis, the operations in variable class are not described. The classification of
classes of HTML legacy system is based on the web pages and their blocks. The
classification of SQL legacy system is two, which is procedure class and database class.
Selected UML diagrams are used to describe the static aspect of domain-specific legacy
systems.
The behavioural stage of UML extraction in this thesis focuses on the operations and
activities of domain-specific legacy systems. When understanding the operations and
activities of domain-specific legacy code, their preconditions and post-conditions must
be presented from the source code. Then those operations and activities are ordered
according to the time and sequence they are executed by. At last, the operation and
activity arraies are presented. Selected UML diagrams describing the dynamic aspect of
domain-specific legacy systems are realised based on those operation and activity
arraies.
The major contribution of this thesis is the presentation of development/
environment-specific models of domain-specific legacy systems and an approach
towards software evolution of domain-specific legacy systems using UML diagrams.
|