Working with Models

General view of HiME
Managing and Viewing models
Working with Inheritance
i* Framework

The main functionalities are:

Creating extra properties

Some model elements have the option to create some customizable information. These elements are:

For all these elements, the procedure is the same. Extra properties are shown as a separate tab in the creation/edition elements dialog as following...


This is the dialog to create a model, besides to the basic properties tab there is one forfostering the extra properties. Properties are pairs of name value that the user can define. Properties can be created or deleted using and buttons respectively.

Once the property is created, both the name and the value can be modified directly on the grid. The following dialog appears when a new property is going to be created.

Creating an actor

This option is accessible in the popup menu over the model and it is named "Add actor...". This is the only option to create model elements that is also accessible in the option with the same name in menu "Model". The following dialog appears to fill some information about the actor.

Creating a link between actors

There are different menu options to create links between actors. These options depend on the types of the actor that the user wants to connect.
Taking into account that an actor A (source) is linked to actor B(target).

The creations of link options are grouped depending if the option appears on the target or in the source. There is also a constraint that only allows some combination between types of actors.
Links that the option appear on the target: Links that the option appear on the source: In all cases when the options is chosen, there are two ways to continue creating the link: creating a new "other" actor or using an existing one. If we are creating a new "other" actor, this "other" will be the source of the target of the link depending on the creation has been started from the target or source actor respectively. For example, if we are creating an is-a link, this option appears on the actor taking the role of target. Therefore, the "other" actor is the source. In the following example, the actor link is-a is created from the target Travel Agency and the result is shown in the target Family Travel Agency.

The link has been created using the following dialog


The value that can be selected on the field type depends on the type of the element from the link is created.

There is also the possibility of creating the link between two existing actors. In this case, in the same dialog the button Use existing actor allows the user choosing an existing actor from the model that has a compatible type.

Creating dependencies between actors

A dependency can be created at actor level or from an intentional element. For this reason, the option is accessible in the popup menu over the actors and over the intentional elements.

It is possible to create a dependency where the selected actor is the depender using the option "Add dependency link..." and where the actor is de dependee using the option "Add Reversed Depend. Link..."

When the dependency is at actor level, the SR element is not selected.

Creating actor's intentional elements

The intentional elements can be represented as a tree of intentional elements. Therefore, there are an option to create a root and options to create the intermediate and leafs intentional elements.

The option to create a root intentional elements is accessible in actor nodes and it is named "Create i* model root element...".

Button "Accept and Add Sibling" can be used to create another intentional element after the element that is just created.

The option for creating intermediate and leafs is accessible in intentional elements. There are three options depending on the selected intentional element:

Creating root elements and elements using Means-end and decomposition link use the same dialog to create the new root intentional element. The difference is the link created with the new intentional element.

Creating a contribution link use a different dialog because in this case the user is only creating the link between two existing intentional elements.