Abstract
The growing interest in the MDA (Model-Driven Architecture) and MDD (Model-Driven Development) approaches has largely increased the number of tools and methods including code-generation capabilities. Given a platform-independent model (PIM) of an application, these tools generate (part of) the application code either by defining first a platform-specific model or by executing a direct PIM to code transformation. However, current tools present several limitations regarding code generation of the integrity constraints defined in the PIMs. This paper compares these tools and shows that they lack expressiveness in the kind of constraints they can handle or efficiency in the code generated to verify them. Based on this evaluation, the features of an ideal code-generation method for integrity constraints are established. We believe such a method is required to extend MDA adoption in the development of industrial projects, where constraints play a key role.
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Ahrendt, W., Baar, T., Beckert, B., Bubel, R., Giese, M., Hähnle, R., Menzel, W., Mostowski, W., Roth, A., Schlager, S., Schmitt, P.H.: The KeY tool, Integrating object oriented design and formal verification. Software and Systems Modeling 4, 32–54 (2005)
Babes-Bolyai. Object Constraint Language Environment 2.0, http://lci.cs.ubbcluj.ro/ocle/
Borland. Bold for Delphi, http://info.borland.com/techpubs/delphi/boldfordelphi/
Borland. Together Architect (2006), http://www.borland.com/us/products/together/
Cabot, J., Teniente, E.: Determining the Structural Events that May Violate an Integrity Constraint. In: Baar, T., Strohmeier, A., Moreira, A., Mellor, S.J. (eds.) UML 2004. LNCS, vol. 3273, pp. 173–187. Springer, Heidelberg (2004)
Cabot, J., Teniente, E.: Computing the Relevant Instances that May Violate an OCL constraint. In: Pastor, Ó., Falcão e Cunha, J. (eds.) CAiSE 2005. LNCS, vol. 3520, pp. 48–62. Springer, Heidelberg (2005)
Cabot, J., Teniente, E.: Incremental Evaluation of OCL Constraints. In: Dubois, E., Pohl, K. (eds.) CAiSE 2006. LNCS, vol. 4001, pp. 81–95. Springer, Heidelberg (2006)
Ceri, S., Fraternali, P., Bongio, A., Brambilla, M., Comai, S., Matera, M.: Designing Data-Intensive Web Applications. Morgan Kaufmann, San Francisco (2002)
Compuware. OptimalJ, http://www.compuware.com/products/optimalj/
Demuth, B., Hussmann, H., Loecher, S.: OCL as a Specification Language for Business Rules in Database Applications. In: Gogolla, M., Kobryn, C. (eds.) UML 2001. LNCS, vol. 2185, pp. 104–117. Springer, Heidelberg (2001)
Dresden. Dresden OCL Toolkit, http://dresden-ocl.sourceforge.net/index.html
Dzidek, W.J., Briand, L.C., Labiche, Y.: Lessons Learned from Developing a Dynamic OCL Constraint Enforcement Tool for Java. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 10–19. Springer, Heidelberg (2006)
EmPowerTec. OCL-AddIn for Rational Rose, http://www.empowertec.de/products/rational-rose-ocl.htm
Fons, J., Pelechano, V., Albert, M., Pastor, Ó.: Development of Web Applications from Web Enhanced Conceptual Schemas. In: Song, I.-Y., Liddle, S.W., Ling, T.-W., Scheuermann, P. (eds.) ER 2003. LNCS, vol. 2813, pp. 232–245. Springer, Heidelberg (2003)
Gentleware. Poseidon for UML v. 4, http://www.gentleware.com
Gogolla, M., Bohling, J., Richters, M.: Validation of UML and OCL Models by Automatic Snapshot Generation. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 265–279. Springer, Heidelberg (2003)
Interactive Objects. ArcStyler v.5, http://www.interactive-objects.com/
ISO/TC97/SC5/WG3: Concepts and Terminology for the Conceptual Schema and Information Base. ISO (1982)
Kent Modelling Framework. Kent OCL Library, http://www.cs.kent.ac.uk/projects/kmf/
Klasse Objecten. Octopus: OCL Tool for Precise UML Specifications, http://www.klasse.nl/octopus/index.html
Mellor, S.J., Balcer, M.J.: Executable UML. Object Technology Series. Addison-Wesley, Reading (2002)
No Magic Inc. MagicDraw UML v. 10.5, http://www.magicdraw.com/
Objects by Design. List of UML tools, Available: http://www.objectsbydesign.com/
OCL4Java, http://www.ocl4java.org
Olivé, A.: Conceptual Schema-Centric Development: A Grand Challenge for Information Systems Research. In: Pastor, Ó., Falcão e Cunha, J. (eds.) CAiSE 2005. LNCS, vol. 3520, pp. 1–15. Springer, Heidelberg (2005)
OMG: UML 2.0 OCL Specification. Adopted Specification (ptc/03-10-14) (2003)
OMG: UML 2.0 Superstructure Specification. Adopted Specification (ptc/03-08-02) (2003)
OMG: MDA Guide Version 1.0.1 (2003)
Softeam. Objecteering/UML v. 5.3, http://www.objecteering.com/products.php
Software, R. Rational Rose, http://www-306.ibm.com/software/rational/
Tariq, N.A., Akhter, N.: Comparison of Model Driven Architecture (MDA) based tools. In: Proc. 13th Nordic Baltic Conference (NBC), IFMBE Proceedings, vol. 9 (2005)
Teichroew, D.: Methodology for the Design of Information Processing Systems. In: Proc. 4th Australian Computer Conference, pp. 629–634 (1969)
Türker, C., Gertz, M.: Semantic integrity support in SQL:1999 and commercial (object-) relational database management systems. The VLDB Journal 10, 241–269 (2001)
Verheecke, B., Straeten, R.V.D.: Specifying and implementing the operational use of constraints in object-oriented applications. In: Proc. Tools Pacific 2002, pp. 23–32 (2002)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Cabot, J., Teniente, E. (2006). Constraint Support in MDA Tools: A Survey. In: Rensink, A., Warmer, J. (eds) Model Driven Architecture – Foundations and Applications. ECMDA-FA 2006. Lecture Notes in Computer Science, vol 4066. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11787044_20
Download citation
DOI: https://doi.org/10.1007/11787044_20
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-35909-8
Online ISBN: 978-3-540-35910-4
eBook Packages: Computer ScienceComputer Science (R0)