Software Defect Identification via Structural Profile Comparison
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Complex software systems with latent defects, particularly those involving interactions of multiple components or subsystems, are difficult to identify and isolate, leading to costly and time-consuming debugging processes.
Innovation Solution
A method that profiles software systems to identify structural similarities with known defective systems, using profile data to create test data that simulates operational circumstances associated with defects, allowing for efficient detection of latent defects in new software by comparing similarity measures and retrieving operational information from a defect store to provoke defects in the new system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If exhaustive interaction testing is performed on complex software systems, then defect identification completeness is improved, but testing time and cost increase significantly
Solution Approach 1:
The system performs preliminary actions by creating profile data representing software structure before actual testing occurs. This profile data is stored and can be quickly compared against future software versions, eliminating the need to perform exhaustive structural analysis during each testing cycle.
Solution Approach 2:
The invention creates simplified copies of software structure in the form of profile data that captures essential structural characteristics without containing all the detailed information of the actual software. These profile copies can be rapidly generated and compared to identify structural changes that may indicate defects.
2Measurement precision
If comprehensive software structure analysis is conducted to identify all potential defects, then measurement precision is improved, but device complexity increases
Solution Approach 1:
The system extracts only the essential structural characteristics of software into profile data, separating the critical structural information from the complete software codebase. This extraction process creates a simplified representation that maintains defect-detection capability while reducing analysis complexity.
Solution Approach 2:
The software structure is segmented into discrete profile data points that represent specific structural characteristics. This segmentation allows the system to analyze individual structural elements independently and combine results to achieve comprehensive defect detection without analyzing the entire software system as a monolithic complex structure.
3Measurement precision
If detailed operational circumstance information is collected and analyzed, then defect identification accuracy is improved, but information processing complexity increases
Solution Approach 1:
Instead of processing raw operational circumstance data directly, the system creates simplified copies in the form of profile data that captures the essential structural and operational characteristics. These profile copies retain the information needed for accurate defect identification while being much easier to store, retrieve, and compare.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method of determining test data for use in testing software involves identifying software that is known to have one or more bugs and which has a similar structure to software under test before using knowledge of those one or more bugs to create test data for the software under test.