WebMethods.io: Flow Services
In my previous posts, I have the custom transformation to normalize the ChatGPT completions. It's a low-level approach, thus a very effective one, with one significant issue - forward compatibility.
We all know backward compatibility: the software vendor's promise that a new release will not disrupt client businesses. With complex software systems (we are not talking Minesweeper, although I have a few questions about user experience with the new releases), you, as a client, should think about future compatibility. The case when your customizations and system usage adheres to the documented interfaces and best practices the system developer provides.
As grown-up adults, we know that nothing will guarantee full protection from the future. However, minimizing the amount of "creative" customizations or alternative feature usage will decrease upgrade risks and allow you to keep up with the vendor's latest releases. But enough theory, let's see how we could use WebMethods.io Integration Flow Services for complex data manipulations and integrations.
In previous posts, we dealt with connectors, secrets, and workflows, with the slight mention that Workflow Services exist. In theory, Workflows and Flow Services are interchangeable. Still, Workflows are more friendly toward business users and consultants, while Flow Services offers precise flow control and advanced data manipulation capabilities. The table from the Webmethods.io documentation gives you a quick side-by-side feature comparison:
Workflows | Flow Services |
---|---|
Designed for Citizen developers. No code. |
Designed for Integration specialists. Low code. |
Offers a visual, drag-and-drop interface to create business use cases. |
Offers steps and constructs from within the steps to create business use cases. |
Offers in-built triggers to automatically trigger workflows when relevant events occur and actions to perform specific tasks. |
Offers in-built applications and services to perform specific tasks. |
Supports executing other flow services and workflows from within a workflow. |
Supports executing other flow services from within a flow service. |
Ideal for scenarios where basic data transformation on application data is required. This means you can execute simple business use cases with workflows. |
Ideal for scenarios where complex integrations and advanced data transformation are required. This means you can execute simple as well as complex business use cases with flow services. |
With this separation of duties, your integration experts could build function-reach Flow Services consumed by executable business models—workflows.
Workflows have another advantage: different process activation scenarios, while Flow Services offer only an HTTP/S interface. For example, scheduled integration between multiple systems (see diagram below) can't be implemented with Flow Services only.
In the next few posts, I will replace the existing custom message transformation with the Flow Service to make my site integration future-proof.