Managing Design-time Uncertainty in OCL Expressions

By: Robert Clarisó, Lola Burgueño, Jordi Cabot


During the software design phase software models are created. These models must be eventually complete and correct. But achieving this state is challenging, and even more in early phases of development, where there are still plenty of unknown details about the system-to-be. This design-time uncertainty especially hinders the definition of those model elements that require a high level of precision: the system’s business rules. Nevertheless, waiting for the requirements to be clear to build a complete model is not an efficient option, and often not even a feasible one as this could delay too much the whole project. Instead, uncertain models (i.e., models where only some details are present or are present up to a certain degree of certainty) can be used to advance other aspects of the development process (e.g., building a partial prototype that can help us explore architectural decisions) while, in parallel, we keep refining the models with the stakeholders. This paper proposes an extension to the OCL language to be able to specify uncertain OCL constraints and shows how we could operate with them to perform preliminary quality checks on the partial business rules. Moreover, we propose a prototype tool implementing this approach and discuss potential extensions.


design, uncertainty, OCL.

Cite as:

Robert Clarisó, Lola Burgueño, Jordi Cabot, “Managing Design-time Uncertainty in OCL Expressions”, Journal of Object Technology, Volume 21, no. 4 (October 2022), pp. 4:1-10, doi:10.5381/jot.2022.21.4.a8.

PDF | DOI | BiBTeX | Tweet this | Post to CiteULike | Share on LinkedIn

The JOT Journal   |   ISSN 1660-1769   |   DOI 10.5381/jot   |   AITO   |   Open Access   |    Contact