Preserving Customizations During Software Maintenance Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software maintenance updates often overwrite user and developer customizations, requiring users and developers to reenter modifications after integration, leading to loss of customized settings.

Innovation Solution

A computer program product that updates a skeleton data set with maintenance updates, parses component fields, integrates user and developer customization values, and generates an output data set, preserving customizations by selecting the most recently modified values and sending the output as an email, while allowing updates to object code only modules and associated components.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If maintenance updates are applied to software packages, then software functionality is improved and bugs are fixed, but user and developer customizations are overwritten and lost

Engineering Contradiction:
Improvesoftware functionalityVSAvoidcustomizations
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The patent segments the software package into distinct components: OCO modules, skeleton data sets, and customization data sets. This segmentation allows maintenance updates to be applied to specific components (OCO and skeleton) without affecting others (customization data sets), thereby preserving user and developer customizations while still updating the core software functionality.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts customizations from the main software package structure into separate, protected customization data sets. By taking out the customizable elements and storing them independently with unique identifiers, the system can apply maintenance updates to the core software without overwriting these extracted customizations, thus resolving the contradiction between updating functionality and preserving user modifications.

Inventive Principle:
Principle #2Taking out (Extraction)

2Productivity

If maintenance updates overwrite text files to integrate updates, then software is updated, but customizations require reentry

Engineering Contradiction:
Improvesoftware update integrationVSAvoidreentry time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by establishing a protection mechanism for customizations before maintenance updates are applied. The system identifies and protects customization data sets in advance, creating a framework that automatically preserves these customizations during subsequent update processes. This preliminary setup eliminates the need for users to reenter customizations after updates, saving time and maintaining productivity.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If OCO modules are updated, then software performance is improved, but associated text files may be overwritten

Engineering Contradiction:
Improvesoftware performanceVSAvoidcustomization preservation
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent introduces an intermediary mechanism - the protection identifier system - that mediates between OCO module updates and text file customizations. When updates are applied, this intermediary mechanism checks for existing protection identifiers on customization data sets and prevents overwriting of files marked as customized. This allows OCO modules to be updated for performance improvements while protecting associated text files from being overwritten, maintaining ease of operation.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7913245B2Apparatus, system and method for modular distribution and maintenance of non-“object code only” dynamic components
Publication Date: 2011.03.22 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US7913245B2 patent drawing
  • US7913245B2 patent drawing
  • US7913245B2 patent drawing

AI summary

An apparatus, system, and method are disclosed for modular distribution and maintenance of non-“object code only” (OCO) dynamic components. OCO components comprise compiled executable modules. Non-OCO components comprise user readable and/or editable components. The modular distribution of non-OCO components comprises updating a skeleton data set comprising text and component fields such that user customizations and developer customizations are preserved. The modular distribution further allows for the generation of an output data in response to a reportable operational event, wherein the output data set is based on the skeleton data set and user customizations and developer customizations stored in customization data sets.