For many enterprise companies, legacy IT ecosystems pose a growing cause for concern. Outdated technology, often relying on a patchwork of applications, can sustain compounding issues such as limited scalability, growing security risks, reliance on manual processes, redundant and siloed data entry, plus poor data flow between isolated departments and systems, and sub-par performance issue oversight. All of which ultimately results in increasingly inefficient workflows.
Optimization aside, lacking adaptability and agility is still a serious risk for large scale business operations today. But at an enterprise level, integrating a holistic business process technology solution can seem like an all-too-daunting task. As senior solutions architect of the Flowable Platform, I’m proud to say that with Flowable, that however, isn’t the case.
Flowable was strategically built and engineered for highly integrated setups. It's composed of a well-known tech stack chosen for this purpose, and its integration into existing IT systems, which can be done with minimal coding, is typically very straightforward.
Let’s take a look at how Flowable can be integrated as an orchestration layer to connect diverse systems and automate business workflows: with five easy configuration steps that you may take with a large-scale enterprise company.
Integration steps:
Connecting Flowable to an external user management system
Setting up low-code REST integrations with other IT systems
Integrating Flowable into an event-driven architecture
Embedding Flowable Forms into existing web frontends
Enhancing low-code capabilities with custom implementations
It’s likely desired that various teams and individuals are able to log into Flowable in order to unify visibility and collaboration across your organization. Rather than using Flowable’s internal user management system, you may opt to connect an existing identity and access management service (IDM) in the form of a central active directory.
Flowable is a Java application leveraging the Spring Boot framework to support an array of authentication methods, including OAuth 2.0, LDAP, SAML, Kerberos, and customizable authentication mechanisms. Let's say you're going with OAuth 2.0, allowing users to log in via single sign-on. Enabling this method requires setting a few Spring Boot environment properties within the Flowable Platform, which can be easily done by simply following the OAuth 2.0 section of Flowable’s security documentation.
Not every IDM integration is straightforward. However, with Flowable’s foundation in the Spring framework, you can leverage Spring Security to provide custom code and mappings when needed, ensuring flexibility even in more complex scenarios.
Once the technical integration is complete, role management and permission mappings are easily configured within Flowable’s environment properties. While this may require input from various business stakeholders, the first technical hurdle is cleared.
Once users can log in with Flowable, they are able to model and deploy automated business process workflows. And this includes the ability to initiate new workflows programmatically from existing applications via REST requests. Here, Flowable provides a broad range of API endpoints, allowing external systems to interact with workflows and other platform components.
Flowable can also access external systems during workflows where needed, for example to query workflow-specific data. These REST-based integrations can be configured in Flowable Design using a low-code approach. With just a few clicks, users can upload an API specification from an external system, automatically generating service and data object models. These models are then available in workflow models across your organization, empowering citizen developers to integrate third-party applications into processes without writing code.
Flowable also offers built-in capabilities to handle authentication, such as managing API tokens for secure access, and can intercept requests and responses for additional processing. For advanced scenarios, Flowable allows the configuration of a custom HTTP client with proxy settings and other preferences.
Beyond the service registry for custom applications, Flowable also includes out-of-the-box connectors for popular systems like Salesforce and SharePoint. These connectors handle REST requests under the hood, abstracting away the HTTP layer, to further simplify the integration process.
For more complex integrations, it is always possible to provide a custom integration written in Java.
Now that Flowable’s main outgoing connection with existing applications is in place — and ready to optimize workflows — it's time to consolidate the incoming aspects of your business processes.
Here, workflows need to respond to and send necessary asynchronous events. Flowable again leverages Spring Boot framework’s capabilities along with a low-code modeling approach, this time enabling efficient integration within an event-driven architecture.
For example, you may want to connect Flowable to both a Kafka channel and a message queue. Both integrations use Spring Boot functionality, allowing connections to be established simply by setting the respective details in the environment property configuration. Once connected to the desired channels, Flowable abstracts away the complexity of integrating these into workflows. Event consumers and producers can be modeled easily within Flowable Design, using a drag-and-drop editor to seamlessly incorporate these into workflows.
Additionally, if needed, Flowable can hook into the parsing pipeline of an event registry, allowing for further customization and processing of incoming events.
At this stage, Flowable is successfully integrated into the existing backend IT landscape. The next step is optimization with Flowable within the frontend.
Within Flowable Work, a customizable user interface allows contributors to interact directly with workflows. But there are also scenarios where Flowable Forms, designed within the low-code Flowable Form Editor as part of a workflow, need to be embedded into an existing external frontend application. Let’s say you’d like to embed a Flowable Form into a client-facing web page that triggers a new workflow instance once filled out and submitted.
While no custom code has been required for backend integration so far, some implementation work will be necessary to display Flowable Forms in an external frontend. But even if this is the case, Flowable again minimizes integration complexity for you. The platform provides a frontend library that can be embedded into the existing application, enabling Flowable Forms to be displayed externally without the need to re-implement them. These can also be styled with custom CSS and extended with custom components, allowing for the rapid creation of tailored frontends.
Flowable offers a wide range of capabilities for implementing typical workflow functionality without the need for custom code. For example, low-code components allow the creation of documents based on templates, automated decision-making using DMN tables, and text generation via dynamic AI prompts as well as natural language prompted modeling within the separately licensed Flowable AI Studio. However, there are use cases where extending the low-code functionality with custom code is necessary.
There are several ways to integrate custom code into workflows. Many use cases can be addressed by directly referencing JavaScript or Groovy scripts within workflows. Flowable has been engineered to be highly modular and to be dynamically extended. This flexibility allows for the inclusion of additional Java service classes, which can then be referenced and executed within workflows.
But it may be the case, for example, that you already have a lot of Python applications in place and would like to extend Flowable’s functionality with Python code. Here, an external worker pattern can be used. This allows programs to run outside of Flowable and to dynamically pull tasks from workflows as these become available. And to simplify this process, Flowable offers client libraries for popular programming languages.
Thanks to Flowable’s modular design, low-code capabilities, and on-hand set of libraries, the optimization of a seemingly unapproachable legacy IT system becomes a simple to achieve success.
Not only will it now be possible to optimize processes with a single source automation and business process orchestrator, but Flowable’s flexible architecture will enable future-proofing your scalability and agility needs going forward.
With the technical integration complete, it’s time to refocus on what truly matters: refining, consolidating, improving, and standardizing business workflows.
Senior Solution Architect
As Flowable Platform senior solution architect, Patrick Züst specializes in designing, implementing, and supporting scalable innovative solutions for complex enterprise business challenges. With a passion for requirement engineering and solution design, Patrick is hands-on in effective platform integration with existing IT systems.
Holistic business process orchestration and automation technologies reflect the growing needs of enterprises aiming for operational excellence. Join Flowable Platform’s head of training services, on a journey in unified end-to-end automation solutions.
When it comes to choosing the right BPA deployment option today, agility, flexibility, and compliance are key considerations for enterprise CIOs. Here, Flowable’s VP of Operations explores how flexible deployment options meet particular business needs.
Fintech giant FIS is leveraging technology to streamline and simplify the loan origination process. Their key message? Digital transformation is no longer optional but essential for success in today's demanding market. Read more.