Skip to content

Running the Analysis

Leonardo Montecchi edited this page Jun 18, 2018 · 4 revisions

The CHESS-SBA Workflow

The typical workflow for executing CHESS-SBA is as follows:

  1. Define the functional architecture at system, software, and/or hardware levels.
  2. Generate instances with the CHESS Build Instances command
  3. Annotate system, software, and/or hardware elements with dependability information.
  4. (optional) Annotate connections between components, including allocations, with dependability information.
  5. (optional) Define additional maintenance policies.
  6. Define the metrics for the analysis.
  7. (optional) Set the value for model parameters.
  8. Run the analysis.

The analysis is enabled in the Dependability Analysis View only. To actually run it, enter such view, and select CHESS / Analysis / Dependability / State-Based from the menu.

Running the CHESS-SBA analysis

After the analysis is completed, each resulting metric will be back-annotated in the «StateBasedAnalysis» stereotype itself, in the measureEvaluationResult attribute.

CHESS-SBA Backannotation

Please note that the actual evaluation of the model can take some time, depending on the size of the model and other factors. Evaluation speed and quality of results are heavily affected by plugin configuration. A progress bar dialog will be displayed as soon as the analysis begin.

DEEM Server

Evaluation of the generated Stochastic Petri Nets model is performed with the DEEM Simulator. DEEM is a software package for model-based evaluation of Multiple Phased Systems (MPS), using analytical methods. The DEEM Simulator is a discrete-event simulator for models using the DEEM format.

For several reasons, including licensing issues, we do not release the simulator together with the CHESS-SBA plugin. The CHESS-SBA plugin uses a client/server approach: it connects to a DEEM Simulator server, sends the DEEM model to be evaluated, and waits for results to be transmitted back by the simulator. Using this approach also improves portability, as the DEEM Simulator would run on the Linux platform only.

CHESS-SBA Plugin Architecture

Parametric Execution

CHESS-SBA supports the parameterization of models, that is, using external parameters for attributes instead of adding them directly in the CHESS ML model. Actual values of parameters are set at run-time, when the analysis is triggered. This feature potentially allows for the analysis to be fed from external sources, e.g., database, sensors, etc. At the moment, only reading parameter values from a textfile is supported.

In the CHESS ML model parameters are specified using a dollar sign, e.g., $FaultOccurrenceA. Parameters can replace the entire value of an attribute, or only a part of it. They can thus be numbers, but also strings, or anything that is used as the value of an attribute in a CHESS ML

Parameters in a CHESS ML model

Values for parameters are given in a textual file, in the format

$Parameter1		Value1
$Parameter2		Value2
...

If parametric execution is selected, parameters in the model are directly replaced with values from the input file.

A separate command is used to run the parametric analysis: CHESS / Dependability / State-Based (With External Parameters). Note that a model that include parameters cannot be executed with the "normal" command anymore.

When launching parametric analysis, a dialog appears allowing you to set the parameters file and set the results file where output should be saved. If the option Save as default is checked, the file selected as input or output file is saved in CHESS-SBA preferences.

CHESS-SBA Parametric Execution Dialog

Lastly, it is possible to instruct the tool to periodically run the analysis on the same model, each time fetching parameters values again from the input file. This allows the tool to read data from other processes/tools, as long as those are able to periodically write update parameter values on a text file.


Now that you know how to run the State-Based Analysis, you should understand configuration parameters of the CHESS-SBA plugin in order to fully take advantage of it.

Clone this wiki locally