Machine Learning Impact Analysis for Software Release Quality

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Enterprise organizations face challenges in identifying and addressing performance issues in software applications during upgrades, particularly in determining the impact of modifications on user interface components and navigational links, which can lead to inefficiencies and instability in computing infrastructure.

Innovation Solution

A computing platform that retrieves log data from production environments, generates a navigational graph, identifies potential impacts of code changes, and provides an interactive graphical user interface to highlight affected components and links, using machine learning to predict and prioritize testing based on user activity and historical data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If comprehensive testing of all user interface components and navigational links is performed during software upgrades, then reliability is improved, but productivity deteriorates due to time-consuming manual analysis

Engineering Contradiction:
Improvesoftware application reliabilityVSAvoidupgrade implementation speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent replaces manual mechanical analysis of software impact with an automated computing platform that uses machine learning models to predict impacted components. The system automatically retrieves code changes, analyzes navigational graphs, and identifies affected user interface components and links, eliminating the need for manual review while maintaining high accuracy in identifying what needs testing.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The system performs preliminary analysis by generating navigational graphs and predicting impacted components before actual testing begins. By pre-identifying which user interface components and navigational links are affected by code changes, the system enables targeted testing rather than comprehensive manual testing, significantly reducing the time required while ensuring all necessary areas are covered.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If manual impact analysis of user interface components and navigational links is performed, then measurement precision is improved, but loss of time increases due to the complexity and scale of enterprise software applications

Engineering Contradiction:
Improveimpact identification accuracyVSAvoidanalysis time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent replaces time-consuming manual impact analysis with an automated machine learning-based system. The computing platform uses trained models to rapidly analyze code changes and predict impacted components with high accuracy, reducing analysis time from days or weeks to minutes while maintaining or improving precision through systematic algorithmic analysis of navigational graphs and code dependencies.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The system creates a virtual navigational graph that copies and represents the actual software application's user interface structure and navigational relationships. This graphical representation allows rapid analysis and prediction of impacts without needing to manually examine the actual complex enterprise software, enabling fast and accurate impact identification through the simplified model.

Inventive Principle:
Principle #26Copying

3Reliability

If extensive testing coverage is achieved to identify all impacted components, then reliability is improved, but device complexity increases due to the testing infrastructure requirements

Engineering Contradiction:
Improveerror detection capabilityVSAvoidtesting system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts and isolates only the specific user interface components and navigational links that are actually impacted by code changes, rather than requiring comprehensive testing infrastructure for the entire application. By predicting and extracting the subset of affected components, the system reduces testing complexity while maintaining reliable error detection for all necessary areas.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The navigational graph serves as an intermediary representation between the actual complex enterprise software and the testing process. This graphical model mediates the analysis by providing a simplified, structured view of user interface relationships, enabling accurate impact prediction without requiring direct complex interactions with the full software system during analysis.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11513819B2Machine learning based impact analysis in a next-release quality assurance environment
Publication Date: 2022.11.29 BANK OF AMERICA CORP
  • US11513819B2 patent drawing
  • US11513819B2 patent drawing
  • US11513819B2 patent drawing

AI summary

Aspects of the disclosure relate to impact analysis in a next-release quality assurance environment for a software application. First log data associated with user navigation of user interface components in a production environment may be retrieved. A production navigational graph may be generated, where a node represents a user interface component visited by a user, and an edge representing a navigational link traversed by the user. Then, second log data associated with release notes for a next-release version of the software application maybe retrieved. Then, the computing platform may identify a change in a portion of a software code in the next-release version, and may identify, based on the production navigational graph, a user interface component and/or a link potentially impacted by the change. The production navigational graph may be provided, via an interactive graphical user interface, where the user interface component and/or the link is visually highlighted.