-
Notifications
You must be signed in to change notification settings - Fork 0
Quickstart
The following quickstart guide walks you through the basic modeling scenarios of PROxIMA.
Contents:
PROxIMA was built with Eclipse Sirius. Therefore, to work with it, a Sirius Modeling project has to be created first. Switch to the Modeling perspective of your Eclipse instance, and create a new Sirius > Modeling project. Give it a name and press Finish.

The Model Explorer on the right will show the minimal Sirius Modeling project created. In order to work with the PROxIMA, you have to enable its domain model and its representations. Double click the representations.aird file in order to do so.

In the Models section, press New, and select the proxima formalism. (The figure below is obsolete! The root metamodel previously called processmodel has been renamed to proxima.)

As a result, the PROxIMA representations will be listed in the Representations section.

To enable these, click on the PROxIMA (disabled) element, and click Enable on the right side.
In the Model Explorer, expand the .proxima file. A set of representations are now ready to be used for modeling the process and its surroundings.

To start modeling processes, create a Process tree represenatation, and FTG representation.
In the Process tree, create a new element, i.e., a new Process model by selecting the Create new Process Model from the context menu.

Give it a name in the Properties > Semantic view. (If the Properties view is not open by default, go to Window > Show View > Other.., type "Properties", and select General > Properties. This is a standard Eclipse mechanism.
The new process model will show up in the Model Explorer. The process-specific representations can be activated on it.

Create a new Process View. A modeling canvas will open up, with a toolbar on the right. Let's model a simple process.

Apart from the canvas, the newly created elements are showing up on the left side, in the Model Explorer too. Use the Properties > Semantic view on the bottom to access the properties for the active elements on the canvas.
The FTG can be modeled either in the FTG view, or, alternatively, alongside the process. In order to achieve the latter, enable the Formalisms layer in the process modeling view. (Click the canvas to make the PROxIMA model the active element. The top menu will then show the button you need.)

The palette on the right side now shows FTG-specific elements too.

Extend the previously modeled process by adding objects to it, and create a minimalistic FTG to type the process.

Modifying the FTG in this view will obviously propagate the changes to the dedicated FTG view too. Just like you created the ProcessTree view, right click on the Proxima Model to create the FTG View under "New Representations".

The reason to model the FTG alongside with the process, in one single view, is that the Typed by relations can be defined only in the process view in a graphical form.
There are two convenience views, however to help with this issue: the Activity typing table and the Object typing table.
Activate them on the Proxima Model. (Not on the Process view!)

You will see two tables with activities and objects in their rows, and transformations and formalisms in their columns, respectively. Move them around to a comfortable position.

These tables are editing tables. That is, they allow to modify their content and express typing relationships this way. Let's extend the previous model by a new trace model and corresponding Trace formalism.

Now define the typing between these two by clicking the [process1.transformationTrace, trace] cell in the Object typing table, and putting an X there.

The typing relation will be persisted and propagated to every view.

There are three types of activities supported by PROxIMA. Manual and automated activities are atomic ones, and always typed by transformations of the FTG. Compound activities are abstractions of multiple, coupled activities, and are typed by processes. A process, is just a fairly large and complex transformation, after all. To represent sub-processes, compound activities can be used.
Let's modify the model by introducing a compound activity. In order to properly type it, a new process instance will be required too. Create this in the Process Tree, presented in the first step of this tutorial. After creating the compound activity and the new process, the activity now can be typed by the process. This is currently achieved by clicking on the compound activity, and looking up its typing information in Properties > Semantic > Typed by.

Now, double clicking the compound activity will open up the typing process' view. If there is no such view yet, the editor will suggest to create one.

A new process view opens up automatically:

Process models and the FTG can be validated by right clicking on the canvas and selecting the Validate diagram menu. Warnings and Errors are presented in the Problems view, if there are any.
The recently created empty process will yield multiple errors:

Adding an Initial node, an Activity, and a Final node will make this errors disappear after a new validation.

Some new errors appear, which can be fixed by connecting the process, and typing the activity as discussed before.
For a complete list of validation rules, consult THIS page.