An Executable UML with OCL-based Action Semantics Language

Executable UML allows precisely describing the software system at a higher level of abstraction. It bridges the semantics gap between the UML design models and the implementation. The executable models can be translated to a less abstract programming language completely or executed in a virtual machine directly. Existing executable UMLs lack a formal and standardized Action Semantics Language (ASL). Object Constraint Language (OCL), as a formal specification language, is a standard published by Object Management Group (OMG) along with UML. It is used to describe constraints for UML models. In this paper, we propose an executable UML with OCL-based ASL (OxUML) by extending OCL to support actions with side effects. We present its support environment-UML Virtual Machine (UVM) and suggest a Model-Driven Development (MDD) process with OxUML. We also introduce an example to demonstrate how to build and process OxUML models.

[1]  David Harel,et al.  Rhapsody: A Complete Life-Cycle Model-Based Development System , 2002, IFM.

[2]  Stephen J. Mellor,et al.  Executable UML - A Foundation for Model-Driven Architecture , 2002, Addison Wesley object technology series.

[3]  Martin Gogolla,et al.  Essentials of the 3rd UML Workshop in Software Model Engineering (WiSME'2004) , 2004, UML Satellite Activities.

[4]  A. Silva,et al.  Executing UML Models , 2004 .

[5]  Lei Zhang,et al.  OCL4X: An Action Semantics Language for UML Model Execution , 2007, 31st Annual International Computer Software and Applications Conference (COMPSAC 2007).