Skip to Content
Technical Articles
Author's profile photo Bhalchandra Wadekar

Enterprise Integration Patterns in Cloud Platform Integration (EIPinCPI)

Hi SAP Community,

I want to contribute more to the SAP Community. Here’s an idea: why not blog about 65 integration patterns explained in Enterprise Integration Patterns book by Gregor Hohpe and Bobby Woolf and their implementation in SAP Cloud Platform Integration.

So, my resolution for 2020 is to blog about Enterprise Integration Patterns in Cloud Platform Integration. I aim to post a blog about an integration pattern every Sunday. I will call this project EIPinCPI. You can easily follow blogs in this series by following the tag EIPinCPI. Maybe, not all of the patterns can be implemented in CPI, maybe some of them can only be implemented partially, I’ll try my best to inform the same in my blogs.

Here’s the table of integration patterns [1]. I’ll link to individual blogs as I write them:

Message Construction Message Routing Message Transformation Messaging Endpoints Messaging Channels System Management
Message Pipes-and-Filters Message Translator Message Endpoint Message Channel Control Bus
Command Message Message Router Envelope Wrapper Messaging Gateway Point-to-Point Channel Detour
Document Message Content-based Router Content Enricher Messaging Mapper Publish-Subscribe Channel Wire Tap
Event Message Message Filter Content Filter Transactional Client Datatype Channel Message History
Request-Reply Dynamic Router Claim Check Polling Consumer Invalid Message Channel Message Store
Return Address Recipient List Normalizer Event-driven Consumer Dead Letter Channel Smart Proxy
Correlation Identifier Splitter Canonical Data Model Competing Consumers Guaranteed Delivery Test Message
Message Sequence Aggregator Message Dispatcher Channel Adapter Channel Purger
Message Expiration Resequencer Selective Consumer Messaging Bridge
Format Indicator Composed Message Processor Durable Subscriber Message Bus
Scatter-Gather Idempotent Receiver
Routing Slip Service Activator
Process Manager
Message Broker

Why Patterns?

Now that we have index out of the way, let us explore a little bit about reasons to use Enterprise Integration Patterns (This paragraph is based on “Why Enterprise Integration Patterns?” paragraph in the book Enterprise Integration Patterns by Gregor Hohpe and Bobby Woolf) [1]:

  1. Patterns are accepted solutions to recurring problems, for example,
    • How can I add information from the third party before sending the message to a receiver system? The answer is simple – use the ‘Content Enricher’ pattern.
    • I need to send orders to two systems – A and B. However, system A only requires the order if the order costs over £500. How can I achieve this? The answer is simple – use the ‘Message Router’ pattern.
  2. Patterns are abstract, i.e., you can apply patterns in SAP Cloud Platform Integration as well as SAP Process Integration and many other integration tools available in the market
  3. Patterns provide a vocabulary to efficiently describe the solution like used above in point number 1.

I hope you are excited to know more about individual patterns and see how to implement them in CPI.

EIPinCPI Rating

EIPinCPI rating indicates how well a given pattern is supported in CPI (Credits: Owen Pettiford and Daniel Graversen). From the Selective Consumer pattern, EIPinCPI rating is added.

Hope this helps,
Bala

References/Further Readings

  1. Messaging Patterns Overview: https://www.enterpriseintegrationpatterns.com/patterns/messaging/
  2. SAP’s Guidelines to Implement Specific Integration Patterns
  3. Integration Flow Design Guidelines – Enterprise Integration Patterns on API Business Hub

P.S.: Alex started another blog series on Enterprise Integration Patterns and their implementation in CPI as well as Process Orchestration.

Alex‘s blog series:

Assigned tags

      8 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Raffael Herrmann
      Raffael Herrmann

      Hi Bhalchandra Wadekar ,

      What a great idea! Looking forward to read the first blogs.

      Regards,

      Raffael

      Author's profile photo Bhalchandra Wadekar
      Bhalchandra Wadekar
      Blog Post Author

      Thank you Raffael Herrmann. First pattern Message is available to read at EIPinCPI: Message. Looking forward to read your thoughts in that blog's comments. 🙂

      Author's profile photo Anshul Walia
      Anshul Walia

      Brain Wave ....

      Author's profile photo Rakesh Damera
      Rakesh Damera

      Looking forward to the blog series Bala!

      Author's profile photo Gabriel Alves
      Gabriel Alves

      Nice!

       

      Looking forward to the next blogs.

       

      🙂

      Author's profile photo Alexander Bundschuh
      Alexander Bundschuh

      Hi Bala,

      great blog series, I have just published a similar blog describing the scatter-gather pattern and pointing to your blog, appreciating all the work that you have done so far. See https://blogs.sap.com/2020/01/31/enterprise-integration-patterns-at-sap-cloud-platform-integration-scatter-gather/. I have also tagged it with https://blogs.sap.com/tag/enterprise-integration-patterns/ so that it shows up with yours. I hope you don't mind.

      We at SAP have actually worked in parallel on describing the most common patterns for running on SAP Cloud Platform Integration without knowing about your activities. Sorry, it wasn't our intention to steal your show, it's simply a coincident that we both came up with them on the same time.

      Anyway, besides the patterns, we also looked into design guidelines. This is actually our main focus. Check out the SAP Help Portal at https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/6803389050a0487ca16d534583414d2b.html

      And in addition, we have published a couple of packages on the SAP Business Hub with sample integration flows and postman collections so that people can test the patterns and guidelines.

      Anyway, your work is highly appreciated, keep going. As mentioned in my blog you may tick off the patterns that we shipped or you may model the patterns where we have an overlap the way you would see it, this may differ from how we modeled them.

      For the patterns that we have published so far, I intend to write further blogs however it differs from yours in the sense that I do also compare with SAP Process Orchestration. For the rest of the patterns not taken up so far by us and where it make sense I may reach out to you in case you are interested in getting them published on SAP Help Portal.

      Thanks and Regards

      Alex

      Author's profile photo Bhalchandra Wadekar
      Bhalchandra Wadekar
      Blog Post Author

      Hi Alex,

      Thank you :).

      Integration Flow Design Guidelines is an amazing initiative by SAP. Enterprise Integration Patterns are certainly a crucial part of design guidelines for any middleware software. I look forward to your blogs for remaining patterns. Previously, Finny Babu also commented on LinkedIn about Sample Integration Flows for Enterprise Integration Patterns on API Business Hub.

      I’ll be more than happy if any of my blogs is published on SAP Help Portal, please go ahead. If improvements are needed to the blogs before publishing them on SAP Help Portal, you can always comment on individual blogs or reach out to me at Bhalchandra Wadekar on LinkedIn.

      Kind regards,

      Bala

      Author's profile photo Fatih Pense
      Fatih Pense

      Hello Bala,

      Great series, thank you for the effort you are putting into this.

      Regards,
      Fatih