Change-Set Management Tool Parsing Java Interdependencies

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software developers face inefficiencies and inaccuracies when managing change-sets across multiple branches/streams due to the difficulty of understanding and minimizing the impact of unresolved changes, requiring manual examination and application of changes, which decreases efficiency and accuracy in change-set delivery.

Innovation Solution

A change-set management tool that parses outgoing changes into interdependent changes within a Java class file and evaluates their impact on external source code, allowing for better understanding and management of change-set delivery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If developers manually examine and apply changes across multiple streams, then accuracy in change-set delivery is improved, but efficiency decreases

Engineering Contradiction:
Improveaccuracy in change-set deliveryVSAvoidefficiency in change-set delivery
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The change-set is segmented into multiple independent change units, each representing a specific modification to a file or folder. This segmentation allows the system to automatically track and manage individual changes separately, enabling automated impact analysis while maintaining the ability to apply changes individually when needed, thus resolving the contradiction between manual precision and automated efficiency

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system provides automated feedback by analyzing the impact of each change on other artifacts and generating recommendations for resolving conflicts. This feedback mechanism eliminates the need for manual examination of all change interactions, allowing developers to quickly review automated conflict resolutions and make informed decisions, thereby improving both efficiency and accuracy

Inventive Principle:
Principle #23Feedback

2Manufacturing precision

If developers manually apply changes across multiple streams, then accuracy is improved, but time consumption increases

Engineering Contradiction:
Improveaccuracy in change-set deliveryVSAvoidtime for change-set delivery
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The system performs preliminary analysis of change impacts before changes are applied. By pre-analyzing how each change affects other artifacts and identifying potential conflicts in advance, the system eliminates the need for time-consuming manual review during the change application process, thus reducing time loss while maintaining accuracy

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The change-set management system performs self-service by automatically analyzing change impacts, identifying conflicts, and generating resolution recommendations without requiring manual intervention. This automation handles the time-consuming analysis work, allowing developers to focus only on reviewing and applying changes, thereby significantly reducing time consumption while maintaining high accuracy

Inventive Principle:
Principle #25Self-service

3Productivity

If a change-set management tool automatically analyzes changes, then efficiency is improved, but system complexity increases

Engineering Contradiction:
Improveefficiency in change-set deliveryVSAvoidcomplexity of change-set management tool
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system introduces an intermediary layer between developers and the change-set management process. This intermediary component automatically handles the complex analysis of change impacts and conflict resolution, shielding developers from the underlying complexity while providing simplified automated recommendations. The intermediary absorbs the computational and analytical complexity, improving efficiency without exposing users to system complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system changes the parameters of change-set management by transforming manual, qualitative analysis into automated, quantitative analysis. By representing changes as structured data with identifiable attributes and relationships, the system enables efficient automated processing through parameter-based analysis, improving efficiency while managing complexity through standardized data representations

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10157054B2Managing change-set delivery
Publication Date: 2018.12.18 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10157054B2 patent drawing
  • US10157054B2 patent drawing
  • US10157054B2 patent drawing

AI summary

An approach that analyzes and manages unresolved (i.e., pending, outgoing) change-sets is provided. Specifically, this approach parses the change-set into a plurality (i.e., one or more) of changes having interdependencies within a java class file to determine the impact each change may have. More specifically, a change-set management tool provides this capability. The change-set management tool includes a parsing module configured to receive an outgoing change-set and to parse the change-set into a plurality of changes having interdependencies within a java class file. The change-set management tool further comprises an evaluation module configured to evaluate an impact that each of the plurality of changes within the change-set has on source code external to the change-set in the java class file based on the interdependencies.