Progress Information in Service-Oriented Architecture

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In service-oriented architectures, clients lack meaningful progress information during service fulfillment, leading to uncertainty about processing status, responsiveness, or network errors, especially with lengthy requests.

Innovation Solution

Implementing a system where a business process platform provides progress information by storing and updating it in shared memory and retrieving it to display to the client through a separate work process, using HTTP protocol, allowing for real-time visual updates on user interfaces.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a service-oriented architecture uses HTTP request/response protocol for service fulfillment, then the architecture maintains simplicity and standard compliance, but the client receives no progress information during processing, creating uncertainty about system responsiveness

Engineering Contradiction:
Improvesystem responsivenessVSAvoidprogress information
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The system implements feedback by having the service-oriented architecture send progress information back to the client during service fulfillment. The server monitors business process execution and transmits status updates through HTTP responses, enabling the client to track progress in real-time and eliminating uncertainty about system responsiveness.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system introduces an intermediary mechanism where the server acts as a mediator between the business process execution and the client. The server captures progress information from the business process and relays it to the client through HTTP responses, enabling information flow without changing the fundamental request/response architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If the service-oriented architecture implements progress information transmission during processing, then the client receives meaningful updates, but the architecture complexity increases beyond standard HTTP request/response

Engineering Contradiction:
Improveprogress informationVSAvoidarchitecture complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The system applies universality by making the existing HTTP response mechanism serve multiple functions: it continues to transmit service results as before, while simultaneously carrying progress information through the same protocol. This multi-functionality avoids adding new communication protocols or complex infrastructure.

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

Solution Approach 2:

The system changes the content parameters of HTTP responses to include progress information alongside traditional service responses. By modifying the response structure to incorporate status updates, progress percentages, and timing information, the architecture delivers enhanced feedback without fundamentally altering the HTTP protocol.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If the server sends continuous progress updates to the client, then the user experience improves with real-time visibility, but the network bandwidth and processing overhead increase

Engineering Contradiction:
Improveuser experienceVSAvoidnetwork bandwidth
Core Design Contradiction:
Ease of operationVSLoss of energy

Solution Approach 1:

The system implements periodic action by sending progress information at specific intervals rather than continuously. The server monitors business process milestones and transmits updates when significant progress events occur, providing timely feedback while minimizing unnecessary network traffic during stable processing phases.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system applies self-service by having the business process itself generate and provide progress information. The business process monitors its own execution state and supplies progress data to the server, which then forwards it to the client. This eliminates the need for separate monitoring infrastructure and reduces overhead.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9536222B2Progress information in a service-oriented architecture
Publication Date: 2017.01.03 SAP SE
  • US9536222B2 patent drawing
  • US9536222B2 patent drawing
  • US9536222B2 patent drawing

AI summary

A system may include reception of an instruction to execute a business process from a client application, execution of the business process in a first software work process, and storage, during execution of the business process, of progress information associated with the business process within a memory. A system may further include reception, at a second software work process, of a request from the client application for progress information, retrieval, in the second software work process, of the progress information from the shared memory, reception, at the second software work process, of the progress information from the memory, and provision of the progress information to the client application from the second software work process.