Abstract

Unified Modeling Language (UML) is widely used for software modeling. UML is not defined precisely enough for unambiguous model execution. Therefore, the first and most important requirement for model execution is precisely modeling the actions. An action takes a set of inputs and converts them into a set of outputs, where either or both sets may be empty. It is the fundamental unit of behavior specification. So a precise action semantics language (ASL) and a specified syntax are required. Unfortunately, actions defined in UML do not have a concrete syntax and OMG does not recommend a specific language, so there is not a standard ASL. Object Constraint Language (OCL) is a formal language used to describe expressions on UML models. It is a specification language, but not a programming language. The high overlap between ASL and OCL suggests that OCL can be used partly for ASL. OCL for Execution (OCL4X) is defined based on OCL to implement operations that have side effects and provide the ability for model execution. By mapping from ASL to OCL, we use OCL to express some actions in ASL. New syntax constructs are added to the standard OCL, together with their semantics. Finally, an example is given to show how to use OCL4X.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call