Abstract
In recent years, OCL advanced from a language used to constrain UML models to a constraint language that is applied to various modelling languages. This includes Domain Specific Languages (DSLs) and meta-modelling languages like MOF or Ecore. Consequently, it is rather common to provide variability for OCL parsers to work with different modelling languages. A second variability dimension relates to the technical space that models are realised in. Current OCL interpreters do not support such variability as their implementation is typically bound to a specific technical space like Java, Ecore, or a specific model repository. In this paper we propose a generic adaptation architecture for OCL that hides models and model instances behind well-defined interfaces. We present how the implementation of such an architecture for DresdenOCL enables reuse of the same OCL interpreter for various technical spaces and evaluate our approach in three case studies.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
OMG: Object Constraint Language, Version 2.2. Object Management Group (OMG), Needham (February 2010)
OMG: Unified Modeling LanguageTM, OMG Available Specification, Version 2.2. Object Management Group (OMG), Needham (February 2009)
Warmer, J., Kleppe, A.: The Object Constraint Language - Getting Your Models Ready for MDA, 2nd edn. Pearson Education Inc., Boston (2003)
Akehurst, D., Howells, W., McDonald-Maier, K.: UML/OCL - Detaching the Standard Library
Loecher, S., Ocke, S.: A Metamodel-based OCL-compiler for UML and MOF. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863. Springer, Heidelberg (2003)
Eclipse Model Development Tools, http://www.eclipse.org/modeling/mdt/
Amelunxen, C., Königs, A., Rötschke, T., Schürr, A.: Metamodeling with MOFLON. In: Schürr, A., Nagl, M., Zündorf, A. (eds.) AGTIVE 2007. LNCS, vol. 5088, pp. 573–574. Springer, Heidelberg (2008)
Demuth, B., Wilke, C.: Model and Object Verification by Using Dresden OCL. In: Proceedings of the Russian-German Workshop Innovation Information Technologies: Theory and Practice, July 25-31. Ufa State Aviation Technical University, Ufa (2009)
Arnold, D.: C# Compiler Extension to Support the Object Constraint Language Version 2.0. Master Thesis, Carleton University, Ottawa, Ontario (2004)
Heidenreich, F., Wende, C., Demuth, B.: A Framework for Generating Query Language Code from OCL Invariants. In: Akehurst, D.H., Gogolla, M., Zschaler, S. (eds.) Ocl4All - Modelling Systems with OCL. ECEASST, vol. 9. Technische Universität, Berlin (2008)
Sakr, S., Gaafar, A.: Towards Complete Mapping between XML/XQuery and UML/OCL. In: Proceedings of the IADIS e-society 2004 conference (ES 2004), Avila, Spain. (2004)
Bräuer, M., Demuth, B.: Model-Level Integration of the OCL Standard Library Using a Pivot Model with Generics Support. In: Akehurst, D.H., Gogolla, M., Zschaler, S. (eds.) Ocl4All - Modelling Systems with OCL. ECEASST, vol. 9. Technische Universität, Berlin (2008)
Akehurst, D., Patrascoiu, O.: Ocl 2.0 - Implementing the Standard for Multiple Metamodels. In: OCL2.0 - Industry standard or scientific playground? - Proceedings of the UML 2003 Workshop, pp. 19–25 (2003) (Citeseer)
DresdenOCL, http://dresden-ocl.sourceforge.net/
OMG: Meta-Object Facility (MOF) Core Specification, Version 2.0. Object Management Group (OMG) (January 2006)
Kurtev, I., Bézivin, J., Aksit, M.: Technological spaces: An initial appraisal. In: CoopIS, DOA (2002)
Bézivin, J., Kurtev, I.: Model-based technology integration with the technical space concept. In: Metainformatics Symposium (2005) (Citeseer)
Eclipse Modeling Framework (EMF) Project, http://www.eclipse.org/modeling/emf/
Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, A.: Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-0211990, Software Engineering Institute (1990)
Kolovos, D., Paige, R., Polack, F.: Detecting and Repairing Inconsistencies across Heterogeneous Models. In: Proceedings of the 2008 International Conference on Software Testing, Verification, and Validation, pp. 356–364. IEEE Computer Society, Los Alamitos (2008)
Szyperski, C.: Component Software: Beyond Object-Oriented Programming. Addison-Wesley Longman Publishing Co., Inc., Boston (2002)
ISO: Payments Standards - Initiation - UNIFI (ISO 20022) Message Definition Report. International Organization for Standardization (ISO), Geneva (October 2006)
EPC: SEPA Business-To-Business Direct Debit Scheme Customer-To-Bank Implementation Guidelines, Version 1.3. Number EPC131-08. European Payments Council (EPC), Brussels (October 2009)
Euro Banking Association (EBA), https://www.abe-eba.eu/
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns - Elements of Reusable Object-Oriented Software, 2nd edn. Addison-Wesley Professional, Indianapolis (1995)
Gogolla, M., Büttner, F., Richters, M.: USE: A UML-based Specification Environment for Validating UML and OCL. Science of Computer Programming 69(1-3), 27–34 (2007)
Occello, A., Dery-Pinna, A.M., Riveill, M.: Validation and Verification of an UML/OCL Model with USE and B: Case Study and Lessons Learnt. In: Proceedings of the Software Testing Verification and Validation Workshop, ICSTW 2008. IEEE International Conference on Software Testing, Verification, and Validation (ICST), Lillehammer, Norway, pp. 113–120. IEEE Digital Library (April 2008)
OCLE2.0 - Object Constraint Language Environment, http://lci.cs.ubbcluj.ro/ocle/
MIP OCL Parser (MIP MDA Tools), http://mda.cloudexp.com/
Kolovos, D.S., Paige, R.F., Polack, F.A.C.: Towards Using OCL for Instance-Level Queries in Domain Specific Languages. ECEASST, vol. 5. Technische Universität, Berlin (2006)
Damus, C.W.: MDT OCL Goes Generic - Introduction to OCL and Study of the Generic Metamodel and API. In: EclipseCon 2008, Slides of the presentation (2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Wilke, C., Thiele, M., Wende, C. (2010). Extending Variability for OCL Interpretation. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds) Model Driven Engineering Languages and Systems. MODELS 2010. Lecture Notes in Computer Science, vol 6394. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-16145-2_25
Download citation
DOI: https://doi.org/10.1007/978-3-642-16145-2_25
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-16144-5
Online ISBN: 978-3-642-16145-2
eBook Packages: Computer ScienceComputer Science (R0)