Software Regression Testing Prioritization via Impact Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In software testing, regression testing often becomes resource-intensive due to the challenge of determining which features to test when changes are made, leading to unnecessary testing of all features, which overloads computing systems and wastes resources.

Innovation Solution

A method and system that identify relevant features for regression testing by retrieving requirement, test case, and defect data, computing impact scores, test effort scores, and weightage factors, and determining a regression factor to prioritize features for testing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If regression testing is performed on all features, then reliability of software product is improved, but resource consumption and computing system performance deteriorate

Engineering Contradiction:
Improvesoftware product reliabilityVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent segments the regression testing process by dividing features into different priority levels (critical, important, low) based on impact analysis. Instead of testing all features uniformly, the system segments the test suite to execute only high-priority tests first, allowing early termination when critical bugs are found or time limits are reached, thus reducing overall resource consumption while maintaining reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts and identifies a subset of critical features that have high impact on software reliability using impact analysis techniques. By taking out only the most essential features for testing (those with highest impact scores), the system achieves adequate reliability coverage without the overhead of testing all features, thereby reducing resource consumption.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If regression testing is performed on all features, then software reliability is improved, but testing time increases

Engineering Contradiction:
Improvesoftware product reliabilityVSAvoidtesting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the test execution into priority-based batches, running critical tests first and lower-priority tests subsequently. This segmentation allows the testing process to be time-boxed and terminated early if critical issues are resolved or time constraints are met, significantly reducing total testing time while maintaining essential reliability coverage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by executing only the most critical regression tests rather than the complete test suite. By performing a subset of high-impact tests (partial action), the system achieves acceptable reliability verification within reduced timeframes, trading complete coverage for time efficiency.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If comprehensive regression testing is performed, then defect detection capability is improved, but computing system overload increases

Engineering Contradiction:
Improvedefect detection capabilityVSAvoidcomputing system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the defect detection process by prioritizing tests based on feature impact analysis. The system divides the comprehensive test suite into priority tiers and executes them sequentially, allowing early termination when sufficient defect detection is achieved. This segmentation reduces computing system overload by avoiding execution of low-priority tests when high-priority defects are already found.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces dynamic test selection and execution prioritization based on real-time impact analysis results. The testing system dynamically adjusts which tests to run and in what order, rather than executing a static comprehensive suite. This dynamic approach optimizes resource utilization and reduces computing system complexity by adapting the test execution plan to actual software state and risk factors.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10127134B2Software testing system and a method for facilitating structured regression planning and optimization
Publication Date: 2018.11.13 WIPRO LTD
  • US10127134B2 patent drawing
  • US10127134B2 patent drawing
  • US10127134B2 patent drawing

AI summary

Devices and methods for identifying relevant features of software product are described. The system retrieves requirement data, test case data and defect data associated with plurality of features of the software product. The requirement data comprises de-scoped requirements which indicate those requirements which are not required for performing the regression testing. The device further computes an impact score, a test effort score, and a weightage factor for each of the plurality of features based on the requirement data, the test case data and the defect data respectively. Based on the computed impact score, the test effort score, and the weightage factor, the device further determines a regression factor for each of the plurality of features. Further, the device identifies one or more relevant features amongst the plurality of features based on the regression factor. This way, the device facilitates structured regression planning which optimizes the overall performance of the device.