Dynamic Web Service Composition via Semantic Processing Graphs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing web service composition approaches require human involvement for creating new compositions, leading to delays and dependency on service providers for updates, and clients cannot easily create new compositions or invoke services without WSDL documents.

Innovation Solution

A method for service invocation that uses a semantic description of services, creating a processing graph from planning domain descriptions, deploying it as a composite service, and re-invoking or updating the service based on request parameters and domain changes, allowing instantaneous creation and dynamic updates of services.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual service composition is used, then service compositions can be created with human oversight, but it leads to delays and dependency on service providers for updates

Engineering Contradiction:
Improveservice composition accuracyVSAvoidservice creation and update time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system enables self-service through automated service composition. The composition engine automatically generates service compositions based on service descriptions and requirements without human intervention. The caching mechanism stores generated compositions for reuse, and the system automatically detects when updates are needed, eliminating dependency on manual service provider updates while maintaining reliability through automated validation.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary action by pre-generating and caching service compositions before they are needed. When services are described or updated, the composition engine proactively creates composition plans and stores them in the cache. This preliminary preparation eliminates delays during actual service invocation, as compositions are ready for immediate use without requiring manual creation at the moment of need.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If automated service composition is implemented, then service creation becomes instantaneous and dynamic, but it increases system complexity

Engineering Contradiction:
Improveservice composition speedVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments the service composition functionality into distinct modular components: a service description module that defines services, a composition engine that generates compositions, a cache that stores compositions, and an invocation interface that uses them. This segmentation allows each component to be developed, maintained, and optimized independently, reducing overall system complexity while enabling automated high-speed composition.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The composition engine serves multiple functions: it generates initial service compositions, updates compositions when services change, validates composition correctness, and manages the composition cache. This multi-functionality reduces the need for separate specialized components, simplifying the system architecture while maintaining high productivity in service composition operations.

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

3Loss of time

If service compositions are cached, then invocation overhead is reduced and response time improves, but memory resources are consumed

Engineering Contradiction:
Improveservice invocation timeVSAvoidmemory usage
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The system dynamically changes parameters of cached compositions based on service updates. When a service description changes, the composition engine updates only the affected composition parameters in the cache rather than storing entirely new compositions. This parameter-based updating reduces memory consumption by reusing common sub-compositions while still achieving fast invocation through caching.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The caching mechanism implements discarding and recovering by automatically removing outdated or unused compositions from the cache to free memory resources. When services are updated or new compositions are needed, the system recovers memory by evicting less frequently used compositions and generating or retrieving new ones. This dynamic memory management maintains fast invocation performance while controlling memory usage.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS8640149B2Method and apparatus for dynamic web service composition and invocation
Publication Date: 2014.01.28 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8640149B2 patent drawing
  • US8640149B2 patent drawing
  • US8640149B2 patent drawing

AI summary

A method for service invocation, including: receiving a first request for a service to be invoked, wherein the first request includes a semantic description of the service; creating a processing graph for the first request from planning domain descriptions of a plurality of services; deploying the processing graph in an execution environment as a composite service; invoking the composite service; and returning a response provided by the invoked composite service.