Application Configuration Upgrade via Version Detection and XSLT Transformation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing user interface configurations for applications are not easily upgradable when new versions of patterns are introduced, requiring manual updates and storage of upgraded configurations, which can be cumbersome and inefficient.

Innovation Solution

Implementing a method to automatically upgrade configuration specifications by comparing version numbers and using XSLT to transform XML trees, allowing incremental upgrades and reusing upgrade modules, thus eliminating the need for direct upgrade modules for each configuration and pattern combination.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If manual updates are used to upgrade configurations when new pattern versions are introduced, then configuration compatibility is maintained, but the upgrade process becomes cumbersome and inefficient

Engineering Contradiction:
Improveupgrade efficiencyVSAvoidupgrade complexity
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The system performs preliminary actions by automatically detecting configuration versions and applying appropriate upgrade modules before the configuration is used, eliminating the need for manual intervention and making the upgrade process transparent to users

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The configuration upgrade system serves itself by automatically identifying which upgrade modules are needed based on version comparisons and applying them without external assistance, making the process efficient and self-managing

Inventive Principle:
Principle #25Self-service

2Reliability

If upgraded configurations are stored for future use, then upgrade results are preserved, but storage requirements increase

Engineering Contradiction:
Improveconfiguration consistencyVSAvoidstorage space
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

Instead of storing upgraded configurations permanently, the system creates temporary copies during the upgrade process and discards them afterward, maintaining reliability through version tracking while minimizing storage requirements

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system discards intermediate upgrade artifacts after they serve their purpose, recovering storage space while maintaining configuration integrity through version number verification and selective regeneration

Inventive Principle:
Principle #34Discarding and recovering

3Adaptability or versatility

If direct upgrade modules are created for each configuration and pattern combination, then complete upgrade coverage is achieved, but the number of required modules increases exponentially

Engineering Contradiction:
Improveupgrade coverageVSAvoidnumber of upgrade modules
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The upgrade system is segmented into modular components where upgrade modules operate independently on specific configuration elements rather than requiring complete configuration-pattern pairs, dramatically reducing the total number of modules needed

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Upgrade modules are designed with universality to handle multiple configuration types and pattern versions through standardized interfaces and version detection logic, allowing a single module to serve multiple purposes across different configuration-scenario combinations

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS7761865B2Upgrading pattern configurations
Publication Date: 2010.07.20 SAP SE
  • US7761865B2 patent drawing
  • US7761865B2 patent drawing
  • US7761865B2 patent drawing

AI summary

Methods and systems, including computer program products, implementing techniques for upgrading pattern configurations. The techniques include receiving configuration for a pattern, determining whether the configuration is current with respect to the pattern, automatically upgrading the configuration if the configuration is not current, and using the configuration to modify one or more predefined elements of an application.