Summary
Enterprise Integration Patterns (EIP) help in solving recurring problems faced in the integration of enterprise applications. This article introduces the Splitter – one of the Enterprise Integration patterns in the context of SAP NetWeaver Process Orchestration.
Applies to
SAP NetWeaver Process Orchestration EhP1 for SAP NetWeaver 7.3 SP4
Authors
Abdul-Gafoor Mohamed & Prashant Gautam
Product Management, SAP NetWeaver BPM, SAP Labs
Enterprise Application Integration (EAI) is an integration framework composed of a collection of technologies and services that form a middleware, enabling the integration of systems and applications across an enterprise.[1] A twenty-first century enterprise typically consists of tons of distributed applications, varying percentages of which may be homegrown, acquired, legacy or even a combination of these.
Enterprise Integration Patterns (EIP) are design patterns that help in solving recurring problems faced in the integration of enterprise applications. One such common requirement in Enterprise Integration is to break down a single large message into multiple logical smaller messages. The Splitter pattern helps in cases where each smaller message might need to be handled in a different way and thus avoids a need to send the larger message to all the destinations. The Splitter pattern that helps with this routing capability addresses this question:
“How can we process a message if it contains multiple elements, each of which may have to be processed in a different way?”[2] |
To illustrate the Splitter Pattern, we consider the example of Benn Laptop Repairs, a company that deals with servicing and repairs of laptops. The servicing department receives an order to repair multiple laptops from a customer, Ally Bank. Ally Bank has sent for service, a number of laptops manufactured by some of the top manufacturers of personal computers in the world. Benn Laptop Repairs has allocated different groups in the service department that takes care of service and repairs of computers manufactured by different vendors. Ally Bank’s service request can be routed to a specific group in the service department using the Splitter pattern.
Figure 1. An example illustrating the Splitter pattern
In this example, the service request from Ally Bank triggers the Business System S1 to send a message to SAP NetWeaver PI (AEX), which is delivered to SAP NetWeaver BPM (Inbound[3]). The large message is split in SAP NetWeaver BPM (Outbound) for different targets (groups in Benn Laptop Repair). SAP NetWeaver BPM sends a confirmation to the original sender Business System S1 once the split has occurred.
Figure 2. Splitter pattern integration scenario using SAP NetWeaver Process Orchestration
As depicted in Figure 2, we are dealing with these two integration configurations:
Note: The message flow from Business System S1 could also be simulated by using the Web Services Navigator, details of which can be found in the SAP NetWeaver Web Services Navigator documentation.
Figure 3. A generic SAP Process Orchestration scenario sequence
The Integration Flows have to be created and activated using the same interfaces that were used in the Business Process. The generic scenario referenced above applies to most Enterprise Integration patterns, including the Splitter pattern.
Note: Only XI 3.0 compatible stateless interfaces are supported.
Prerequisites
Figure 4. A splitter scenario modeled in SAP NetWeaver BPM
The Process Model for this scenario is shown in Figure 4. The steps for modeling the process are enumerated below:
Notes:
[1] Enterprise Application Integration, Wikipedia
[2] Gregor Hohpe & Bobby Woolf, Enterprise Integration Patterns. 2003
[3] Inbound and Outbound are terms used with reference to the application, in this case SAP NetWeaver BPM.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
12 | |
10 | |
9 | |
7 | |
7 | |
6 | |
6 | |
6 | |
6 | |
4 |