Hierarchical Classification for Software Defect Prediction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing software defect reporting tools are unable to accurately identify the specific software component causing a defect due to non-uniform datasets and mixed ground truth labels, leading to misclassification and inefficiencies in defect triage and correction.
Innovation Solution
The use of machine learning techniques, including topic modeling and hierarchical classification models, to generate feature vectors from textual defect descriptions, integrate classification and sub-classification probabilities, and normalize training data to improve prediction accuracy and reliability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If location-based tools are used to predict defect location, then defect prediction can be performed, but accuracy is reduced due to mixed ground truth labels and non-uniform datasets
Solution Approach 1:
The patent segments the classification task into hierarchical levels (component level and sub-component level). The defect classification model predicts classifications at multiple hierarchical levels rather than treating all defects uniformly, allowing for more precise and reliable predictions by breaking down the complex classification problem into manageable segments with consistent labeling at each level.
Solution Approach 2:
The patent adds a hierarchical dimension to the classification system by introducing sub-component classifications beneath component classifications. This dimensional expansion allows the model to capture fine-grained defect locations while maintaining consistency at higher levels, resolving the accuracy-reliability contradiction by operating in multiple classification dimensions simultaneously.
2Productivity
If activity-based tools are used to predict software component, then defect prediction is performed, but results are inaccurate due to non-stationary defect distributions over time
Solution Approach 1:
The patent implements a dynamic classification approach where the model adapts to changing defect distributions over time. By training on historical data spanning different time periods and using hierarchical classifications that remain consistent while capturing evolving patterns, the system maintains both high productivity in defect triage and accurate component prediction despite non-stationary distributions.
Solution Approach 2:
The patent performs preliminary classification at the component level before sub-component level classification. This preliminary action establishes a consistent framework that guides subsequent fine-grained predictions, ensuring that even as defect distributions evolve, the overall classification structure remains reliable and productive for defect triage.
3Ease of operation
If traditional classification models are used with mixed ground truth labels, then defect classification can be performed, but manufacturing precision of classification is reduced
Solution Approach 1:
The patent segments the ground truth labels into hierarchical levels (component and sub-component), ensuring that each level has consistent and uniform labeling. This segmentation eliminates the mixed label problem while maintaining ease of operation, as the model processes structured hierarchical labels rather than attempting to handle inconsistent flat labels.
Solution Approach 2:
The patent changes the parameter structure of classification labels from flat, mixed ground truth to hierarchical, structured labels with consistent semantics at each level. This parameter transformation enables the model to achieve high classification precision while maintaining operational simplicity through the organized label structure.
Data Source
AI summary
Systems and methods for facilitating updates to software programs via machine-learning techniques are disclosed. In an example, an application generates a feature vector from a textual description of a software defect by applying a topic model to the textual description. The application uses the feature vector and one or more machine-learning models configured to predict classifications and sub-classifications of the textual description. The application integrates the classifications and the sub-classifications into a final classification of the textual description that indicates a software component responsible for causing the software defect. The final classification is usable for correcting the software defect.


