How BPMN helps manage information flow in business applications
Business Process Model and Notation (BPMN) is a graphical representation for specifying business processes in a business process model. Even if someone has never heard of this standard, must have come across diagrams that try to explain a process, information flow, etc.
Picture is worth a thousand words
In the vast majority of cases, these diagrams are created for people because one picture is worth a thousand words.
Why diagrams? Words are imprecise and can mean different things to different people. Images make it possible to supplement missing data through the proper perception of the recipients.
Today's information flow diagramming tools called modelers offer more than just flow charts. Some of them are able to propose the system architecture by proposing classes for the future program. Others, more advanced, provide application forms where participants of a given process initiate the process, accept requests and provide other necessary information during business flow.
But building an entire application using one tool is not a very good idea. This means dependence on a single vendor, the BPMN platform is excellent at handling the flow of information between tasks but does not offer the same level as application development tools.
Modern applications are organized into layers or, in other words, puzzles. Business logic is separated from the front-end, which is what the user sees. It gives amazing possibilities to quickly build an application adapted to different devices, use different technologies and programming languages, apply any part of the process in the front-end.
The application part is not aware of any business rules that exists on the BPMN platform side. It just sends requests and receives information from BPMN process.
Take a look at the attached diagram. We have a very simple complaint handling process. The client opens the insurance company's website and reports the claim. When initiating the process, he chooses what the damage concerns - it may be a car accident or a house burglary. The role of the application is to send these information to the business process logic supported by the BPMN platform. After clicking the "next" button, depending on the type of request, the BPMN platform returns to the application information which form should be displayed to the client to enter the details of the case. The software supporting the business logic decides which component should appear on the client's website.
The whole process ends with informing the client in the appropriate context; e.g. depending on the subject of the claim, the customer may be presented with various additional information on the website.
This approach allows to build applications that flexibly adapt to customer choices, "next page" always depend on previous customer choice.