Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Papyrus/UserGuide/ModelExecution
MOKA
Moka is a Papyrus module for execution of UML models, which natively includes an execution engine complying with OMG standards fUML and PSCS (which deal with execution semantics of UML). Moka is integrated with the Eclipse debug framework to provide control, observation and animation facilities over executions. Moka can be easily extended to support alternative execution semantics, and thereby be adapted to multiple usage scenarios and domains.
Installation
Under construction
Key Features
Based on standards
Moka provides basic execution and debugging facilities for foundational UML (fUML) and its extensions for composite structures (PSCS), an executable subset of UML with precise and standard semantics. This subset is expressive enough to model structure and behavior of systems involving concurrent communicating, independently of technological platform details.
Interactive
Moka provides debug and animation facilities through a contribution and an extension to the Eclipse debug API. It is thereby possible to control execution of models(e.g., suspending/resuming executions after breakpoints have been encountered) as well as to observing states of executed models at runtime (e.g., emphasizing graphical views of model elements on which execution has suspended, retrieving and displaying any state information about the runtime manifestation of these model elements).
Extensible
Moka can be easily extended to address new execution semantics. This can be done through extension points enabling registration of executable model libraries (e.g., new MoCs, trace libraries, etc.) or simply tool-level extensions of the execution engine.
Getting started
Under construction
Your first executable model
Under construction
Selecting the execution engine
Since Moka is an extensible execution framework, multiple execution engines can be registered in your environment. Before starting an execution, you should make sure that the appropriate execution engine is selected. To do so, go to Eclipse preferences, as shown in the figure below.
Once the preference page is open, go to Papyrus/Moka, as shown in the figure below. Moka is released with 3 execution engines. There are two versions of the Precise Semantics of UML Composite Structures (PSCS [link to OMG webpage available soon]) execution engine (one is multi-threaded, with on thread per active object, and the other one is single-threaded). There is also an implementation of foundational UML (fUML, [1]) execution engine.
To make sure that the executable model described in this tutorial properly executes, you should select one of the two PSCS engines, press Apply and then OK
Starting an execution with a launch configuration
Under construction
Managing breakpoints
Under construction
Controlling Executions
Under construction
Configuring animation
Under construction