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.
offto disable it.