IEEE Access (Jan 2024)

Definitions and Computational Properties of OCL: A Systematic Review

  • Goran Rajic,
  • Vlado Sruk

DOI
https://doi.org/10.1109/ACCESS.2024.3428865
Journal volume & issue
Vol. 12
pp. 99704 – 99738

Abstract

Read online

Object Constraint Language (OCL) plays a pivotal role in Model Driven Architecture (MDA), an important applied software engineering concept created over a quarter of a century ago. The expressiveness and precision of the primary specification language in MDA, Unified Modeling Language (UML), significantly stems from its joint use with the OCL. The semantic content of OCL has undergone a significant evolution over the past two decades, leading to the creation of eight versions of language specifications defined by the Object Management Group (OMG) standardization process. Despite the undeniable importance of OCL, there is a substantial void in literature that presents the issues of OCL semantics in a comprehensive and detailed way. This paper aims to summarize the available knowledge about definitions of OCL semantics and computational properties of the language. Using systematic review methodology, we created and answered questions about the properties of OCL definitions and the results of the computational properties of the whole language and its fragments. Based on newly synthesized information, the paper discusses the root causes of the issues found and proposes a course of action to address them collectively in the future. The presented summary encapsulates knowledge about two foundational themes of OCL that will help practitioners use it effectively and support researchers in its evolution and standardization.

Keywords