Abstract
The Object Constraint Language (OCL) is a central element in modeling and transformation languages like UML, MOF, and QVT. Consequently approaches for MDE (Model-Driven Engineering) depend on OCL. However, OCL is present not only in these areas influenced by the OMG but also in the Eclipse Modeling Framework (EMF). Thus the quality of OCL and its realization in tools seems to be crucial for the success of model-driven development. Surprisingly, up to now a benchmark for OCL to measure quality properties has not been proposed. This paper puts forward in the first part the concepts of a comprehensive OCL benchmark. Our benchmark covers (A) OCL engine accuracy (e.g., for the undefined value and the use of variables), (B) OCL engine determinateness properties (e.g., for the collection operations any and flatten), and (C) OCL engine efficiency (for data type and user-defined operations). In the second part, this paper empirically evaluates the proposed benchmark concepts by examining a number of OCL tools. The paper discusses several differences in handling particular OCL language features and underspecifications in the OCL standard.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
O.M.G. (ed.): Object Constraint Language 2.0 (formal/06-05-01). OMG (2006), http://www.omg.org
Warmer, J., Kleppe, A.: The Object Constraint Language: Precise Modeling with UML, 2nd edn. Addison-Wesley, Reading (2003)
ATL-Team: ATL Development Tools (2008), http://www.sciences.univ-nantes.fr/lina/atl/atldemo/adt
MDT-OCL-Team: MDT OCL (2008), http://www.eclipse.org/modeling/mdt/?project=ocl
Ziemann, P., Gogolla, M.: Extended with Temporal Logic. In: Broy, M., Zamulin, A.V. (eds.) PSI 2003. LNCS, vol. 2890, pp. 351–357. Springer, Heidelberg (2004)
Flake, S., Müller, W.: An OCL Extension for Real-Time Constraints. In: Clark, A., Warmer, J. (eds.) Object Modeling with the OCL. LNCS, vol. 2263, pp. 150–171. Springer, Heidelberg (2002)
Dresden-OCL-Team: Dresden OCL Toolkit (2008), http://dresden-ocl.sourceforge.net/
Chiorean, D.: OCLE-Team: Object Constraint Language Environment 2.0 (2008), http://lci.cs.ubbcluj.ro/ocle/
Kleppe, A., Warmer, J.: Octopus: OCL Tool for Precise UML Specifications (2008), http://octopus.sourceforge.net/
RoclET-Team: Welcome to RoclET (2008), http://www.roclet.org/
Gogolla, M., Büttner, F., Richters, M.: USE: A UML-Based Specification Environment for Validating UML and OCL. Science of Computer Programming 69, 27–34 (2007)
Kermeta-Team: Kermeta: Breathe Life into your Metamodels (2008), http://www.kermeta.org/
Akehurst, D., Patrascoiu, O.: KMF (Kent Modeling Framework) OCL Library (2008), http://www.cs.kent.ac.uk/projects/ocl/tools.html
Hein, C., Ritter, T., Wagner, M.: Open Source Library for OCL (OSLO) (2008), http://oslo-project.berlios.de/
VMTS-Team: Visual Model and Transformation System (VMTS) (2008), http://vmts.aut.bme.hu/
Gogolla, M., Kuhlmann, M., Büttner, F.: Sources for a Benchmark for OCL Engine Accuracy, Determinateness, and Efficiency, pages 242 (2008), http://www.db.informatik.uni-bremen.de/publications/Gogolla_2008_BMSOURCES.pdf
Büttelmann, B., Hamann, L., Jolk, F., Sun, B., Wang, H., Xia, L.: Evaluating a Benchmark for OCL Engine Accuracy, Determinateness, and Efficiency, pages 69 (2008), http://www.db.informatik.uni-bremen.de/publications/Buettelmann_2008_BMEVAL.pdf
Kuhlmann, M., Gogolla, M.: Analyzing Semantic Properties of OCL Operations by Uncovering Interoperational Relationships. In: Electronic Communications of the EASST, UML/MoDELS Workshop on OCL (OCL4ALL 2007) , vol. 9, pages 17 (2008), http://eceasst.cs.tu-berlin.de/index.php/eceasst
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Gogolla, M., Kuhlmann, M., Büttner, F. (2008). A Benchmark for OCL Engine Accuracy, Determinateness, and Efficiency. In: Czarnecki, K., Ober, I., Bruel, JM., Uhl, A., Völter, M. (eds) Model Driven Engineering Languages and Systems. MODELS 2008. Lecture Notes in Computer Science, vol 5301. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-87875-9_32
Download citation
DOI: https://doi.org/10.1007/978-3-540-87875-9_32
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-87874-2
Online ISBN: 978-3-540-87875-9
eBook Packages: Computer ScienceComputer Science (R0)