University of Twente Student Theses


OCL constraints in GROOVE

Thijssen, P.G.H. (2020) OCL constraints in GROOVE.

[img] PDF
Abstract:Graphical modeling has been part of the Computer Science world for quite some time now. The standard graphical modeling language nowadays is the Unified Modeling Language (UML). Before 1997 the UML class diagram had one big shortcoming, since there was no way to create constraints over the values of attributes. That is why UML adopted the Object Constraint Language (OCL): OCL enables developers to create textual constraints over the values of attributes. At the University of Twente, we use GROOVE as a graph-based object oriented verification tool. GROOVE makes use of a type graph that can be compared to a UML class diagram and so it has the same shortcoming as the original UML class diagrams had before 1997. In this work, we have used OCL to represent constraints for GROOVE models. So we have defined transformation rules from OCL to nested graph constraints, which are then represented in GROOVE logic such that we are able to define constraints in GROOVE based on OCL syntax. We have validated our implementation by rebuilding two case studies in both, our implementation and Eclipse OCL. Both systems accept and reject the same models for a given OCL constraint, and so we showed that our implementation is in line with the implementation of Eclipse OCL.
Item Type:Essay (Master)
Faculty:EEMCS: Electrical Engineering, Mathematics and Computer Science
Subject:54 computer science
Programme:Computer Science MSc (60300)
Link to this item:
Export this item as:BibTeX
HTML Citation
Reference Manager


Repository Staff Only: item control page