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 and DO-254).
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.
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.
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.
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.
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.
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.
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.
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.
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.
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 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.
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
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
Refactor models by replacing exact clones with Subsystem Reference blocks
High-Integrity System Checks
Detect High-Integrity guideline violations with Simulink Design Verifier
Select individual Guideline Sub-ID’s for finer control over guideline checks
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.