Model Partitioning for Verification Coverage of Boolean and Numeric Expressions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing model verification techniques, such as modified condition/decision coverage (MC/DC), are limited in their ability to effectively verify models containing both Boolean and numeric expressions, as they primarily focus on Boolean expressions, leading to inefficiencies in testing and potential masking of operations.
Innovation Solution
The method involves partitioning a model into network units that include both Boolean and numeric computations, allowing for the generation of tests based on network metrics and the application of customizable rules to manage partitioning, thereby improving the efficacy of model verification by isolating and coordinating operations within these units.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If model verification focuses on Boolean expressions using traditional techniques like MC/DC, then verification coverage of Boolean logic is improved, but verification of numeric computations is neglected leading to masking of operations
Solution Approach 1:
The model is partitioned into network units that group related model elements together. Each network unit represents a hierarchy of computation and can be analyzed independently. This segmentation allows the verification process to handle both Boolean and numeric expressions systematically by treating each network unit as a discrete testing target with defined interfaces.
2Reliability
If the model is verified as a whole without partitioning, then comprehensive coverage is maintained, but complexity of analysis increases and masking of operations occurs
Solution Approach 1:
The model is divided into network units with clear boundaries and interfaces. Each network unit contains a subset of model elements that form a coherent computational hierarchy. This segmentation reduces analysis complexity by allowing focused verification of individual units while maintaining overall model coverage through systematic composition of unit-level verification results.
Solution Approach 2:
Interface elements are introduced as intermediaries between network units. These interfaces define the boundaries and data flow between units, allowing independent verification of each unit while ensuring proper integration. The interfaces act as mediators that preserve verification accuracy by explicitly modeling the interactions between partitioned sections.
3Productivity
If model elements are partitioned into smaller units for testing, then test generation becomes more manageable and masking is reduced, but the number of units and testing overhead increases
Solution Approach 1:
The model is partitioned into network units at an optimal granularity that balances test generation efficiency with management complexity. Each network unit contains a meaningful subset of model elements that can be verified independently. This segmentation improves productivity by enabling parallel test generation and reducing masking effects, while the hierarchical structure keeps the number of manageable units reasonable.
Solution Approach 2:
Related model elements are merged into network units based on their computational relationships and dependencies. By combining elements that work together into single network units, the verification process reduces the total number of separate testing entities while maintaining the ability to detect masking effects. The merging is guided by analysis of element relationships and coupling to other parts of the model.
Data Source
AI summary
A device may analyze, by one or more processors, a model to identify a first set of model elements that are associated with a model element. The device may apply, by the one or more processors, one or more results from an analysis of the model to a first network unit to determine a complexity of the first network unit or a coupling of the first network unit to other model elements of the model. The device may generate, by the one or more processors, a second network unit, representing a second hierarchy of computation, from the first network unit based on the complexity or the coupling. The device may provide, by the one or more processors, the second network unit as a testing unit for testing the model, the second network unit comprising two or more model elements and one or more numeric expressions.


