BPMN and Automated BPM Engineering

BPMN and Automated BPM Engineering

Business Process Model and Notation is quite simply a method of flowcharting any business process in a manner which is largely intuitive and which bridges the communication gap between the employees within an organization, including management, and the programmers who must implement the automated Business Process Management system. The actual creation of the BPMN flowcharts and the accompanying notes require a specialized skill set provided by Business Analysts/Technical Writers who interview Subject Matter Experts within an organization, distill the resulting information to discover the exact processes which are required to complete the organization’s objectives and then create flowcharts using standardized symbols.  These flowcharts and notes are then handed off to the programmers and are also used in most cases to create Operations and Procedures Manuals for the company itself. These manuals not only serve as a handy reference for existing employees but also serve to speed training of new employees, although these benefits are corollary to the main purpose of enabling the implementation of an automated BPM solution in an efficient manner.

Business Process Model and Notation 2.0 is, as previously mentioned, largely intuitive once the basic concepts have been explained. The concepts are themselves quite simple and straightforward. There are three basic types of flowchart symbols used: rectangles which represent Tasks, diamonds which represent Decisions (or ‘Gateways’ in programming parlance) and circles which represent Events. Once a clear understanding of the differences between each of these three concepts has been gained a well prepared BPMN flowchart will enable anyone with the pre-requisite knowledge of their industry to see and understand a given business process.

Events are things which ‘happen’, such as a phone call from a customer, an email from a business partner or other employee, or a cheque arriving in the mail. ‘Open’ or ‘Catch’ events always begin a process, that is, there is always an event which triggers a chain of tasks and decisions. There are also ‘Close’ events which end a process, ‘Intermediate’ or ‘Throw’ events which move the flow to another process or sub-process, ‘Timed’ events, ‘Message’ events and several other types as well, however it is only necessary to understand that these are things which ‘happen’, not things which are ‘done’ and in fact the sub-types of events are often used at the discretion of the Business Analyst and usually only where their use will serve to clarify, rather than complicate, the BPMN flowchart.

Tasks are things which are ‘done’, such as a sales rep completing an order form, an email being sent or a cheque being deposited. Just as with events, there are different types of tasks but it is only necessary to understand that these are things which require an employee or a computer to do a certain thing. It is similarly important to know that tasks can be automated and that what is a task for one person or department may be an event for another.

Finally, there are ‘decisions’ which are somewhat self-explanatory beyond understanding that decisions are not themselves tasks. Decisions come out of tasks. For example, a sales rep may complete the task of speaking with a customer to determine which options the customer would like. On the flowchart, this task will be represented as a rectangle with the subsequent options flowcharted as decisions (diamonds) following that task, either in sequence or in parallel.

In programming parlance, BPMN ‘decisions’ are often referred to as ‘gateways’, simply because they control the logic flow within the automated BPM solution in the same way that, for example, electrical relays control the flow of power within a wiring network. Decisions can be exclusive, that is, only one path out of two or more may be taken, or they may be inclusive, allowing several paths to be followed simultaneously. There are also ‘complex’ decisions which may be dependent upon conditional logic to determine the path taken. Once again, just as with tasks and events, detailed decision or gateway symbols will be used only to clarify in cases where the generic symbol may lead to confusion.

When the BPMN flowchart is complete the Business Analyst will usually also prepare detailed notes to accompany the flowchart. These notes will cover all the minor details of each step of the process, be they events, tasks or decisions and will serve to provide a complete picture of the business process and to answer any questions that may not be immediately clear from the flowchart itself. The flowchart and notes are then handed off to the programming team for implementation.

Only in recent years has this implementation become practical for many smaller companies with limited budgets. Obviously a completely custom solution programmed from the ground up would be very time-consuming as well as prohibitively expensive, however there are now a number of open source software solutions available in which the basic framework already exists. Controls and interfaces are in place which allow the programmer to focus almost entirely upon creating the automated Business Process Management system itself, rather than spending time on supporting code just to make the system work.

Open source software, for those who may not be familiar with this concept, is software created and released at no charge by a company or even an individual programmer with the intent that others can and will change the code. Some code changes will be specific to the task at hand and remain as local changes only. Others may be intended to improve the software itself and will be released for review and approval by the programming community. For the purposes of automated BPM, one of the foremost of these open source software solutions is Bonita, a program released by the French company BonitaSoft.

While their software works well and provides a very flexible architecture, BonitaSoft does not have a great reputation for customer support so a knowledgeable programming team is a must. It is this team that Geek, Inc. provides. With over 50 years of combined Programming and Business Analyst experience the Geek Inc. team can efficiently implement an automated Business Process Management system for any company.

In the next article we’ll look at a case study of an actual automated BPM solution.