Process Orchestration Software for Connected Procurement Management
About Our Client
The Client is a provider of software products for supplier and procurement management.
The Client In Need of Technology-Specific Expertise
The Client offers a set of solutions that cover various areas of procurement management. Placing a large focus on the software interoperability, the Client wanted to enable seamless cross-system process workflows. The company planned to start with an RFQ (request for quote) process and eventually expand to other processes.
To realize its idea, the Client needed a process orchestration application. As the company chose the Camunda platform as the core for the tech stack, it was looking for a technology partner proficient in the platform and ready to drive app development.
Building a Process Orchestration Platform Based on Camunda
Trusting ScienceSoft’s decades-long experience in software development, the Client engaged our team for the implementation of a process orchestration application, including the architecture design, back-end and front-end implementation. Having hands-on expertise in Camunda, we did some mentoring work for third-party developers also involved in the project.
ScienceSoft’s responsibilities included:
- Designing cross-system workflows consisting of initiating events triggered by certain conditions and responses to events.
- Implementing the core BPMN (Business Process Modeling and Notation) application that invokes all the systems the Client offers.
- Integrating Spring Security and Keycloak to enable multi-tenant SSO.
- Designing and developing a custom drag-and-drop form modeler.
- Integrating BPMN and Decision Model and Notation modelers with the application database.
- Introducing integration testing using Testcontainers.
- Designing and implementing the Bento menu button integrated into the Client’s products as a micro-frontend component and used to quickly switch between the applications.
In the process of work, a new 8th version of the Camunda Platform was released, and the Client was thinking of upgrading. ScienceSoft analyzed the release notes and feedback on Camunda 8, estimated the needed efforts, and recommended the Client to postpone this step. The new version was unstable and didn’t provide any critically important updates.
An Advantage of Having Developers with Good Consulting Skills
Throughout the one-year-long cooperation, ScienceSoft did not only perform the programming work but also was a technical consultant on the project. Our solid knowledge of the Camunda Platform allowed us to have a say in technical decisions and ensure the app’s reliability and scalability. We did all estimations of time needed for certain tasks, which helped the Client keep the project budget under control.
As for the tangible results of the productive cooperation, ScienceSoft fully planned the architecture and developed about 60–70% of the application.
Technologies and Tools
Spring Boot, Hibernate, Project Lombok, Camunda 7/8, Keycloak, MySQL, Flyway, RabbitMQ, GraphQL, REST, React, MUI, Redux, Jest, Express/Node.js, Maven, Git, GitGub, Jenkins, Confluence, diagrams.net, Docker, Kubernetes, Argo CD, Lens, k9s.