Using consistency checks

 

Assisted data entry

Objecteering provides a mechanism that lists all the elements that can be selected during a given modeling operation.  This mechanism carries out more than 280 consistency checks in real time on models, which allows you to guarantee the high quality of your models.

 

The assisted data entry mechanism means that you can avoid the following problems:

·         the entry of the same name several times

·         the manual updating of identical names during modifications

·         the entry of inconsistent names

 

 

Example of assisted data entry

Let's imagine that you have just created two non-primitive classes named "C1" and "C2" inside a package, as well as an attribute on the "C1" class, and that you now want to define this attribute's class in its dialog box.

 

Open the attribute's dialog box by double-clicking and then click on the arrow on the right-hand side of the "Class" field, to display possible classes for your attribute (as shown in the screenshot below).

 

The list of possible classes for the attribute

 

As you can see in the above screenshot, a list of possible classes for the attribute is provided. This list contains predefined primitive classes (integer, string, etc.), but does not contain the "C1" nor "C2" classes.  This is logical, since we recommend that only primitive classes can be attributes of other classes.

 

Continue by defining the "C2" class as being "primitive" (by checking the "Primitive" tickbox in the "C2" class' dialog box), and then re-open the attribute's dialog box and have another look at the list of possible classes for your attribute.  The "C2" class is now present in the list of possible classes for the attribute.

 

The "Attribute" dialog box containing the "C2" class in the list of possible classes for the attribute

 

 

Consistency management

All the model elements appearing in all the Objecteering windows are kept permanently consistent.  For example, the name of an operation can appear in a state diagram, a sequence diagram, the auxiliary window and the explorer.  No matter how many times it appears or how many times it may be modified, it is always consistent.

 

 

Example of consistency management

Let's have a look at how changing the name of a class in a class diagram also results in the automatic update of the explorer.

 

The screenshot below presents a class diagram created on a package.  This package contains the "Tea" class, whose name we are going to change to "OrangeJuice".

 

Automatically updating the name of the class

 

Steps:

1.      The "Tea" class exists in the explorer and in the class diagram.

2.      Double-click on the "Tea" class to open the associated dialog box and change its name from "Tea" to "OrangeJuice".

 

The result of this operation is shown below.

 

The class name has been updated in the explorer and the class diagram

 

The modified class name has been taken into account in both the explorer and the class diagram.

 

 

Consistency checks

Objecteering carries out more than 280 consistency checks on a model in real time.  These checks guarantee that the models you build in Objecteering all reach the same high standards of quality.

 

If any problems are encountered, a message appears in the "Audit" tab of the output window.

 

 

Example of a case scenario forbidden by consistency checks

The screenshot below presents an example of an operation forbidden by Objecteering (the creation of an association between the "C1" and the primitive "C2" class).

 

A warning message in the output window