Simulink Check

Measure design quality, track verification activities, and verify compliance with standards


Simulink Check™ analyzes your models, requirements, and tests to assess design quality and compliance with standards. It provides industry-recognized checks and metrics that identify modeling standard and guideline violations during development. Supported high-integrity software development standards include ISO 26262, DO-178C, DO-254, IEC 61508, ISO 25119, IEC 62304, and MathWorks Advisory Board (MAB) style guidelines. Simulink Check also supports secure coding standards such as CERT C, CWE, and ISO/IEC TS 17961. You can create custom checks to comply with your own standards or guidelines. Edit-time checks identify compliance issues as you edit.

Simulink Check provides metrics such as size and complexity for assessing the status and quality of your design. The model testing dashboard consolidates data from your requirements-based testing activities to track testing status. Automatic model refactoring lets you replace modeling clones, reduce design complexity, and identify reusable content. The Model Slicer tool isolates problematic behavior in models and generates simplified models for debugging.

Support for industry standards is available through IEC Certification Kit (for ISO 26262 and IEC 61508) and DO Qualification Kit (for DO-178).

Get Started:

Check Model Quality

Verify compliance with style guidelines and modeling standards.

Ready-to-Use Checks for Developing High-Integrity Software

To improve the quality and security of models and generated code, Simulink Check provides preconfigured checks for compliance with industry standards such as ISO 26262, DO-178C, DO-331, DO-254, IEC 61508, ISO 25119, and EN 50128 as well as MISRA C:2012, MathWorks Advisory Board (MAB) Guidelines, IEC 62304 standards for developing high-integrity software, and secure coding standards such as CERT C, CWE, and ISO/IEC TS 17961.

Interactive report with results and recommended actions.

Identify and Fix Errors as You Edit

Much like spell checking helps you avoid spelling errors in a document, edit-time checking notifies you of violations as you edit the model. You can correct errors as you go to minimize costly rework and additional testing late in the development process.

Detect and fix compliance issues at design time with edit-time checking.

Configure, Customize, and Automate Model Checks

To ensure your model complies with your organization’s own standards or guidelines, you can tailor modeling checks and configurations using Model Advisor APIs or the Model Advisor Configuration Editor. You can run checks on multiple machines in parallel to accelerate compliance verification.

Create custom checks using the Model Advisor Configuration Editor.

Check for Compliance with Security Standards

To reduce compliance issues in your generated code for CERTC, CWE, and ISO/IEC TS 17961, you can check your model to identify modeling constructs that may introduce coding standard compliance violations. Edit-time checks can identify issues as changes are made such as the addition of a block not recommended for secure coding standards.

Detect blocks that may reduce secure coding standard compliance of the generated code.

Measure and View Model Metrics

Assess your project status with metrics from tools for Model-Based Design.

Collect Model Metrics to Measure Quality

Simulink Check collects model metrics that you can use to assess your model’s architecture, complexity, and readability in compliance with ISO 26262, DO-178C, DO-331, DO-254, IEC 61508, IEC 62304, EN 50128, and other standards.

Collect and customize model metrics to assess quality.

View Consolidated Metrics Using a Dashboard

The Metrics Dashboard integrates metrics such as model size, lines of code, status of guideline compliance, reuse, and complexity in a single view, providing you with insight into the quality of your project. Use the dashboard to review the quality of your design and compliance with standards during your model review process.

Metrics Dashboard with a consolidated view of design status.

Track and Measure Testing Completeness

Assess the completeness of your requirements-based testing to comply with ISO 26262 and DO-178C.

Requirements-Based Testing Metrics

The Model Testing Dashboard provides an overview of the quality and completeness of your requirements-based testing and reflects guidelines in industry-recognized software development standards such as ISO 26262 and DO-178. It analyzes the artifacts in a project from multiple sources and tools such as requirements, models, and test results, and provides detailed metric measurements on their status.

