Software Testing Scheme Using Dependency Structure Matrix
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current software testing methods face inefficiencies in determining the optimal sequence and parallel execution of modules within a software product, leading to costly and inaccurate testing results, particularly in identifying dependencies and end-to-end scenarios.
Innovation Solution
A system and method utilizing a dependency structure matrix (DSM) analysis to segregate software modules into hierarchical levels, allowing for efficient execution by identifying cyclic blocks, generating compressed and expanded partition matrices, and performing path analysis to determine an optimal software testing scheme.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If simple end-to-end testing is used to test modules sequentially from first module to last module, then testing accuracy is improved, but testing efficiency deteriorates and cost increases
Solution Approach 1:
The patent segments the software modules into hierarchical levels based on dependency relationships. By dividing the testing process into level-based segments rather than sequential end-to-end testing, the system enables parallel execution of independent modules while maintaining accurate dependency validation, thus improving efficiency without sacrificing accuracy
Solution Approach 2:
The patent introduces a hierarchical dimension to the testing process by organizing modules into multiple levels based on their dependency relationships. This dimensional transformation allows the testing system to operate in a multi-level structure where modules at the same level can be tested in parallel, resolving the contradiction between accuracy and efficiency
2Productivity
If software modules are streamlined for faster testing, then testing efficiency is improved, but determining the optimal execution sequence and parallelization becomes more difficult
Solution Approach 1:
The patent performs preliminary analysis of module dependencies and constructs the dependency structure matrix before execution. By pre-determining the hierarchical levels and parallelization opportunities, the system simplifies the actual testing execution while maintaining optimal efficiency, as the complex sequencing decisions have already been made in advance
Solution Approach 2:
The patent introduces a dependency structure matrix as an intermediary representation between the software modules and the testing execution engine. This matrix serves as a mediator that captures all dependency relationships in a structured format, enabling the system to automatically determine optimal execution sequences and parallelization strategies without direct complex analysis during execution
3Productivity
If modules are executed in parallel for optimal efficiency, then testing productivity is improved, but determining which modules can be executed in parallel becomes more complex
Solution Approach 1:
The dependency structure matrix serves as an intermediary that systematically captures all module dependencies. By representing dependencies in this structured matrix form, the system can automatically identify which modules can be executed in parallel by analyzing the matrix structure, transforming a complex detection problem into a systematic analysis process
Solution Approach 2:
The patent replaces manual or heuristic analysis of module dependencies with an automated matrix-based system. The dependency structure matrix enables algorithmic determination of parallel execution opportunities, substituting complex manual analysis with systematic computational methods that are more efficient and less error-prone
4Reliability
If comprehensive end-to-end scenarios are tested to ensure accuracy, then testing reliability is improved, but testing time and effort increase significantly
Solution Approach 1:
The patent segments the comprehensive end-to-end testing into level-based hierarchical testing. By dividing the testing scope into manageable levels based on dependencies, the system tests only the necessary scenarios at each level rather than executing all possible end-to-end paths, maintaining reliability while reducing time and effort
Solution Approach 2:
The patent applies partial action by testing only the essential end-to-end scenarios that are necessary given the module dependencies, rather than exhaustively testing all possible paths. The hierarchical level-based approach identifies and executes only the critical testing paths, achieving sufficient reliability without excessive time investment
Data Source
AI summary
A complexity dependency change impact system and method is disclosed. In one embodiment, a method of determining an efficient software testing scheme based on a dependency structure matrix (DSM) analysis includes generating a compressed DSM based on cyclic blocks associated with modules of a software application, tagging and levelling the modules of the software application based on the compressed DSM, and generating at least one compressed partition matrix based on the tagged and levelled modules. The method further includes generating at least one expanded partition matrix based on the at least one compressed partition matrix, generating value threads using the at least one compressed partition matrix and obtaining a new scheduling table and performing a path analysis using the value threads to determine the efficient software testing scheme.


