OCL’s contribution to the definition of constraint languages is twofold: the identification of core concepts for a constraint language suitable for object-oriented modeling; a developer-friendly notation for that language, as an alternative to traditional mathematical syntax. Whilst the former is an important contribution the latter is more questionable. Not only is notation often a matter of taste, but it would also be desirable to freely mix notations, allowing the most appropriate notation to be chosen for the task at hand or for notations to be seamlessly interchanged. A further problem when writing constraints is scalability: the number and complexity of constraints can be overwhelming for a model of a real-sized system, and current techniques for organizing the constraint space of a model are limited. The contribution of this paper is to provide a notation, constraint trees, which can be used both for mixing different notations and for organizing the constraint space of a model. Constraint trees achieve this by revealing aspects of the underlying abstract syntax structure of a constraint. The paper demonstrates the utility of the notation using an example from the telecomms networks domain, and shows how constraint trees can be used to write a constraint involving a mix of textual OCL notation, constraint diagrams, object diagrams and rich pictures. This also demonstrates the organizational role of constraint trees. An outline meta-model definition of constraint trees is provided and issues surrounding their tooling is discussed.
Unable to display preview. Download preview PDF.
- [CEF+99]A. Clark, A. Evans, R. France, S. Kent, and B. Rumpe. The puml response to the omg uml 2.0 rfi. Available from http://www.puml.org/, December 1999.
- [CEK+00]A. Clark, A. Evans, S. Kent, S. Brodsky, and S. Cook. A feasibility study in rearchitecting uml as a family of languages using a precise oo metamodeling approach. http://www.puml.org/mmt.zip, September 2000.
- [CEK01]A. Clark, A. Evans, and S. Kent. The meta-modeling language calculus: Foundation semantics for uml. In ETAPS FASE Conference 2001, LNCS. Springer-Verlag, April 2001.Google Scholar
- [EK99]A. Evans and S. Kent. Core meta-modelling semantics of UML: The pUML approach. In Robert France and Bernhard Rumpe, editors, UML’99-The Unified Modeling Language. Beyond the Standard. Second International Conference, Fort Collins, CO, USA, October 28–30. 1999, Proceedings, volume 1723 of LNCS, pages 140–155. Springer, 1999.Google Scholar
- [Ken97]S. Kent. Constraint Diagrams: Visualizing Invariants in OO Modelling. In Proceedings of OOPSLA97, pages 327–341. ACM Press, October 1997.Google Scholar
- [KG98]S. Kent and Y. Gil. Visualising Action Contracts in OO Modelling. In IEE Proceedings: Software, number 2–3 in 145, pages 70–78, April 1998.Google Scholar
- [KH99]S. Kent and J. Howse. Mixing visual and textual constraint languages. In R. France and B. Rumpe, editors, UML’99-The Unified Modeling Language. Beyond the Standard. Second International Conference, Fort Collins, CO, USA, October 28–30. 1999, Proceedings, volume 1723 of LNCS, pages 384–398. Springer, 1999.Google Scholar
- [RG00]M. Richters and M. Gogolla. Validating UML models and OCL constraints. In A. Evans and S. Kent, editors, The Third International Conference on the Unified Modeling Language (UML’2000), York, UK, October 2–6. 2000, Proceedings, LNCS. Springer, 2000.Google Scholar