MDA and integration of legacy systems
Abstract
OMG’s Model Driven ArchitectureTM, MDATM, is the new paradigm of software
development and a new way of writing specifications and developing applications, based
on a platform-independent model (PIM). MDA divorces implementation details from
business functions. Thus, it is not necessary to repeat the process of modeling of
applications or system’s functionality and behavior each time a new technology comes
along. With the MDA, it is easier to integrate the new applications with the old
application that is already installed.
In the real time distributed telecommunication system, MDA addresses the challenge of
constantly changing infrastructure and promotes application and component reuse and
portability. The success of MDA depends highly on integration of legacy systems in a
MDA context. This activity may include reengineering of code or transforming existing
UML models to MDA context.
Objectives of our thesis are to study the possibility of developing platform independent
models (PIM) from existing UML models, components specified by interfaces in
CORBA IDL and implemented Erlang code. We also studied which aspects of the
context system (a real-time distributed telecommunication application) that can be
specified in a Platform Independent Model and which aspects are left for a Platform
Specific Model (PSM) and coding. For this study purpose, we use some UML models,
IDL interfaces, Erlang code and some use case diagrams in GSN system from Ericsson ‘s
GPRS project.
XMI gives the possibility to perform model exchange and model transformation.
Therefore, we used XMI to develop PIM from the existing UML model, CORBA IDL
interface, and Erlang code in our case study. There are two possible PIMs we can develop
for the GSN legacy systems (the existing UML model, CORBA IDL and Erlang code)
that are, a structural specificationally complete PIM and a structural and external
behavioral specificationally complete PIM.
We have developed a translator to translate CORBA IDL and Erlang code into a UML
model represented in XMI. This model is a structural specificationally complete PIM
since the model is structurally complete with model packaging, class, attribute, operation,
operation’s argument, datatype, stereotype and dependencies. We have also made an
XMI mixer to combine XMI generated by the translator (a structural specificationally
complete PIM) with XMI generated from the existing UML models (that contain external
behavioral aspects) in order to produce a structural and external behavioral
specificationally complete PIM.
The result of our study reveals many problems with the reverse engineering of Erlang
code that uses procedural programming concept. Nevertheless, we found some benefits
of using MDA in software development of legacy systems. The documentation of the
model is always up to date since we can reverse engineer the implemented code into
model whenever we want. Even if generating a behavior complete PIM is difficult, we
can have an updated structural complete PIM. Since documentation is in the high-level
model and is platform independent, then it is possible to transform the model into
multiple platforms or programming languages. We experienced that the success of the
integration of the old applications with the new application is highly dependent on MDA
tools.
Description
Masteroppgave i informasjons- og kommunikasjonsteknologi 2003 - Høgskolen i Agder, Grimstad
Publisher
Høgskolen i AgderAgder University College