About the EP Model
The EP model proposes a declarative executable model for engineering object-based systems which achieves executability through a hybrid approach that annotates model elements with OCL code snippets.
(Diagram of the EP Metamodel)
When an EP-system executes, it goes through a number of states. Each state consists of a number of Instances, each belonging to a particular Model. This is similar to a Java program that comprises at run time a number of objects each belonging to one particular class in the system.
The passage from one state to the next is triggered by an Event. An example of an event is the push of a button or a mouse-click. Each event affects some instances in the system. We represent this in an EP-system by an event having children events (via the parent relationship) and by these children events in turn having other child events. This models the propagation of the event through the system.
The effect of an event on a property of an instance is modeled via an impacts link from the event to the property; the link carries a code snippet that expresses the new value of the target property. Generally, the new value depends on other properties. To use these properties in a code snippet, one needs to "feed" the property into the event (via the feeds relationship). Finally the new value of a property may depend on a computed value that depends on several other properties located possibly in other instances. This is represented by properties having other properties as children, and having a code snippet that computes the value of the property in terms of the values of its child properties.
For detailed information on the semantics of the EP model, consult the Technical Report:
Democles is a modeling tool for the EP Model. It is implemented as an Eclipse plugin and provides:
- Graphical editing of applications using the EP model,
- background code generation, and
- immediate feedback on syntactic validity of models and user-supplied code.
The Democles tool can be downloaded from the download page.
Democles includes Documentation that is accessible from Eclipse's Help system.
EP Models and the Democles tool are developed by the members of the DASCOM Project at the University of Luxembourg. The DASCOM Project is the successor to the FACTORS Project and is part of the Laboratory for Advanced Software Systems at the Faculty of Sciences, Technology and Communication.