Dynamic Integration Testing for Code Change Prioritization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Limited testing in healthcare management systems often leads to defects going undetected until applications are live, resulting in costly corrections and inefficiencies, as current testing methods focus on the entire application rather than specific changes, missing defects in modified code.
Innovation Solution
A dynamic testing system that assesses each modification based on a failure probability value, prioritizing targeted tests on the most critical changes, allowing for early defect identification and resolution before deployment.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If limited testing is conducted on new or revised code, then time and monetary constraints are satisfied, but defects are not caught prior to deployment
Solution Approach 1:
The patent segments the testing process by identifying and isolating specific changes made to the application code. Instead of testing the entire application, the system divides testing efforts into targeted units focused on individual modifications, allowing efficient testing of critical areas without requiring comprehensive application-wide testing.
Solution Approach 2:
The patent applies partial action by conducting tests only on the portions of the application that have been modified. The system identifies specific changes and executes a limited set of tests targeted at those changes rather than performing exhaustive testing on the entire application, achieving adequate defect detection with reduced testing effort.
2Reliability
If tests are directed to the whole application, then comprehensive coverage is achieved, but defects in specific modified code are overlooked
Solution Approach 1:
The patent applies local quality by directing testing resources to the specific locations where changes were made in the code. The system identifies the precise areas of modification and concentrates testing efforts on those local regions, ensuring high detection accuracy for defects in modified code while avoiding waste on unchanged portions.
Solution Approach 2:
The patent segments the application into unchanged and changed portions, then applies different testing strategies to each segment. The modified portions receive targeted focused testing, while unchanged portions are either skipped or subjected to minimal regression testing, improving overall defect detection precision.
3Reliability
If extensive testing is performed on the entire application, then defect detection is improved, but time and cost increase significantly
Solution Approach 1:
The patent implements partial action by performing tests only on the necessary portions of the application - specifically the modified areas. This approach achieves adequate defect detection for the changes made without requiring time-consuming comprehensive testing of the entire application, significantly reducing testing duration while maintaining acceptable quality.
Solution Approach 2:
The patent applies preliminary action by automatically identifying changes and pre-selecting relevant tests before execution. The system analyzes the code changes, determines which tests are applicable to those specific changes, and then runs only those selected tests, eliminating the need for time-consuming manual test selection and execution of irrelevant tests.
4Reliability
If corrective actions are taken after deployment, then defects are fixed, but costs and efficiency are significantly reduced
Solution Approach 1:
The patent applies preliminary action by conducting targeted testing on modified code before deployment to identify and correct defects in advance. The system executes relevant tests on the changes made, detects potential issues while the application is still in the build process, and allows corrections to be made before deployment, avoiding the much higher costs of post-deployment fixes.
Data Source
AI summary
Computerized systems and methods are provided to intelligently and dynamically generate at least a first set of tests to be executed on one or more changes made to one or more applications to determine whether the one or more changes were successful. Data is received regarding one or more changes and a failure probability value for each change is determined. A first plurality of fields are generated for completion by a first user. Upon receiving responses for the first plurality of fields, a first customized code is generated and based upon first customized code, a first set of tests to be executed on the second version of the first application is generated. Additionally, the first set of tests are assigned labels, stored for future use, and executed on the second version of the first application.


