decision-node-successions

Available in: SysML

This checks that decision nodes have at least two outgoing successions, which are also conditional. Otherwise, a decision node can be removed as no decision needs to be made.

Example

action {
    action a;
    action b;

    first start;
    then decide; // warning: A decision node should have at least two outgoing successions
        if true then a; // ok
}

action {
    action a;
    action b;

    first start;
    then decide; 
        then a;// warning: Outgoing successions from decision nodes should be conditional
        else b; // ok
}

Add the missing conditional successions:

action {
    action a;
    action b;

    first start;
    then decide;
        if true then a; // ok
        else b; // ok
}

action {
    action a;
    action b;

    first start;
    then decide;
        if true then a; // ok
        else b; // ok
}

Options

  • lint.decision-node-successions:

    Allows controlling the diagnostic severity, e.g. off to disable it.


All validation rules