Model Advisor Checks for MAAB Guidelines

Simulink® Check™ provides Model Advisor MAAB checks which correspond to a subset of MAAB guidelines. You can run the checks using the Model Advisor.

The MAAB guidelines and corresponding Model Advisor checks are summarized in the following table. Not all guidelines have Model Advisor checks. For some of the guidelines without Model Advisor checks, it is not possible to automate checking of the guideline. Guidelines without a corresponding check are noted as not applicable. For information on using the Model Advisor, see Run Model Checks in the Simulink documentation.

MAAB Guideline - Version 3.0By Task > Modeling Standards for MAAB subfolderModel Advisor check
na_0026: Consistent software environment

Not applicable

na_0027: Use of only standard library blocks

Not applicable

ar_0001: FilenamesNaming ConventionsCheck file names (Simulink Check)
ar_0002: Directory namesNaming ConventionsCheck folder names (Simulink Check)
na_0035: Adoption of naming conventions

Not applicable

jc_0201: Usable characters for Subsystem names

Naming ConventionsCheck subsystem names (Simulink Check)

jc_0211: Usable characters for Inport blocks and Outport blocks

Naming ConventionsCheck port block names (Simulink Check)

jc_0221: Usable characters for signal line names

Naming ConventionsCheck character usage in signal labels (Simulink Check)

na_0030: Usable characters for Simulink Bus names

Not applicable

jc_0231: Usable characters for block names

Naming ConventionsCheck character usage in block names (Simulink Check)

na_0014: Use of local language in Simulink and Stateflow

Not applicable

na_0006: Guidelines for mixed use of Simulink and Stateflow

Not applicable

na_0007: Guidelines for use of Flow Charts, Truth Tables and State Machines

Not applicable

db_0143: Similar block types on the model levels

Model ArchitectureCheck for mixing basic blocks and subsystems (Simulink Check)

db_0144: Use of Subsystems

Not applicable

db_0040: Model hierarchy

Not applicable

na_0037: Use of single variable variant conditionals

Not applicable

na_0020: Number of inputs to variant subsystems

Not applicable

na_0036: Default variant

Not applicable

jc_0301: Controller model

Not applicable

jc_0311: Top layer/root level

Not applicable

jc_0321: Trigger layer

Not applicable

jc_0331: Structure layer

Not applicable

jc_0341: Data flow layer

Not applicable

jc_0011: Optimization parameters for Boolean data types

Model Configuration OptionsCheck Implement logic signals as Boolean data (vs. double) (Simulink Check)

jc_0021: Model diagnostic settings

Model Configuration OptionsCheck model diagnostic parameters (Simulink Check)

na_0004: Simulink model appearance

SimulinkCheck for Simulink diagrams using nonstandard display attributes (Simulink Check)

db_0043: Simulink font and font size

SimulinkCheck font formatting (Simulink Check)

db_0042: Port block in Simulink models

SimulinkCheck positioning and configuration of ports (Simulink Check)

na_0005: Port block name visibility in Simulink models

SimulinkCheck visibility of block port names (Simulink Check)

jc_0081: Icon display for Port block

SimulinkCheck display for port blocks (Simulink Check)

jm_0002: Block resizing

Not applicable

db_0142: Position of block names

SimulinkCheck whether block names appear below blocks (Simulink Check)

jc_0061: Display of block names

SimulinkCheck the display attributes of block names (Simulink Check)

db_0146: Triggered, enabled, conditional Subsystems

SimulinkCheck position of Trigger and Enable blocks (Simulink Check)

db_0140: Display of basic block parameters

SimulinkCheck for nondefault block attributes (Simulink Check)

db_0032: Simulink signal appearance

Not applicable

db_0141: Signal flow in Simulink models

Not applicable

jc_0171: Maintaining signal flow when using Goto and From blocks

Not applicable

na_0032: Use of merge blocks

Not applicable

jm_0010: Port block names in Simulink models

SimulinkCheck for matching port and signal names (Simulink Check)

jc_0281: Naming of Trigger Port block and Enable Port block

SimulinkCheck Trigger and Enable block names (Simulink Check)

na_0008: Display of labels on signals

SimulinkCheck signal line labels (Simulink Check)

na_0009: Entry versus propagation of signal labels

SimulinkCheck for propagated signal labels (Simulink Check)

db_0097: Position of labels for signals and busses

Not applicable

db_0081: Unconnected signals, block inputs and block outputs

SimulinkCheck for unconnected ports and signal lines (Simulink Check)

na_0003: Simple logical expressions in If Condition block

Not applicable

na_0002: Appropriate implementation of fundamental logical and numerical operations

Not applicable

jm_0001: Prohibited Simulink standard blocks inside controllers

SimulinkCheck for prohibited blocks in discrete controllers (Simulink Check)

hd_0001: Prohibited Simulink sinks

SimulinkCheck for prohibited sink blocks (Simulink Check)

na_0011: Scope of Goto and From blocks

SimulinkCheck scope of From and Goto blocks (Simulink Check)

jc_0141: Use of the Switch block

SimulinkCheck usage of Switch blocks (Simulink Check)

jc_0121: Use of the Sum block

