Business process management (BPM) and API-led connectivity are complementary strategies that share the same vision: the composable enterprise that continuously adapts to new market requirements and evolving customer expectations.
Why are BPM and API-led connectivity a good pair?
The goal of BPM is to optimize the enterprise business processes. For this purpose, business processes are modeled, automated and monitored. BPM systems (BPMS) offer support in these tasks and model and execute the control and data flow of business processes. They also provide human workflow capabilities and contain a business rules engine to capture general business rule logic applied across various business processes.
Let’s introduce an example in the online retail industry. In Figure 1, our example business process is the simplified handling of a customer return request modeled in the business process model notation (BPMN) standard.
As soon as a customer requests a return, the process triggers the order history of the customer. The order history is crucial input for the next step: validating compliance with the return policy. To automate this activity a business rules engine is used.
If the automatic validation has a negative result, a human task must search for an available alternative or goodwill solution for the customer. In case that the request is rejected, the customer gets notified. Otherwise, the customer receives a return shipping label and a return merchandise authorization (RMA) is logged.
Now that we’ve modeled an example business process, we move on to the next phase in the BPM lifecycle: automating the business process. For every business activity, we need to consider the technical implementation.
There are three main options:
- Create a human task to assign a corresponding work item.
- Use a business rules engine to automate a decision activity.
- Leverage business logic in applications outside of the BPMS through call outs.
In the example, we have one activity, “handle policy violation,” implemented as a human task. The decision activity “validate return policy compliance” is implemented via a rules engine. The remaining five activities need integration with backend systems. Let’s explore how API-led connectivity can help.
API-led connectivity and business processes
API-led connectivity introduces a layering with a clear separation of concern: experience APIs, process APIs, and system APIs. Which layer do business processes fit in? While experience APIs deal with tailoring information for a digital channel, system APIs contain mostly connectivity logic toward systems of record. In between experience APIs and system APIs, we have process APIs. They are abstracted from digital channels and the underlying system landscapes and fully focus on business domains. This means process APIs are a natural fit for capturing business process logic and business rules logic.
Now let’s examine the existing APIs and integrations in the business domain. Depicting the API-led connectivity architecture, Figure 2 consists of two channels of engagement: a shop system and a complementing mobile experience.
Correspondingly, we have a “Shop” and a “Mobile” API on the experience layer to tailor information for these channels.
The process layer has four business-oriented APIs. Note that the “order history” API and the
“shipping” API call multiple APIs to enrich information. In the system layer, we have APIs that provide the connectivity logic to the backend systems.
Anypoint Exchange houses documented and published APIs as reusable building blocks for upcoming projects. A Center for Enablement (C4E) is established to drive reuse and to enable other teams on platform and methodology. Thus, a C4E is a perfect organizational foundation for a BPM initiative.
To automate a new business process, we can leverage our existing investment into API-led connectivity. Instead of building new integrations for every process activity, we will reuse existing APIs that expose matching functionality. New APIs are built and published for activities that cannot be implemented via reuse.
Integrating towards back-end systems to implement business activities is a major challenge in automating business processes. API-led connectivity offers a solution that drives speed of delivery and efficiency. BPM is a vehicle to drive business value from the composability that API-led connectivity enables. In short, BPM is one way to realize business value from the investment into API-led connectivity.
In Figure 3, we revisit the example to demonstrate the necessary enhancements to the API-led architecture in Figure 2.
The new business process exposes, documents, and publishes the “handle return request” as an API. It’s called from the “shop” experience API with the customer return request and returns information on the authorization of this request. Documenting and publishing the API renders the return process reusable in other contexts.
The BPMS orchestrates the execution of a process instance. The implementation of the first activity “look up customer order history” is a call out to the “order history” API. This reuse of the “order history” API in the context of the automated business process saves a lot of time and effort. This execution leverages the existing connectivity and integration logic towards the CRM and order management system (OMS).
A rules engine implements the second activity in the process: “validate return policy compliance”. The BPMS also directly handles the human task “handle policy violation”.
The activity “create return shipping label” is again implemented by a call out to an existing API: the “Shipping” API. In our example, there are no matching APIs to implement the remaining activities in the process. Thus, there is a need for new APIs: the “notification” and the “commerce” ones. For the next project, these new APIs will be available as reusable assets.
Conclusion
We have shown that API-led connectivity is a perfect foundation to implement business processes. Reusing APIs to implement process activities significantly reduces time and effort.
While BPM and API-led connectivity stand alone as independent strategies and deliver value on their own, they perfectly complement each other. With API-led connectivity, we invest into the composability of our enterprise. With BPM, we harvest this investment as every automated business process is a specific composition that delivers business value.