The dashboard widgets summarize each metric to quickly evaluate the current results of testing, including adherence to guidelines, completion of testing for requirements, and the percentage of requirements covered by tests.

Review and Manage Requirements-Based Test Artifacts

The Model Testing Dashboard analyzes the artifacts and traceability links within your project and shows the functional requirements, test cases, and test results for each component in your project in the Artifacts panel. To help you identify gaps in implementation or verification, artifacts with no traceability to models are highlighted.

The dashboard shows you which artifacts are not traced to a component in the project.

Assess Testing Completeness in Accordance with ISO 26262

Use the Model Testing Dashboard to assess the quality and completeness of your requirements-based testing activities in accordance with ISO 26262-6:2018. The dashboard monitors traceability between requirements, tests, and test results. It analyzes the implementation and verification artifacts in your project and provides completeness and quality metrics for the requirements-based test cases and test results in accordance with ISO 26262-6:2018. The dashboard organizes requirements, test cases, and test results under the models that they trace to, providing you with insight into the testing completeness and structural coverage for each unit.

Click the dashboard widget to see details of the metric in a table for ISO 26262 reviews.

Simplify and Debug Complex Models

Use Model Slicer to isolate functionality through a combination of dynamic and static analysis.

Highlight Dependencies

Model Slicer uses static dependency analysis to highlight interdependencies of blocks, signals, and model components and dynamic dependency analysis based on active behavior during simulation to help you better understand functional dependencies in a large or complex model.

Debug Design Errors or Test Failures

When a test fails in Simulink Test™ or a property violation is identified in Simulink Design Verifier™, initiate debugging with Model Slicer to isolate the cause of the error and resolve the problem faster.

Create Simplified Standalone Models

Model Slicer can isolate a portion of the model based on a user-specified starting point, logged signals, or simulation time window and save it as a smaller model that preserves simulation behavior to help debugging and improve performance.

Highlight a portion of a model that can be sliced into a simplified model for debugging.

Activity-Based Time Slicing with Stateflow

Model highlighting can be constrained to simulation time intervals when only selected states and transitions in Stateflow® are simultaneously active during a simulation to isolate the behavior of interest.

Identify active logic when a state is active.

Refactor Models to Improve Designs and Increase Component Reuse

Identify clones and modeling patterns that can be automatically refactored to improve maintainability.

Identify and Refactor Modeling Clones

The Identify Modeling Clones tool analyzes a model to locate duplicate modeling patterns. These duplicated clones can then be automatically refactored with a reusable library to improve maintainability and reduce design complexity.

Transform Models to Improve Component Reusability and Model Readability

The Model Transformer tool identifies modeling patterns that can be transformed into Variant Source or Variant Subsystem blocks and refactors the model to improve model componentization and reusability. It can identify data store blocks that can be eliminated to improve readability.

Find modeling patterns that can be replaced with variants.

Latest Features

Model Testing Dashboard

Track completeness of requirements-based testing for compliance to standards such as ISO 26262

Error Debugging Workflows

Highlight model components that impact failing signals in a baseline test or cause design errors such as overflow with Model Slicer

ISO 25119 Checks

Verify compliance to ISO 25119 standard

Model Advisor Exclusion Editor

Edit and manage exclusions with upgraded, customizable editor

Model Advisor Metric Check Performance

Collect and analyze model metric data faster with simplified Subsystem depth and cyclomatic complexity metrics

Clone Detection

Refactor models by replacing exact clones with Subsystem Reference blocks

High-Integrity System Checks

Detect High-Integrity guideline violations with Simulink Design Verifier

MAB/JMAAB Guidelines

Select individual Guideline Sub-ID’s for finer control over guideline checks

See release notes for details on any of these features and corresponding functions.

Panel Navigation

11 Best Practices for Developing ISO 26262 Applications with Simulink

Manage model interface complexity and data exchanges. Generate code with freedom of interference and separation of files. Increase overall efficiency in the verification, validation, and documentation phases.