Software Instance Exchange for Update Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The maintenance of software programs in large computing systems, particularly in cloud environments, is complex due to partial updating issues where some software instances remain at an old level while others are updated, leading to increased management costs and potential quality issues of cloud services.

Innovation Solution

A method is introduced where a failed software instance is exchanged with a suitable instance from other software instances based on optimization criteria, allowing the updating process to continue, thereby maintaining all instances at a consistent level, reducing partial updates, and minimizing management costs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If updating processes are performed frequently to enable continuous delivery, then productivity and ability to deliver new software levels are improved, but the risk of partial updating of software instances increases

Engineering Contradiction:
Improvedelivery frequencyVSAvoidupdate consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary actions by creating a backup instance before updating the primary instance. This preparatory step ensures that if the update fails or creates a partial update scenario, the system can restore to the backup instance, thereby maintaining update consistency even with frequent updates

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms by monitoring the update status of software instances and automatically initiating exchange operations when partial updates are detected. This closed-loop control ensures that update consistency is maintained by detecting and correcting deviations caused by frequent updates

Inventive Principle:
Principle #23Feedback

2Reliability

If multiple software instances are maintained to ensure adequate performance and reliability, then service quality is improved, but management complexity increases due to different software levels

Engineering Contradiction:
Improveservice qualityVSAvoidmanagement complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system applies self-service by automatically detecting partial updates and initiating exchange operations between instances without human intervention. The system autonomously identifies which instances need updating and performs the exchange, thereby reducing management complexity while maintaining service quality through consistent software levels across instances

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system merges the management of multiple software instances by implementing a centralized exchange mechanism that coordinates updates across all instances. Instead of managing each instance separately, the system combines their update processes through automatic exchange operations, reducing overall management complexity while ensuring all instances maintain the same software level

Inventive Principle:
Principle #5Merging (Combining)

3Duration of action of stationary object

If software instances are updated in place, then continuity of service is maintained, but partial updating occurs when updates fail, increasing management cost

Engineering Contradiction:
Improveservice continuityVSAvoidmanagement cost
Core Design Contradiction:
Duration of action of stationary objectVSDevice complexity

Solution Approach 1:

The system uses copying by creating a backup instance before performing updates on the primary instance. This copy serves as a fallback option if the update fails, allowing the system to restore service continuity without incurring the costs associated with manual intervention or dealing with partial updates

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system implements beforehand cushioning by preparing a backup instance prior to the update process. This preparatory measure acts as a cushion or safety net that prevents the adverse effects of update failures, ensuring service continuity while avoiding the increased management costs that would result from handling partial update scenarios

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Data Source

PatentUS10289402B2Collaborative maintenance of software programs
Publication Date: 2019.05.14 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10289402B2 patent drawing
  • US10289402B2 patent drawing
  • US10289402B2 patent drawing

AI summary

Maintaining a plurality of software instances of a software program in a computing environment. An updating request is received for an updating process of the software instances from an old level to a new level. An attempt is made to update each software instance to the new level according to at least one updating policy. Responsive to a failure of the updating of each failed instance of the software instances, an exchanging instance is searched among the other software instances according to at least one searching policy, the exchanging instance being adapted to be exchanged with the failed instance for continuing the updating process according to at least one optimization criterion of the computing environment. The failed instance and the exchanging instance are exchanged in response to a positive result of the searching. The updating process corresponding to the failed instance is resumed.