3.1. Failure Rate Modelling in SysML

All structural elements in SysML support a failure rate (in FIT). Structural elements are parts, ports, and types (blocks). Parts can be contained as children in other parts and types independent of their own type. Note that ports of a part are not handled as "children", since they are actually defined at the type level. As a consequence, for any part, its failure rate is distinguished from the failure rate of its ports.

There are four different prediction modes to compute the failure rate for a structural element:

  1. USER DEFINED: the failure rate is derived from a raw failure rate directly entered by the user

  2. FROM CATALOG: the failure rate is computed based on a formula from a selected failure rate catalog. The formulas are usually further parameterized by variables that need to be specified (see below).

  3. FROM FAILURE MODES: the failure rate is computed as the sum of the failure rate of its contained failure modes. Each failure mode can either use directly a failure rate that is manually entered or derive it based on its cause relationships (failure net).

  4. FROM PARENT: the failure rate computed using a percentage from the failure rate of the parent

The failure rate value is distinguished from the raw failure rate of an element. The element's failure rate is computed based on the raw failure rate and the scaling expression of the element. If the option "Add children" is on (seen as "Include failure rates of contained elements" at the "Prediction" tab of the property view), the failure rate of the directly contained child parts is summed up and added after scaling has been applied (see also Modelling with types and instances). For any further computation in FMEDA and FTA only the (final) failure rate of the element will be used, the raw failure rate is just for information.

WARNING [1]  —  Scaling expressions can be applied to failure rates computed via USER DEFINED, FROM CATALOG, and FROM PARENT and hence adapt the raw failure rate (or even replace it), depending on the scaling expression.

Note that usually a scaling expression would refer to the raw failure rate like "failureRate = (Expression with rawFailureRate)", but it can also ignore the rawFailureRate and directly compute the failure rate based for example on a set of variables. Consult the user documentation for more information on scaling expressions.

WARNING [2]  —  The "Add children" option can lead to duplicated failure rates in an FMEDA, if children and parent are listed in a spreadsheet. Refer to FMEDA and Diagnostic Coverage Worksheets for more details.

RECOMMENDATION [3]  —  Use the "Add children" option only at types to aggregate the children into a single failure rate OR at parts which are not in the scope of a DC Worksheet to prevent duplicated failure rates.

In the latter case, if "Add children" is used for elements appearing in a FMEDA (DC Worksheet), the "level selection" filter can be used to select either the parent or the children for analysis to prevent duplicated failure rates.

RECOMMENDATION [4]  —  Do not use "Add children" in a cascaded manner to aggregate failure rates over multiple containment levels.

The prediction mode USER DEFINED directly defines the raw failure rate of an element. However, this can be used in a scaling expression as variables rawFailureRate to adapt it to a corresponding context.

The prediction mode FROM CATALOG uses the formulas to compute the raw failure rate. These formulas produce a raw failure rate based on a set of context variables which are parameters to the formulas. Please refer to Variables and Mission Profiles for details.

The prediction mode FROM FAILURE MODES allows to derive the failure rate of an element as the sum of the failure rates of its failure modes. Note that each failure mode can in turn derive its failure rate from the causes ("sum of causes")[1], which can lead to complex failure rate aggregations. For example, a lower-level component failure rate might be aggregated via multiple cause-effect paths to different failure modes of the same element.

WARNING [3]  —  The prediction mode FROM FAILURE MODES of an element in combination with the computed sum of causes can lead to duplicated (or multiplicated) failure rate fractions, if failure modes directly or indirectly share the same causes.

Note that in general the causes (i.e. the elements containing the failure modes used as causes) can be located anywhere in a project. If elements are located in different models using the FROM CATALOG, the user should make sure that the context variables are correctly set for these elements. For example, a mission profile assigned to the model where the causes are located is used which might be different from a mission profile for other elements in the current context (see also Variables and Mission Profiles).

WARNING [4]  —  The combination of prediction mode FROM FAILURE MODES with the sum of causes and references to elements that use FROM CATALOG can lead to wrong failure rates, since the context variables are not passed to referenced elements.

NOTE [3]  —  Note that the tool cannot automatically detect whether the modelling is semantically correct. However, the tool will detect loops to prevent endless recursions in computations.

The prediction mode FROM PARENT is used to distribute a failure rate over the directly contained elements (child parts and/or ports). Usually these nested elements' percentages should sum up to 100%, but there are use cases where this is not the case.

WARNING [5]  —  The tool does not check whether the percentage distribution adds up to 100%.

RECOMMENDATION [5]  —  If an accumulation to 100% is required, we recommend setting up a validation constraint and a corresponding review step in your safety process.

Note that the FROM PARENT mode will essentially take fractions of the failure rate (not the raw failure rate) of the parent element and assign it as raw (!) failure rate to children. Scaling is still possible at the children level of that failure rate to adjust the inherited fraction. Furthermore, FROM PARENT can be applied recursively along the containment hierarchy, where (potentially scaled) failure rates are further distributed.

RECOMMENDATION[6]  —  The distribution of failure rates using FROM PARENT should not use scaling at child elements, but only at the parent element to avoid biased results.

If formulas such as catalog or scaling are used, failure rates are computed with a high precision (resolution is E-18). Rounding is done in a conservative way (rounding up). The tool internally stores failure rates with this high precision and applies rounding only at the user interface. Subsequent calculations use the exact numbers as stored with the models.



[1] The failure mode's failure rate is computed as the sum of the failure rates of the referenced failure modes. This includes potentially any scaling that has been applied to these elements.