Une image contenant texte, signe

Description générée automatiquement

Running Checks

 

Overview

When the model checker is launched, it sets the scope of the check from the current selection. If there is no currently selected model element (which may be the case if you launch it from the toolbar or menu) or if the currently selected element is not a package, then then the scope defaults to project. If the current selection is a package, then the scope of the check-run is only that package along with its children recursively (unless the Recurse checkbox is cleared in which case only that scope element and its immediate content are checked). Note that any selected Global Checks ignore any scope and run on the entire project.

Loading

On launch, the Model Checker:

1.     Loads available checks.

2.     Reads the scoped model into memory (for large models this may take some time).

3.     Associates model elements with checks (this allows very fast checking – see later)

 

The UI shows:

·       The scope of this check-run (Current Selection)

·       The current Check Configuration (if any)

·       The number of model elements in scope

·       The available checks – collected in tabs on the right (see Configuring Available Checks)

 

A screenshot of a computer

AI-generated content may be incorrect.

Understanding Checks

Each check has a tooltip with basic information:

A screenshot of a computer

Description automatically generated

Clicking the tooltip will open a more detailed explanation via a web page:

A screenshot of a checklist

Description automatically generated 

 

By default, this opens inside Rhapsody, but the system web browser may instead be used (if using Rhapsody 9 or below then the system web browser is used as only Rhapsody 10 and above support displaying web pages). This is a toggle on the Options menu where you will also find the option to disable the tooltips entirely. By default, web pages open in the same Rhapsody tab but this also may be configured using the options menu:

 

A screenshot of a computer

Description automatically generated

These detailed web pages are also available from the check result, see Check Results.

Selecting Checks to Run

Checks may be included/excluded individually by selecting/clearing their checkbox:

A close up of words

Description automatically generated

All checks on a specific page may be included/excluded by clicking Set All / Set None on that page:

A white rectangular object with a blue border

Description automatically generated

All checks across all pages may be included/excluded by clicking Set All / Set None in the sidebar:

A screenshot of a computer

Description automatically generated

 

Check selections may be saved and restored using Check Configurations.

Running Checks

When Run Checks is clicked, the Model Checker iterates over the selected checks and runs them against any associated model elements it found during the initial model reading. Model checking is extremely fast using this method as the checker does not have to iterate over the model. However it is important to note that if any check is registered against ‘ALL’ model elements then the Model Checker switches to an alternative approach where it instead iterates over the entire scoped model and for each model element it runs any checks associated with that element which will be the faster option (if even one check is registered against ALL the checker would have to iterate over the entire model anyway, and in the standard approach it would have to do this for each check which would be much slower).

 

None of the supplied checks are applicable to ALL but user-defined checks may be (see Creating Checks)

Interrupting a Check-Run

As the Model Checker is running checks on the model you may click the Stop button in the sidebar at any time to immediately end the check-run. No results are reported but this does allow you to change scope for a faster check-run.

Changing Scope

The scope of the check-run may be changed by selecting the desired scope-element in the model and then clicking Refresh in the sidebar. Note that a refresh causes the Model Checker to re-read the model data.

A screenshot of a computer

Description automatically generated

Check Results

The results of the check-run are presented in the user interface, see Handling Check Results

In addition, a Microsoft Excel spreadsheet report of the check results may be produced, see Exporting Check Results

Logging

Basic logging to the Rhapsody output window is controlled by the property:

MBETools.General.LoggingLevel

In addition, the Model Checker creates a more detailed file log. See File Logging.