Change-Based Software Testing via Requirement Correlation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Software development teams face increased costs and inefficiencies due to the delayed detection of errors in computer programs, which become more expensive to fix as they progress through the software lifecycle.
Innovation Solution
A method and system for assessing the effect of changes in computer software by correlating modified requirements and test cases, using a Global Group Reporting System (GRS) to identify affected portions of the software and prioritize retesting, thereby reducing the scope of testing efforts and focusing quality assurance efforts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If comprehensive testing is performed throughout the software lifecycle, then error detection capability is improved, but testing time and resource consumption increase
Solution Approach 1:
The patent segments the software system into modular components with defined interfaces and relationships. By dividing the system into manageable units, the testing process can focus on specific segments affected by changes rather than requiring comprehensive testing of the entire system, thus reducing testing time while maintaining error detection capability.
Solution Approach 2:
The patent establishes correlation relationships between software components, requirements, and test cases in advance during the development phase. This preliminary action creates a dependency map that enables rapid identification of affected test cases when changes occur, eliminating the need for time-consuming comprehensive testing and allowing quick retrieval of relevant test cases for retesting.
2Reliability
If comprehensive testing is performed to detect errors early, then error fixing cost is reduced, but testing complexity increases
Solution Approach 1:
The patent segments the testing process into focused retesting of only those test cases correlated with changed software components. This segmentation reduces testing complexity by eliminating the need to manage and execute comprehensive test suites, while still achieving early error detection for affected areas.
Solution Approach 2:
The patent introduces an intermediary correlation mechanism that links software components, requirements, and test cases. This intermediary structure automatically identifies which test cases need to be reexecuted based on component changes, reducing testing complexity by providing a systematic approach rather than requiring manual analysis of testing scope.
3Productivity
If manual identification of affected test cases is performed, then testing scope can be adjusted, but productivity decreases
Solution Approach 1:
The patent implements a self-service mechanism where the system automatically identifies affected test cases by querying the pre-established correlation relationships between software components and test cases. This eliminates the need for manual identification efforts, allowing developers and testers to quickly retrieve the relevant test case list without consuming productivity resources, thus reducing both time loss and maintaining high development speed.
Data Source
AI summary
A method and system for assessing effect of a change in a computer software including a plurality of requirements and a plurality of test cases. The method and system include: changing a requirement from the plurality of requirements; correlating the computer software with the changed requirement to identify a portion of the computer software that is affected by the changed requirement; and correlating one or more of the test cases with the portion of the computer software that is affected to identify one or more of the test cases that is affected by the changed requirement.Additionally, the computer software may be changed and the effect of that change on the requirements and the test cases may then be determined.


