Pattern-Based Service Bus Architecture for Scalable SOA

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional service-oriented architecture (SOA) systems are limited by requiring service consumers to be tightly bound to service definitions, making it difficult to update service providers and manage complex interactions, and they only allow one type of interaction between consumers and providers, which restricts the flexibility and scalability of service communication.

Innovation Solution

A pattern-based service bus architecture that constrains interactions between bus participants through predefined patterns, allowing bus participants to interact only with the service bus, which manages activities and delivers them to other participants, enabling more complex and standardized interactions while simplifying development and reducing the need for activity-specific management logic.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If service consumers are tightly bound to service definitions, then service providers can be updated, but it complicates changes and requires maintenance of multiple service definitions

Engineering Contradiction:
Improveservice provider update capabilityVSAvoidservice definition management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a service definition registry as an intermediary component that decouples service consumers from service providers. Instead of consumers being directly bound to provider definitions, both interact through the registry which stores and manages service definitions. This allows service providers to update their definitions in the registry without requiring changes to consumer code, resolving the contradiction between update capability and management complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If typical service bus allows only one type of interaction (client-server function calls), then implementation is simple, but flexibility and scalability of service communication are restricted

Engineering Contradiction:
Improveservice bus implementation simplicityVSAvoidservice communication flexibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent implements a universal service bus architecture that supports multiple interaction patterns (request-response, publish-subscribe, event-driven) within a single system. The service bus is designed to handle various message types and communication styles through a unified framework, allowing the system to adapt to different service interaction requirements without requiring separate implementation for each pattern, thus achieving both simplicity and flexibility.

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

3Ease of operation

If service consumers directly invoke service providers, then function calls are direct and simple, but complex interactions between consumers and providers become difficult to manage

Engineering Contradiction:
Improvedirect function call simplicityVSAvoidcomplex interaction management
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The service bus acts as an intermediary layer between service consumers and providers, replacing direct function calls with message-based communication. This intermediary handles complex interaction scenarios such as routing, message transformation, and coordination of multiple services, while consumers and providers maintain simple interfaces. The service bus absorbs the complexity of interaction management, allowing individual services to remain simple.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10169259B2Pattern-based service bus architecture using activity-oriented services
Publication Date: 2019.01.01 SYMPHONYAI IND DIGITAL MFG INC
  • US10169259B2 patent drawing
  • US10169259B2 patent drawing
  • US10169259B2 patent drawing

AI summary

A pattern-based service bus includes a plurality of bus endpoints, a bus-hosted service, and a bus storage component. The plurality of bus endpoints interact with bus participants external to the pattern-based service bus, wherein each of the plurality of bus endpoints are identified by a unique address, and type of interaction to be provided by the bus endpoint. The bus-hosted service implements patterns that define allowed interactions between each of the plurality of bus endpoints and the bus-hosted service, wherein the implemented patterns can be utilized by the plurality of bus endpoints to interact with the bus-hosted service. The bus storage component interacts with the bus-hosted service to store information relevant to operation of the pattern-based service bus.