Machine Learning Model for Software Build Stage Prediction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity of software build development stages, where failures in one stage can cascade and affect the entire build, makes it difficult to identify potential sources of failure and allocate resources effectively, leading to inefficiencies and potential build failures.

Innovation Solution

A machine learning model is trained on historical software build data to predict the success or failure of development stages and modify attributes such as resource allocation and stage sequencing to prevent failures, using techniques like vector embedding and Euclidean distance analysis to recommend resource adjustments and stage modifications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple development stages are performed sequentially with shared resources, then resource utilization is optimized, but the risk of cascading failures increases

Engineering Contradiction:
Improveresource utilizationVSAvoidcascading failure risk
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary actions by predicting potential failures in development stages before they occur. The machine learning model analyzes historical data to identify at-risk stages and recommends preventive measures, such as adjusting resource allocation or modifying build attributes, to prevent failures from cascading through sequential stages.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms by continuously monitoring development stage outcomes and using this information to train machine learning models. The model provides feedback predictions about potential failures, which then inform resource allocation decisions and build attribute modifications, creating a closed-loop system that adapts to prevent cascading failures.

Inventive Principle:
Principle #23Feedback

2Reliability

If comprehensive resource allocation is performed across all development stages, then build completeness is improved, but the complexity of identifying failure sources increases

Engineering Contradiction:
Improvebuild completenessVSAvoidfailure source identification complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system extracts and isolates potential failure sources by using machine learning to identify specific development stages or build attributes that are most likely to cause failures. This extraction allows the system to focus resource allocation and monitoring efforts on critical areas without becoming overwhelmed by the complexity of the entire build process.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The machine learning model acts as an intermediary between the complex build system and the resource allocation decisions. It processes comprehensive build data, identifies patterns, and provides simplified recommendations for resource allocation, thereby reducing the complexity of failure source identification while maintaining build completeness.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If historical data is used to train prediction models, then prediction accuracy is improved, but the time required for model training increases

Engineering Contradiction:
Improveprediction accuracyVSAvoidmodel training time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary training of the machine learning model using historical build data before actual prediction is needed. By pre-training the model with comprehensive historical information, the system achieves high prediction accuracy for development stage outcomes without requiring time-consuming training during the actual build process.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11915107B2Software build management using machine learning model
Publication Date: 2024.02.27 ORACLE INT CORP
  • US11915107B2 patent drawing
  • US11915107B2 patent drawing
  • US11915107B2 patent drawing

AI summary

Techniques for managing a software build using a machine learning model are disclosed. A system obtains historical data associated with historical software builds. The historical data includes attribute data for a plurality of development stages associated with a historical software build and labels indicating success or failure for the plurality of development stages. The system trains a machine learning model using the historical data associated with the historical software builds to generate predictions of success or failure of the plurality of development stages. The system receives attributes of a target software build and a selection of a first target development stage of the target software build. The system applies the machine learning model to the target software build to generate a first prediction of success or failure of the first target development stage.