K Semantics for OCL - a Proposal for a Formal Definition for OCL

Vlad Rusu 1 Dorel Lucanu 2
1 DART - Contributions of the Data parallelism to real time
LIFL - Laboratoire d'Informatique Fondamentale de Lille, Inria Lille - Nord Europe
Abstract : Object Constraint Language (OCL) is a formal language used to describe expressions like constraints or queries over objects in a UML model. The constraints are used to give an exact description of the information contained in the models and the queries are used to analyze these models and to validate them. The evaluation of the OCL expressions does not have side effects. In spite of the fact OCL has defined more than ten years ago, it is not yet widely adopted in industry and one reason for that is the lack of proper and integrated tool support for OCL. Another reason is that although designed to be a formal language, experience has shown that the language definition is not precise enough. Even the last OMG standard includes underspecified things and some inconsistencies. In this paper we present an executable formal semantics for a representative fragment of OCL described in K, a semantic framework suitable for defining programming languages, type systems, formal analysis tools and calculi. K has been already successfully used for giving formal definitions to several programming languages and developing analysis tools for these languages. Therefore having a formal definition for OCL in this framework has several advantages including executability (the K semantics of OCL can be used to evaluate OCL expressions for different models), an easy integration with model languages and object-oriented languages defined in K.
Document type :
Conference papers
Complete list of metadatas

https://hal.inria.fr/hal-00641199
Contributor : Mister Dart <>
Submitted on : Tuesday, November 15, 2011 - 6:53:52 AM
Last modification on : Thursday, February 21, 2019 - 10:52:48 AM

Identifiers

  • HAL Id : hal-00641199, version 1

Collections

Citation

Vlad Rusu, Dorel Lucanu. K Semantics for OCL - a Proposal for a Formal Definition for OCL. 2nd International K Workshop, Aug 2011, Cheile Gradistei (Brasov), Romania. ⟨hal-00641199⟩

Share

Metrics

Record views

1153