This extension to Enterprise Architect (version 16 or later) provides a rule-based validation of an MBSE style guide.The default rule set can be customized by the end User.
This style guide is loosely based on version 1.3 of the MBSE Style Guide in use by the USSF Space Warfighting Analysis Center (SWAC) and Space Security and Defense Program (SSDP).
- Activity related rules:
- Verify that Activity Partitions have a Classifier defined.
- Verify that every Action is a child of either an Activity Partition or an Interruptible Region.
- Block Definition diagram (BDD) related rules:
- Verify for each (navigable) connector end that role name and multiplicity are set.
- Verify that a specialized SysML Block adds value to a generalized Block.
- Ensure Block names are in camel case and have no spaces (with an option to automatically fix the name).
- Feature (Attributes/Operations/Receptions) related rules:
- Ensure Block property names are in lower camel case with underscore (_) separators (with an option to automatically fix the name).
- Ensure Value Properties have both a description and default value assigned to them.
- Verify that the names of Block/Interface Block Operations and Receptions (including their parameter names) are in lower camel case with underscore (_) separators (with an option to automatically fix the name).
- Verify that each Block Operation is specified either by an underlying behavior (Interaction, Activity, or State Machine), or by (pseudo) code.
- State Machine related rules:
- Verify there are no States with an identical name inside the same State Machine Region.
- Validate that there are no blank States (i.e. States with no incoming/outgoing Transition behavior or Triggers, and no entry/do/exit Actions).
- Ensure that every entry/do/exit Action of a State is specified either by an underlying behavior (Interaction, Activity, State Machine, or Operation), or by (pseudo) code.
- Verify that every State Machine Region has one Initial and at least one Final Pseudo-State defined.
- Validate there are no States with duplicate outgoing Transitions (i.e. with the same Guard conditions and/or Triggers).
- Validate that Guard conditions are defined using an IF( condition ) expression, where condition maps to the signature of a non-abstract Block Operation returning a Boolean value. Refer to the User Guide for details.
- Validate that Triggers of type Change are defined using a WHEN ( condition ) expression, where condition maps to the signature of a non-abstract Block Operation returning a Boolean value. Refer to the User Guide for details.
- Validate that Triggers of type Time are defined using a AFTER ( condition ) or AT( condition ) expression.
- Optionally verify that each Trigger name reflects the underlying event specification name (Signal, Time, Change, or Call).
- Activity related rules:
- a selected Package hierarchy.
- a complete diagram.
- selected elements of a diagram.
For further details of how the extension operates, please see the End User Documentation.
To integrate your own custom rules into the extension, please contact us!
Related Extensions
Pricing
Quantity Fixed license 1-4 USD 80.00 5-19 USD 65.00 20+ USD 50.00
Note that these licenses never expire, and their is no yearly maintenance fee. Future updates are available free of charge.
Download the trial version to test out the extension!
Limited time offer for the current beta version: In return for using the trial version and contacting us with feedback and improvement suggestions, receive one FREE standard license!