Software Defect Identification via Structural Profile Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvedefect identification completenessVSAvoidtesting time
Core Design Contradiction:
ReliabilityVSLoss of time

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.

Inventive Principle:
Principle #10Preliminary action

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.

Inventive Principle:
Principle #26Copying

2Measurement precision

If comprehensive software structure analysis is conducted to identify all potential defects, then measurement precision is improved, but device complexity increases

Engineering Contradiction:
Improvedefect detection accuracyVSAvoidtesting system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

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.

Inventive Principle:
Principle #2Taking out (Extraction)

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.

Inventive Principle:
Principle #1Segmentation

3Measurement precision

If detailed operational circumstance information is collected and analyzed, then defect identification accuracy is improved, but information processing complexity increases

Engineering Contradiction:
Improvedefect identification accuracyVSAvoidinformation processing complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

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.

Inventive Principle:
Principle #26Copying

Data Source

PatentEP2713277B1Latent defect identification
Publication Date: 2021.11.17 ACCENTURE GLOBAL SERVICES LTD
  • EP2713277B1 patent drawingFigure 1
  • EP2713277B1 patent drawingFigure 2
  • EP2713277B1 patent drawingFigure 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.