Automated Dependency Version Management for Software Builds

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software build technologies lack a consistent and precise method to manage software dependencies, leading to issues with conflicting and circular dependencies, which are time-consuming and prone to errors, requiring manual intervention and expertise from developers and system administrators.

Innovation Solution

A computer-implemented method that generates dependency version information and builds software packages with precise dependency lists, using a compiler registered with an event handler to create direct and transitive dependency sections, resolving conflicts and ensuring precision dependencies through automated processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If manual dependency management is used, then flexibility and control are maintained, but time consumption and error rates increase

Engineering Contradiction:
Improvebuild speedVSAvoidtime for dependency management
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system performs self-service by automatically detecting, analyzing, and resolving dependency conflicts without human intervention. The dependency resolution mechanism autonomously identifies conflicting dependencies, determines resolution strategies, and applies fixes to the build configuration, eliminating the need for manual dependency management while maintaining build integrity.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent introduces an intermediary dependency resolution mechanism that acts as a mediator between the build system and external dependencies. This intermediary automatically analyzes dependency graphs, identifies conflicts, and resolves them by selecting appropriate versions or alternative dependencies, thereby speeding up the build process without sacrificing control.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If manual dependency management is used, then complex dependency issues can be addressed with expertise, but error-proneness and complexity increase

Engineering Contradiction:
Improvedependency accuracyVSAvoiddependency management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent replaces manual mechanical dependency management with an automated computational system. The dependency resolution mechanism uses algorithmic analysis of dependency graphs and version constraints to automatically detect and resolve conflicts, eliminating human error while managing complexity through systematic computational methods rather than manual intervention.

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

Solution Approach 2:

The system implements feedback loops where the dependency resolution mechanism continuously monitors the dependency graph, detects conflicts, applies resolutions, and verifies outcomes. This closed-loop feedback ensures high reliability by automatically correcting dependency issues and preventing errors from propagating through the build system.

Inventive Principle:
Principle #23Feedback

3Productivity

If automated dependency management is implemented, then time consumption is reduced, but precision and control may be compromised

Engineering Contradiction:
Improvebuild speedVSAvoiddependency version precision
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The patent segments the dependency management process into distinct automated phases: dependency detection, conflict analysis, resolution strategy selection, and verification. Each phase operates with precise control over version constraints and dependency relationships, maintaining high precision while enabling overall automation that speeds up the build process.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary analysis of the dependency graph before actual builds, pre-identifying potential conflicts and resolving them in advance. This preliminary automated action ensures precision is maintained by addressing dependency issues before they affect build outcomes, while reducing time consumption during the actual build process.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12197901B2Automatic precision dependencies management
Publication Date: 2025.01.14 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12197901B2 patent drawing
  • US12197901B2 patent drawing
  • US12197901B2 patent drawing

AI summary

In a first aspect of the invention, there is a computer-implemented method including: generating, by one or more processors, dependency version information for a target software application, based on activity of a compiler registered with an event handler; generating, by the one or more processors, one or more dependency sections with a dependency list for the target software application, wherein the dependency list incorporates the dependency version information; and building, by the one or more processors, a software package with the one or more dependency sections with the dependency list for the target software application.