Not applicable

jc_0131: Use of Relational Operator block

SimulinkCheck usage of Relational Operator blocks (Simulink Check)

jc_0161: Use of Data Store Read/Write/Memory blocks

Not applicable

db_0112: Indexing

SimulinkCheck for indexing in blocks (Simulink Check)

na_0010: Grouping data flows into signals

SimulinkCheck usage of buses and Mux blocks (Simulink Check)

db_0110: Tunable parameters in basic blocks

SimulinkCheck usage of tunable parameters in blocks (Simulink Check)

na_0012: Use of Switch vs. If-Then-Else Action Subsystem

Not applicable

db_0114: Simulink patterns for If-then-else-if constructs

Not applicable

db_0115: Simulink patterns for case constructs

Not applicable

na_0028: Use of If-Then-Else Action Subsystem to Replace Multiple Switches

Not applicable

db_0116: Simulink patterns for logical constructs with logical blocks

Not applicable

db_0117: Simulink patterns for vector signals

Not applicable

jc_0351: Methods of initialization

Not applicable

jc_0111: Direction of Subsystem

SimulinkCheck orientation of Subsystem blocks (Simulink Check)

db_0123: Stateflow port names

StateflowCheck for mismatches between names of Stateflow ports and associated signals (Simulink Check)

db_0129: Stateflow transition appearance

Not applicable

db_0137: States in state machines

StateflowCheck usage of exclusive and default states in state machines (Simulink Check)

db_0133: Use of patterns for flow charts

Not applicable

db_0132: Transitions in flow charts

StateflowCheck transition orientations in flow charts (Simulink Check)

jc_0501: Format of entries in a State block

StateflowCheck entry formatting in State blocks in Stateflow charts (Simulink Check)

jc_0511: Setting the return value from a graphical function

StateflowCheck return value assignments of graphical functions in Stateflow charts (Simulink Check)

jc_0531: Placement of the default transition

StateflowCheck default transition placement in Stateflow charts (Simulink Check)

jc_0521: Use of the return value from graphical functions

StateflowCheck usage of return values from a graphical function in Stateflow charts (Simulink Check)

na_0001: Bitwise Stateflow operators

StateflowCheck for bitwise operations in Stateflow charts (Simulink Check)

jc_0451: Use of unary minus on unsigned integers in Stateflow

StateflowCheck for unary minus operations on unsigned integers in Stateflow charts (Simulink Check)

na_0013: Comparison operation in Stateflow

StateflowCheck for comparison operations in Stateflow charts (Simulink Check)

db_0122: Stateflow and Simulink interface signals and parameters

StateflowCheck for Strong Data Typing with Simulink I/O (Simulink Check)

db_0125: Scope of internal signals and local auxiliary variables

StateflowCheck Stateflow data objects with local scope (Simulink Check)

jc_0481: Use of hard equality comparisons for floating point numbers in Stateflow

StateflowCheck for equality operations between floating-point expressions in Stateflow charts (Simulink Check)

jc_0491: Reuse of variables within a single Stateflow scope

Not applicable

jc_0541: Use of tunable parameters in Stateflow

Not applicable

db_0127: MATLAB commands in Stateflow

StateflowCheck for MATLAB expressions in Stateflow charts (Simulink Check)

jm_0011: Pointers in Stateflow

StateflowCheck for pointers in Stateflow charts (Simulink Check)

db_0126: Scope of events

Not applicable

jm_0012: Event broadcasts

StateflowCheck for event broadcasts in Stateflow charts (Simulink Check)

db_0150: State machine patterns for conditions

Not applicable

db_0151: State machine patterns for transition actions

StateflowCheck transition actions in Stateflow charts (Simulink Check)

db_0148: Flow chart patterns for conditions

Not applicable

db_0149: Flow chart patterns for condition actions

Not applicable

db_0134: Flow chart patterns for If constructs

Not applicable

db_0159: Flow chart patterns for case constructs

Not applicable

db_0135: Flow chart patterns for loop constructs

Not applicable

na_0038: Levels in Stateflow charts

Not applicable

na_0039: Use of Simulink in Stateflow charts

Not applicable

na_0040: Number of states per container

Not applicable

na_0041: Selection of function type

Not applicable

na_0042: Location of Simulink functions

Not applicable

na_0033: Enumerated Types Usage

Not applicable

na_0031: Definition of default enumerated value

Not applicable

na_0018: Number of nested if/else and case statement

MATLAB FunctionsCheck MATLAB Function metrics (Simulink Check)

na_0019: Restricted Variable Names

Not applicable

na_0025: MATLAB Function Header

Not applicable

na_0034: MATLAB Function block input/output settings

MATLAB FunctionsCheck input and output settings of MATLAB Functions (Simulink Check)

na_0024: Global Variables

MATLAB FunctionsCheck MATLAB code for global variables (Simulink Check)

na_0022: Recommended patterns for Switch/Case statements

Not applicable

na_0016: Source lines of MATLAB Functions

MATLAB FunctionsCheck MATLAB Function metrics (Simulink Check)

na_0017: Number of called function levels

Not applicable

na_0021: Strings

Not applicable

Was this topic helpful?