User Interface Extensions for Dynamic Service Integration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Enterprise software systems often require significant customization and development costs to integrate external data sources and functionalities, as they typically only meet 80-90% of a customer's needs, with the remaining 10-20% needing costly integration of external services and user education.

Innovation Solution

A predefined user interface definition that allows dynamic extension by accessing and rendering content from both local and external services, enabling customers to add functionality without additional development, through a catalog of available extensions that can be inserted into the user interface, allowing for integration of external data sources and services without altering the existing software system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If enterprise software provides only standard functionality, then development costs are low, but it cannot meet 100% of customer needs

Engineering Contradiction:
Improveability to meet customer needsVSAvoidsoftware customization complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The software system is segmented into core enterprise functionality and extensible user interface extensions. Extensions are separate modular components that can be independently added to the base software, allowing customers to meet additional needs without modifying or complicating the core system. The extension mechanism divides the software into a stable foundation and flexible add-ons.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The extension mechanism provides universal functionality that can serve multiple purposes. A single extension framework supports various types of external integrations (social media, messaging, analytics, advertising) through a common interface. This multi-functional approach allows the same base software to adapt to different customer needs through interchangeable extensions.

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

2Adaptability or versatility

If external data sources and functionalities are integrated into enterprise software, then customer needs are better met, but development and integration costs increase

Engineering Contradiction:
Improveintegration of external servicesVSAvoidintegration cost
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The extension mechanism enables self-service integration by providing customers with tools to independently add and configure extensions without requiring developer intervention. The system includes extension stores, configuration interfaces, and automated integration capabilities that allow customers to perform their own customizations, eliminating the need for expensive professional services.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent introduces an intermediary extension layer between the core software and external services. This mediator handles all integration complexity, data translation, and communication protocols, shielding the core system from external service variations. Customers integrate with standardized extension interfaces rather than dealing directly with complex external APIs.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If consultants and resources are expended to educate users and extend the application, then application functionality is enhanced, but time and resources are consumed

Engineering Contradiction:
Improveapplication extension capabilityVSAvoiduser education time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system provides self-service capabilities including automated user provisioning, self-guided configuration interfaces, and contextual help systems. Users can independently configure extensions and understand their functionality through built-in documentation and guided workflows, eliminating the need for extensive consultant-led training programs.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent implements preliminary configuration and setup of extensions before users interact with them. Default configurations, pre-configured connections, and automated onboarding processes are established in advance, so users encounter fully functional, pre-prepared extensions rather than requiring education on complex setup procedures.

Inventive Principle:
Principle #10Preliminary action

4Adaptability or versatility

If development is performed to integrate additional functionality, then software capabilities are expanded, but development resources are expended

Engineering Contradiction:
Improvesoftware functionalityVSAvoiddevelopment efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent segments functionality into core software components and separate extension modules. This segmentation allows independent development, testing, and deployment of extensions without affecting the core system. Developers can work on extensions in isolation, significantly improving development efficiency and reducing resource requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements dynamic extension loading and activation, allowing functionality to be added or removed at runtime without system reconfiguration or redeployment. This dynamic approach enables rapid prototyping and iterative development of new features, dramatically improving development productivity compared to static integration methods.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10552023B2User interface extensions
Publication Date: 2020.02.04 SAP SE
  • US10552023B2 patent drawing
  • US10552023B2 patent drawing
  • US10552023B2 patent drawing

AI summary

A predefined user interface definition specifying a first service is accessed in persistent storage. The user interface definition includes an extension including a fragment definition specifying a second service. First content is retrieved from the first service according to the user interface definition. Second content is retrieved from the second service according to the fragment definition. A user interface is rendered in a display space according to the predefined user interface definition and including the first content and the second content. At least one of the accessing, the retrieving first content, the retrieving second content, and the rendering is performed by at least one data processor forming part of at least one computing system. Related apparatus, systems, techniques and articles are also described.