Constant innovation of information technology and ever-changing market requirements
relegate more and more existing software to legacy status. Generating software through
reusing legacy systems has been a primary solution and software re-engineering has the
potential to improve software productivity and quality across the entire software life
cycle. The classical re-engineering technology starts at the level of program source code
which is the most or only reliable information on a legacy system. The program
specification derived from legacy source code will then facilitate the migration of
legacy systems in the subsequent forward engineering steps. A recent research trend in
re-engineering area carries this idea further and moves into model driven perspective
that the specification is presented with models.
The thesis focuses on engaging model technology to modernise legacy systems. A
unified approach, REMOST (Re-Engineering through MOdel conStruction and
Transformation), is proposed in the context of Model Driven Architecture (MDA). The
theoretical foundation is the construction of a WSL-based Modelling Language, known
as WML, which is an extension of WSL (Wide Spectrum Language). WML is defined
to provide a spectrum of models for the system re-engineering, including Common
Modelling Language (CML), Architecture Description Language (ADL) and Domain
Specific Modelling Language (DSML). 9rtetaWML is designed for model
transformation, providing query facilities, action primitives and metrics functions. A set
of transformation rules are defined in 9rtetaWML to conduct system abstraction and
refactoring. Model transformation for unifying WML and UML is also provided, which
can bridge the legacy systems to MDA. The architecture and working flow of the
REMOST approach are proposed and a prototype tool environment is developed for
testing the approach. A number of case studies are used for experiments with the
approach and the prototype tool, which show that the proposed approach is feasible and
promising in its domain. Conclusion is drawn based on analysis and further research
directions are also discussed