Software Update Queue Mechanism for Consistent Code Modification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software maintenance and updates in enterprise systems are complicated by customer or developer changes, requiring tools to manage updates without disrupting customizations and ensuring security, while minimizing downtime and preventing inconsistencies.

Innovation Solution

A computer-implemented method and system for modifying software code in a distributed computing environment, involving processing commands to update modules, generating queues, and transferring modified code to production systems, with features like API exposure and verification processes to ensure error-free and secure updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If updates or upgrades are applied to the productive environment directly, then the software system can be updated quickly, but security risks and system inconsistencies may occur

Engineering Contradiction:
Improveupdate speedVSAvoidsystem consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system segments the update process into multiple independent phases: transport phase (moving update information), implementation phase (applying updates to queues), and verification phase (checking update integrity). This segmentation allows updates to be applied systematically across different environments (development, quality assurance, productive) while maintaining control and consistency at each stage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by first transporting update information to the productive system before actual implementation occurs. Update queues are created and prepared in advance, allowing verification of update integrity and compatibility before the updates are actively applied to the running system, thus preventing inconsistencies.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If updates are tested outside the productive environment first, then security and compatibility are improved, but the update process becomes more complex

Engineering Contradiction:
ImprovesecurityVSAvoidupdate process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system introduces an intermediary mechanism - the update queue - that acts as a buffer between the update source and the productive system. This queue structure standardizes the update process across different environments, providing a consistent interface for update management while maintaining security through controlled information transport, thereby reducing overall process complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Manufacturing precision

If system downtime is extended to ensure proper update delivery, then update completeness is improved, but productivity during maintenance windows deteriorates

Engineering Contradiction:
Improveupdate delivery accuracyVSAvoidsystem downtime
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The system enables continuous update delivery by implementing an asynchronous update queue mechanism. Update information is transported and prepared in advance without requiring the productive system to be stopped. The actual implementation occurs continuously as updates become available, eliminating the need for extended downtime while ensuring complete and accurate update delivery through verification processes.

Inventive Principle:
Principle #20Continuity of useful action

4Manufacturing precision

If manual verification of updates is performed, then update accuracy is improved, but the maintenance time and labor requirements increase

Engineering Contradiction:
Improveupdate verification accuracyVSAvoidverification time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The system implements self-service verification through automated processes that check update integrity, consistency, and compatibility within the queue structure. The update management system automatically verifies updates against predefined criteria and system state, eliminating the need for manual verification while maintaining high accuracy through systematic automated checking mechanisms.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8667477B2Modifying software code
Publication Date: 2014.03.04 SAP SE
  • US8667477B2 patent drawing
  • US8667477B2 patent drawing
  • US8667477B2 patent drawing

AI summary

A computer-implemented method for modifying software code includes: processing a command to modify a first module of software code stored on a production system in a distributed computing environment, where the software code includes a first plurality of data objects and a first plurality of notes; generating at least one queue comprising the second plurality of notes; modifying a second module of software code stored on a development system in the distributed computing environment with the second plurality of notes, where the second module of software code comprising a version of the first module of software code; and transferring the second module of software code to the production system to modify the first module of software code such that the first plurality of notes are modified by the second plurality of notes.