What is Business Process Management Notation?
The Object Management Group defines business BPM as:
A standard Business Process Model and Notation (BPMN) will provide businesses with the capability of understanding their internal business procedures in a graphical notation and will give organizations the ability to communicate these procedures in a standard manner. Furthermore, the graphical notation will facilitate the understanding of the performance collaborations and business transactions between the organizations. This will ensure that businesses will understand themselves and participants in their business and will enable organizations to adjust to new internal and B2B business circumstances quickly.”
- Systems: Business Process Management Systems (BPMS) support the design, analysis, execution, and monitoring of business processes on the basis of explicit process models. They are process-aware and use BPMN. Some providers offer no or low-code integrations with office, productivity, and enterprise tools such as Microsoft Office. Many programming languages are used to build them, but they are often Java based.
A local university uses the existing ReadBooksOnline system (RBO) to manage its media catalogue and requests from their students. They’re reviewing their operations and have developed a BPM diagram to model how they obtain new media for their library collections. University staff have seen the value of the model and want to trial it in the library before rolling it out to other departments. Your task is to implement a BPMS that connects to the ReadBooksOnline software to execute the newly agreed upon process.
Features & Technology
Features and details are explained fully in the presentation video above. It covers advantages and disadvantages of BPMN, how the orchestration engine communicates with the existing system, and OWASP security considerations.
This project updated an existing system to integrate process orchestration through a business process management model. Camunda was chosen for this as it can be self-hosted and provides an execution engine, web UIs, a modelling interface, and a package for connecting Node.js.