Software Product Line Fault Localization for Feature Interactions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing fault localization methods for software product lines, particularly those focusing on functional faults, are inefficient and inaccurate due to the neglect of feature interactions and the complexity of comprehensively considering all potential features, leading to increased maintenance difficulty and reduced accuracy in defect identification.

Innovation Solution

An automated functional fault localization method that utilizes Spectrum-Based Fault Localization (SBFL) combined with uncertainty reasoning algorithms and information theory techniques to calculate predictive, runtime, and correlation suspicious values, followed by a Dempster-Shafer fusion algorithm to integrate these values, thereby enhancing the accuracy and efficiency of fault localization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If SBFL is directly applied to fault localization in software product lines, then the method is simple to implement, but the accuracy of defect identification is reduced due to ignoring feature interactions

Engineering Contradiction:
Improveease of implementationVSAvoidaccuracy of defect identification
Core Design Contradiction:
Ease of manufactureVSMeasurement precision

Solution Approach 1:

The patent segments the fault localization process into two distinct phases: (1) feature-level suspiciousness calculation that considers feature interactions to identify suspicious feature combinations, and (2) statement-level suspiciousness calculation using SBFL techniques. This segmentation allows the system to first identify relevant feature interactions without overwhelming complexity, then apply SBFL to specific code regions, thereby maintaining implementation simplicity while improving accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of analysis by calculating suspiciousness at the feature combination level before drilling down to statement level. This multi-dimensional approach adds the feature interaction dimension to the traditional SBFL statement analysis, enabling the system to capture bugs that only manifest under specific feature combinations while still utilizing standard SBFL techniques for precise location.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Measurement precision

If all potential features are comprehensively considered to locate feature interactions containing buggy statements, then the accuracy of fault localization is improved, but the maintenance process becomes overly inefficient

Engineering Contradiction:
Improveaccuracy of fault localizationVSAvoidefficiency of maintenance process
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent applies partial action by focusing computational resources on only the most suspicious feature combinations rather than exhaustively analyzing all possible feature interactions. The system calculates suspiciousness scores for feature combinations and prioritizes investigation of those with highest scores, thereby achieving good fault localization accuracy without the prohibitive cost of comprehensive analysis of all potential features.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent applies local quality by directing detailed analysis resources to specific suspicious feature combinations and their associated code regions rather than uniformly analyzing the entire software product line. Once suspicious feature combinations are identified at the feature level, the system concentrates statement-level SBFL analysis only on the relevant code paths activated by those feature combinations, improving efficiency by avoiding unnecessary analysis of unrelated code.

Inventive Principle:
Principle #3Local quality

3Measurement precision

If feature interactions are considered in fault localization, then the accuracy of identifying variable bugs is improved, but the complexity of the localization process increases

Engineering Contradiction:
Improveaccuracy of variable bug identificationVSAvoidcomplexity of localization process
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the complex problem of feature interaction analysis into manageable components: (1) identifying individual features and their combinations, (2) calculating suspiciousness scores for feature combinations based on test execution data, (3) filtering to identify suspicious feature combinations, and (4) applying SBFL to locate specific buggy statements. This segmentation transforms the overwhelming complexity of analyzing all feature interactions into a systematic, multi-stage process that is more tractable and maintainable.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces feature combination suspiciousness scores as an intermediary metric that bridges the gap between high-level feature interactions and low-level statement analysis. Instead of directly analyzing complex feature interactions to locate bugs, the system first computes intermediate suspiciousness scores for feature combinations, which then guide the subsequent statement-level analysis. This intermediary layer simplifies the overall process by providing a clear bridge between feature-level and statement-level analysis.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20260017133A1Automated Functional Fault Localization Method For Software Product Lines
Publication Date: 2026.01.15 SOUTH CHINA UNIV OF TECH
  • US20260017133A1 patent drawing
  • US20260017133A1 patent drawing
  • US20260017133A1 patent drawing

AI summary

An automated functional fault localization method for software product lines integrates techniques such as Spectrum-Based Fault Localization (SBFL), machine learning algorithms, data mining, and information theory. By utilizing code blocks as the detection granularity, it performs probability allocation from three perspectives: prediction, actual execution, and correlation. The suspiciousness values of code blocks are then computed using uncertainty reasoning algorithms, enabling the rapid identification of suspicious statements. Building on this, a more precise assessment of these statements is achieved by evaluating at three levels of granularity: global, local, and code block. This ultimately results in more efficient and accurate fault localization. The code blocks directly correspond to internal feature interactions, significantly enhancing the efficiency of searching for these interactions. For program statements with a higher likelihood of causing software errors, this method allows for quick identification and localization without manual intervention, thereby facilitating the maintenance of software product line systems.