Abstract
The Object Constraint Language (OCL) offers so-called non-deterministic constructs which are often only poorly understood even by OCL experts. They are widely ignored in the OCL literature, their semantics given in the official language description of OCL is ill-defined, and none of today’s OCL tools support them in a consistent way.
The source of the poor understanding and ill-defined semantics is, as identified in this paper, OCL’s attempt to adopt the concept of non-determinism from other specification languages with fundamentally different semantical foundations. While this insight helps to improve the understanding of non-deterministic constructs it also shows that there are some formidable obstacles for their integration into OCL.
However, in some cases, non-deterministic constructs can be read as abbreviations for more complex deterministic constructs and can help to formulate a specification in a more understandable way. Thus, we suggest to integrate non-deterministic constructs in other specification languages such as Z, JML, Eiffel whose semantical foundations are similar to those of OCL.
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
Booch, G., Rumbaugh, J., Jacobson, I.: The Unified Modeling Language User Guide. Object Technology Series. Addison-Wesley, Reading (1999)
UML 2.0 Infrastructure Specification – OMG Adopted Specification. OMG Document ptc/03-09-15 (September 2003)
UML 2.0 Superstructure Specification – OMG Adopted Specification. OMG Document ptc/03-08-02 (August 2003)
UML 2.0 OCL Specification – OMG Final Adopted Specification. OMG Document ptc/03-10-14 (October 2003)
Overview on current OCL tools, http://www.klasse.nl/ocl/ocl-services.html
Chiorean, D., Bortes, M., Corutiu, D., Sparleanu, R.: UML/OCL tools - objectives, requirements, state of the art – The OCLE experience. In: Proceedings of the 11th Nordic Workshop on Programming and Software Development Tools and Techniques NWPER 2004, vol. 34, pp. 163–180. TUCS General Publication, Turku (2004)
Meyer, B.: Applying “design by contract”. IEEE Computer 25(10), 40–51 (1992)
Morgan, C.: Programming form Specifications. Prentice Hall, Englewood Cliffs (1994)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Baar, T. (2005). Non-deterministic Constructs in OCL – What Does any() Mean. In: Prinz, A., Reed, R., Reed, J. (eds) SDL 2005: Model Driven. SDL 2005. Lecture Notes in Computer Science, vol 3530. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11506843_3
Download citation
DOI: https://doi.org/10.1007/11506843_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-26612-9
Online ISBN: 978-3-540-31539-1
eBook Packages: Computer ScienceComputer Science (R0)