also maintain the traceability between elements of
each layer. Legacy systems exist and it is necessary
not only to see development cycle from a top-down
perspective but also with integration in mind.
Figure 5: A QVT Relations diagram (made with prototype
application).
With the above referenced tools it is not
possible, for instance, to declare that a class in one
PIM model is mapped to a different named class in
two PSM models that have also different names in
the implemented classes. Other existent tools (e.g.,
Codagen (Codagen, 2006)) focus on automatic code
or models generation. With these tools a part of the
project is automatically generated between phases.
Again this kind of work is necessary but not
sufficient because we need to continually add
changes to different levels and see what impact
those changes have in the overall project.
6 CONCLUSION
The actual variety and proliferation of competing
CASE tools (Baik et al., 2000) may represent a
problem because the produced artefacts have to be
updated along their lifecycles. Notations have been
replaced, programming languages and
methodologies have evolved significantly but, at
large extent, users are still responsible of
maintaining artefacts actualized. Existent tools can
do some kind of synchronization but the ways for
achieving this are tool dependent and with difficult
customization.
The convergence of modelling notations to UML
was an important factor because it gives some
stability to this field. Development teams are still
adopting UML as the notation and practical issues
are emerging with more experience and new releases
of the standard. Synchronization, as defined here,
presents practical difficulties that must be
overridden in order to speed up the application
evolution, especially in large projects. A new class
of tools is necessary, one that could synchronize all
artefacts of the project, using a uniform way of
achieving it. These new tools can be integrated in
existing CASE tools, or operated as standalone
applications. Instead of doing just a predefined set of
synchronizations between code and models, these
tools should perform a user defined set of
verifications and trigger a related set of actions that
will leave the system in a coherent state.
An application prototype was developed wich uses
QVT as its fundamental reference. The application
was implemented using the Microsoft Visual Studio
.NET 2005 Specific Domain Language SDK and is
currently under test.
REFERENCES
Baik, J., Boehm, B., 2000. Empirical Analysis of CASE
Tool Effects on Software Development Effort. Center
for Software Engineering, http://sunset.usc.edu/
publications/TECHRPTS/2000/usccse2000-504/
usccse2000-504.pdf (2000)
Bettin, J. et al., 2003. Generative Model Transformer: An
Open Source MDA Tool Initiative. OOPSLA,
http://www.softmetaware.com/oopsla2003/pos10-
bettin.pdf (2003)
Borland, 2006. Borland Together Technologies,
http://www.borland.com/us/products/
together/index.html
Codagen, 2006. http://www.codagen.com/
Dollard, K.2004. Code Generation in Microsoft .NET.
Apress.
Gardner, T. et al. 2003. A review of OMG MOF 2.0 Query
/ Views / Transformations Submissions and
recommendations towards the final Standard.
http://www.zurich.ibm.com/ pdf/ebizz/gardner-etal.pdf
Herrington, J. 2003. Code Generation In Action. Manning
Pub. Co (2003)
IBM, 2003. MOF Query / Views / Transformations First
revised Submission, http://www.omg.org /docs/ad/03-
08-03.pdf
Iivari, J. 1996. Communications of the ACM. Why Are
CASE Tools Not Used, Oct.1996, Vol.39, Nr.10, Pgs.
94-103, Association for Computing Machinery
Jackson, M. 1975. Principles of Program Design,
Academic Press
Martin, J. 1989. Information Engineering: Introduction,
Prentice Hall
Microsft, 2006. Microsoft Visual Studio Developer
Center, http://msdn.microsoft.com/ vstudio/
OMG: Object Management Group, 2005. MOF QVT Final
Adopted Specification
http://www.omg.org/docs/ptc/05-11-01.pdf
QVTP, 2003. Revised submission for MOF 2.0 Query /
Views / Transformations RFP, Vers. 1.1, QVT-
Partners, http://qvtp.org
Welsh, T., 2003. How Software Modelling Tools Are
Being Used. In Enterprise Architecture Advisory
Service Executive Update Vol. 6, N. 9, 2003-12,
Cutter Consortium.
SYNCHRONIZATION ISSUES IN UML MODELS
611