Better Message Exchange Patterns

With Web Services a number of Message Exchange Patterns (MEP) are defined

  • Request-response: the endpoint receives a message and sends a correlated message
  • One-way: the endpoint receives a message
  • Solicit-response: the endpoint sends a message and receives a correlated message
  • Notification: the endpoint sends a message

This goes even further with optional or robust variations of the same theme.  In practice, 99% of all web services are request-respone. 1% will be one-way, so POST a SOAP message and only get a 200 back.  The remaining patterns are not encountered in practice.

A better and more relevant categorization in our opinion are the service communication patterns as defined by SAP:

  • Query/Response pattern: inquiry regarding a state or subject matter, to which an answer is expected
  • Request/Confirmation pattern: requisition or requirement to execute an activity which involves the change of a state or subject matter
  • Information pattern: An informal, asynchronous message regarding a state or subject matter
  • Notification pattern: A formal, asynchronous notice regardign a state or subject matter

These patterns build upon the following transaction communication patterns:

  • Information: informal message regarding a state or subject matter
  • Notification: formal notice or advice regarding a state or subject matter
  • Query: inquiry regarding a state or subject matter, to which an answer is expected
  • Response: an answer to an inquiry
  • Request: a requisition or requirement to execute an activity which involves the change of a state or subject matter
  • Confirmation: an assurance with obligation about the (degree of) fulfillment of a request

Bottom line: there are better ways to categorize service patterns, independent of the actual technical implementation.

Authored by: Guy

blogger

blogger

Curious to know more about this topic?

Working at i8c

i8c is a system integrator that strives for an informal atmosphere between its employees, who have an average age of approx 30 years old. We invest a lot of effort in the professional development of each individual, through a direct connection between the consultants and the management (no multiple layers of middle management). We are based in Kontich, near Antwerp, but our customers are mainly located in the triangle Ghent-Antwerp-Brussels and belong to the top 500 companies in Belgium (Securex, Electrabel, UCB, etc…).

Quality Assurance

i8c is committed to delivering quality services and providing customer satisfaction. That’s why we invested in the introduction of a Quality Management System, which resulted in our ISO9001:2000 certification. This guarantees that we will meet your expectations, as a reliable, efficient and mature partner for your SOA & integration projects.

i8c - ISO9001-2015

Also worth reading

AWS AppFlow: Streamlining SaaS Integrations with AWS Services

In today’s digital world, organizations are constantly looking for ways to streamline their workflows and improve their data management processes. One of the key challenges that organizations face is integrating their various software as a service (SaaS) applications with their data management systems. This is

Read More »

Apigee Scope Validation using OpenAPI Specification

In API security and management, we often use a lot of different security mechanisms to protect the requested resource behind the API Gateway. One of these mechanisms is the validation of scopes to authorize a client on a specific sub-resource of the API. Most of

Read More »