Software Adaptation Layer Separating Presentation Logic from Application Domain

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software adaptation methods require significant user effort to understand and modify source code, and are often incompatible with revisions or upgrades, leading to increased development and ownership costs, especially in complex applications.

Innovation Solution

Structuring software applications into a first layer for processing data elements and a second layer for adaptation data, allowing for independent adaptation of the user interface and data presentation without modifying the underlying application domain or state, using a framework that separates adaptation logic from the application domain.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If users modify source code to adapt software applications, then customization capability is improved, but user effort and complexity increase significantly

Engineering Contradiction:
Improvecustomization capabilityVSAvoiduser effort
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent divides the software system into two distinct layers: an application layer that contains business logic and data processing, and a presentation layer that handles user interface and data display. This segmentation allows users to modify only the presentation layer for customization while the application layer remains intact and unaffected by user modifications.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary adaptation layer between the application layer and presentation layer. This adaptation layer acts as a mediator that translates user customization requirements into modifications of the presentation layer, isolating the business logic from user-made changes and enabling easy customization without touching the core application code.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If users modify source code for adaptation, then customization is achieved, but compatibility with future revisions or upgrades is worsened

Engineering Contradiction:
Improvecustomization capabilityVSAvoidcompatibility with upgrades
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

By segmenting the system into application layer and presentation layer, the patent ensures that modifications made by users in the presentation layer do not affect the application layer. When the application layer is updated or upgraded, the changes are isolated to the presentation layer, maintaining compatibility between user customizations and future revisions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a copy of the application interface in the presentation layer that can be independently modified. This copy allows users to adapt the interface for their specific needs without modifying the original application code, ensuring that future upgrades to the application layer do not break user customizations.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If source code is made available for user modification, then adaptation capability is improved, but security and intellectual property protection are worsened

Engineering Contradiction:
Improveadaptation capabilityVSAvoidsecurity risk
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent extracts the adaptability functionality from the core application code and places it in a separate presentation layer. This extraction allows users to modify the interface and presentation logic without accessing or modifying the sensitive business logic and data processing code, thereby maintaining security and intellectual property protection while enabling adaptation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies local quality by allowing modification only in specific localized areas (presentation layer) while keeping the core application code immutable and protected. Users can customize the interface and display logic locally without affecting the security-critical business logic, thus balancing adaptability with security.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS7992128B2Computer software adaptation method and system
Publication Date: 2011.08.02 SAP SE
  • US7992128B2 patent drawing
  • US7992128B2 patent drawing
  • US7992128B2 patent drawing

AI summary

A method is provided for creating and/or utilizing a computer software application. The method may include structuring the application into a first software layer and a second software layer and defining a plurality of data elements used by the application. The method may also include establishing the first software layer based on the data elements for processing the data elements and creating the second software layer including adaptation data to present the plurality of data elements modified by the adaptation data associated with the data elements. Further, the adaptation data may enable plural presentations of the data elements by the second software layer independently from the first software layer.