Software Anomaly Identification via Normalized Quality Indicators
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The accelerated development of software projects makes it challenging to accurately identify functional areas at high risk for defects, as traditional methods rely on subjective expert judgment or require laborious supervised training data, leading to potential undetected defects in released software.
Innovation Solution
An unsupervised method that calculates anomaly scores for software project functional areas based on normalized quality indicators, collected during development, which are correlated with previously identified anomalies and pruned to focus testing on high-risk areas without manual inspection or extensive training data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If traditional expert judgment methods are used to identify high-risk functional areas, then subjective assessment can be performed, but accuracy and consistency of defect risk identification deteriorate
Solution Approach 1:
The patent replaces the mechanical system of human expert judgment with an automated computational system that uses machine learning models and software project data to objectively identify high-risk functional areas, thereby eliminating subjectivity while maintaining ease of operation
Solution Approach 2:
The patent introduces an intermediary automated assessment system that processes software project data through machine learning models to generate objective risk rankings, serving as a mediator between raw project data and defect risk identification decisions
2Measurement precision
If supervised training methods are used to improve identification accuracy, then model precision can be enhanced, but laborious training data collection and processing time increase
Solution Approach 1:
The patent enables the system to automatically collect, process, and generate training data from software project repositories and development workflows without requiring manual annotation or expert labeling, allowing the machine learning models to train themselves on readily available project data
Solution Approach 2:
The patent performs preliminary data collection and preprocessing during the software development process itself, gathering quality metrics, code change data, and test results as they occur, so that training data is already prepared and organized when model training is needed
3Reliability
If comprehensive quality indicators are collected to improve defect detection coverage, then identification thoroughness increases, but system complexity and data processing burden increase
Solution Approach 1:
The patent extracts and focuses on the most critical quality indicators and features from the comprehensive set of available data, selecting only those features that have the highest predictive value for defect risk, thereby reducing system complexity while maintaining reliable detection coverage
Solution Approach 2:
The patent segments the comprehensive quality indicator set into distinct functional categories (code quality, test coverage, development metrics) and processes each segment separately through specialized machine learning models, reducing overall system complexity through modular architecture
4Measurement precision
If manual inspection methods are used to verify high-risk areas, then detailed analysis can be performed, but productivity and testing efficiency decrease
Solution Approach 1:
The patent replaces manual inspection with automated analysis systems that use machine learning models to rapidly assess and rank functional areas by defect risk, maintaining thorough analysis capabilities while dramatically improving testing efficiency and productivity
Data Source
AI summary
Quality indicators regarding a software project under development that has a plurality of functional areas are collected. Each quality indicator is normalized to a coverage of the functional area of the software project to which the quality indicator corresponds. The normalized quality indicators are correlated to previously identified anomalies of the software project, yielding an anomaly indicative value for each normalized quality indicator corresponding to a probability that the normalized quality indicator is revelatory of unidentified anomalies of the software project. A normal behavior for each normalized quality indicator is estimated. For each functional area of the software project, an anomaly score indicative of a likelihood of an unidentified anomaly within the functional area is calculated. The anomaly score is based on, for each normalized quality indicator corresponding to the functional area, how the normalized quality indicator departs from its estimated normal behavior as weighted by its anomaly indicative value.


