MBD Quality Suite

Model Structure Analyzer (MSAnalyzer)

Click the button below to apply for a free trial.

Model Structure Analyzer(MSAnalyzer)

MSAnalyzer offers the following functionalities based on ISO-recommended model architecture design principles: Model Complexity Analysis; Clone Analysis; Subsystem Cohesion and Coupling Analysis; Interface Effectiveness Analysis.

The new version is compatible with MATLAB, with comprehensive performance enhancements across various aspects. For details, please download the MSAnalyzer2024 Highlights document or the Release Notes.

News

Latest Updates

Features

Overview of Basic Functions

Purpose of the Model Architecture Analysis Tool

In model design, to improve maintainability and reusability and reduce errors, encapsulation techniques and simple, modular design methods should be adopted. For this purpose, ISO 26262 proposes model architecture design principles: use a hierarchical structure, limit model size; limit interface size; increase intra-unit cohesion; reduce inter-unit coupling.

MSAnalyser employs classic software complexity calculation methods combined with our deep understanding of models to successfully apply these principles in practice. By filtering various elements within a model and calculating the complexity at different hierarchical levels, it provides metrics for evaluating the rationality of the hierarchical structure. Utilizing the latest precise algorithms, it identifies reusable parts within the model and calculates subsystem cohesion and coupling, offering methods for functional partitioning and model size reduction. By analyzing dependencies between simulations, it finds unused signals, providing guidance for reducing coupling between units. The use of MSAnalyser translates theory into practical guidance, achieving twice the result with half the effort.

Key Functions Explained

  • Model Complexity Analysis: Calculates local complexity, global complexity, model hierarchy depth, etc.
  • Clone Analysis: Identifies duplicate parts within the model and between the model and its referenced libraries.
  • Subsystem Cohesion and Coupling Analysis: Uses appropriate algorithms to calculate internal cohesion and coupling of subsystems.
  • Interface Effectiveness Analysis: Analyzes unused signals within the system.

Limiting Model Size

Overall complexity reduction can be achieved by decreasing repeated modules in the model or using reference models. Clone analysis helps identify repeated parts within the model, reducing overall model complexity through the use of libraries.

Limiting Interface Size

The number of interfaces can be reduced by using bus structures, but this introduces the issue of bus effectiveness. If a bus contains signals that are rarely used, its effectiveness is low. This effectiveness can be evaluated through Interface Effectiveness Analysis. Interface Effectiveness Analysis can identify unused signals within a bus, guiding the optimization of the bus structure to achieve both interface reduction and maintenance of highly efficient system interfaces.

Using a Hierarchical Structure

By restricting the local complexity of subsystems within a certain range, the requirement for a reasonable hierarchical structure is achieved. For example, as shown in the figure, the calculated complexity of a subsystem is 6000, exceeding the threshold of 300. After dividing it into two subsystems, the complexity is reduced, and the system structure becomes more reasonable.

High Cohesion Within Units

The coupling between modules within a unit indicates the cohesion inside a subsystem. The degree of coupling indicates how many independent signal flows exist within a subsystem, thereby indicating how separable the subsystem is. Based on coupling indicators, we can refactor the subsystem.

Model Architecture Quality Metrics

MSAnalyser proposes model architecture metrics from dimensions such as readability, maintainability, and testability, providing quantitative requirements for system design. Local complexity and graph complexity emphasize controlling logical complexity to avoid excessive levels that make logic and testing difficult. Limiting the number of input/output ports reduces interface coupling. Unused signal ratio and model hierarchy depth focus on architectural clarity and structural flatness. Each metric has specified upper and lower threshold limits. When values fall outside these ranges, it is recommended to optimize by splitting subsystems, using bus signals, deleting redundant ports, or introducing model references, thereby improving overall model quality.

Continuous Integration Support

Based on mature Jenkins continuous integration experience, MSAnalyser can seamlessly integrate the model architecture analysis tool into the pipeline, enabling automated triggering and analysis. We already support connectivity with tools like Matlab and QAC, and can customize integration solutions according to the enterprise’s actual workflows, effectively addressing application challenges and improving analysis efficiency and automation levels.

FAQs

Common Testing Difficulties And Solutions

Providing solutions to multiple testing challenges in the development of high-safety, high-complexity model-based systems.

MSAnalyzer provides Local Complexity Analysis, offering guidance for rationally splitting subsystems and optimizing the hierarchical structure.
The Clone Analysis feature offered by MSAnalyzer automatically identifies duplicate modules and provides reasonable recommendations, thereby effectively reducing overall model complexity.
Its Interface Effectiveness Analysis function scans and identifies ineffective bus signals with radar-like precision, providing guidance for structural optimization to reduce the number of interfaces while maintaining highly efficient system connections.
MSAnalyzer utilizes algorithms to calculate and analyze the coupling and cohesion within subsystems, guiding their splitting and restructuring to make the model efficient, aesthetically organized, and logically sound.

Need A One-On-One Expert Demonstration?

Book an exclusive in-depth demo where a consultant provides real-time answers to all your technical and implementation questions.