Business process management notation (BPMN) is the latest standard for modeling business processes and Web services. The Business Process Management Initiative (BPMI) (www.bpmi.org) was established to develop, support, and encourage the use of BPMN. The BPMI Notation Working Group (BPMN-WG) worked for over two years to develop BPMN before its 1.0 release in May 2004. The primary goal of the BPMN initiative was to develop a standard notation methodology, understandable to all business people, throughout the process of defining, designing, deploying, executing, and optimizing processes. BPMI also created BPMN to ensure that the actual extensible markup language (XML) used in execution languages such as business process execution language (BPEL), business process execution language for Web services (BPEL4WS), and business process modeling language (BPML) can be represented within the notation of the processes.
The BPMN-WG, a member of the BPMI organization, created BPMN to provide businesses with the ability to define and understand their own internal processes, and to communicate these processes and procedures in a standard manner. This notation standard increases the understanding of business transactions within the organization, and ensures that organizations will be able to communicate internally. Furthermore, it will also enable integration with third parties that the organizations deal with, to enhance business-to-business (B2B) processes.
BPMN enables better use of business process management (BPM) by standardizing the notation method used to assist in process automation. BPM refers to the systems and methods used to define, monitor, report, and continually improve processes aiming at meeting customer requirements. BPM includes the development and automation of new and integrated business processes to assist in real-time business visibility and decision-making. It includes workflow design and modeling, and automated process integration and management. Even though organizations have been modeling and managing processes for years, these activities have often fallen short, due to a lack of standards, control, and guidance during the design and execution phase of the processes. BPMN provides these standards for business process modeling and business execution languages in order to resolve the shortcomings.
BPMN can't solve all problems as it is purely a notation method that vendors and organizations can use. Software vendors still need to integrate the execution engine in their solutions for an organization to be able to automate processes instead of just modeling the processes.
What is BPMN?
BPMN is a specification for a business process diagram (BPD). BPD is used to model business process operations graphically, in a readable and understandable way for non-technical users, even for complex processes. BPDs can map processes to business execution languages in order to automate these processes. Within the BPD, the user creates the business process model, which is represented by a network of graphical objects. These objects display activities and work flow in the order of execution. The user simply models the events that occur from the start of a process, all the way through to the end result, with the notations defined by BPMN standards.
Understanding the Principles of BPMN
To be able to understand the principle of BPMN, organizations should know what makes a business process diagram BPMN-compliant. What are the basic elements used within BPMN? These graphical objects enable easy development of business diagrams and flow charts. Flowchart diagrams, such as those created in Microsoft Visio, often have similar icons. The shapes of these elements have been chosen by the BPMI-WG because they are recognizable to business users; this enables business users to understand the entire process.
Within BPMN, different elements are categorized, providing an organized overview of the basic elements available. Within these categories, there are variations of elements, identifying more complex requirements (which does not change the look and feel of the diagrams). These categories include flow objects, connecting objects, swimlanes, and artifacts.
Process modelers use flow objects when defining business processes. Within a BPD, BPMN defines three main elements: events, activities, and gateways. With these three main elements only, business users can fully define processes.
Events indicate something that happens within the process, and that influences the process (the event being a trigger or result of an action). BPMN uses circles to notate events. There are three types of events: starting, intermediate, and end events. Specifying triggers within the events puts constraints on the processes, and these constraints can be messages, timers, links, rules, exceptions, or even multiple triggers.
Activities are represented by a rectangle, and indicate work performed. An activity can be a business process, sub-process, or task. They all have the same shape—it is only the order in which they appear (or a small indication within the shape, such as a plus sign [+]) that differentiates the activity as a process, sub-process, or task. In this way, different activities are easily recognizable within the diagram, and the diagram will be understandable to the business analysts.
Gateways are indicated by a diamond-shaped element representing decisions, mergers forks, or joins within the diagram. Gateways can be seen as questions asked within the process flow (with alternative answers), through which the process is pushed through the organization. There are numerous examples of gateway decisions:
- exclusive decisions (in logic, the exclusive or [XOR]), used to model data- or event-based decisions. Based on the condition of the activity, the flow continues towards one option or the other.
- exclusive merges (XOR), indicating that one of the inputs provided will become the output of the gateway
- inclusive or decisions, meaning that one or more outputs can result (at least one). There is always a default output indicated.
- inclusive or merges, where the first of any incoming inputs is processed
- complex decisions—based on the decision, the expression triggers a specific outgoing flow
- complex merges, where the complex conditions within the expression determine when the process moves forward (based on incoming events)
- parallel forking (and), where all sequence flows are executed based on this gateway
- parallel joining (and), where all incoming events must be completed prior to the execution of the next event, based on this gateway
Having different connecting objects helps business people more clearly identify what kind of communication exists between different objects. The connecting objects link all other objects to create the structure and flow of the business process. These connectors also make sure that the information can be pushed forward throughout the organization. There are thee different types of flows:
- sequence flows, used to show the order of events performed within the business process. The sequence flow is indicated by a solid line with a solid arrowhead.
- message flows, used to indicate the message flow between different process entities. This sequence is indicated by a dashed line with an open arrowhead.
- association flows, used to associate different artifacts with flow objects. The association is represented by a dotted line with an outlined arrowhead.
Business analysts prefer to see who does what within a business process, to demonstrate the different capabilities and responsibilities. To identify this in an orderly way, BPMN uses so-called swimlanes. Swimlanes categorize the different responsibilities by visual class. To differentiate businesses and different roles, users, or systems, BPMN uses two types of swimlanes: pools and lanes. Pools identify the participants within a work flow, and are distinct from activities in other pools. Often, pools represent different organizations in B2B situations. Within a pool, lanes indicate who executes what within the organization, and where the activities occur, in order to give a better overview of the process.
Sequence flows cannot exceed the boundaries of a pool, as a pool represents a self-contained process. However, sequence flows can cross lanes within a defined pool. Message flows define the communications between the different pools (organizations), but cannot be used within the same pool or lane.
One caveat: swimlanes can make the process overly rigid. Certain tasks may be performed by different roles, which is difficult (if not impossible) to portray in swimlanes. Swimlanes work well in a system-centric process flow, but for human-centric processes they may put artificial constraints on the design. That is why vendors such as Pegasystems have the ability to disable or enable swimlanes within the modeling tool.
BPMN provides additional context for specific situations (for example, by identifying vertical markets). This additional information can clarify the process within the modeling phase. BPMN created three types of artifacts to provide additional context within the workflow:
- Data objects explains how data is used or required for activities and connected by associations.
- Groups (indicated by a dashed rectangle line) have no effect on the sequence flow, but are primarily used for analysis purposes and documentation.
- Annotations provide additional text to explain certain processes within the diagram.
The Value of Using BPMN within Business Process Modeling
The BPMN-WG created structure in the chaos that can exist between modeling tools and notations (as well as between IT and business people) by developing BPMN as a unified notation method. For the development of this unified method, the BPMN-WG used the best elements of different notation methods such as unified modeling language (UML) activity diagrams, integrated computer-aided manufacturing definition languages (IDEF), activity decision flow (ADF) diagrams, RosettaNet, and event process chains (EPCs). This has created a wide acceptance of different business process management systems, such as Lombardi, Ultimus, and Vision Software.
BPMN maps directly into BPEL4WS. This bridges the gap between process modeling notations and execution languages, enabling business users to take care of the execution part of the workflow without the involvement of IT departments.
The Future of BPMN
Even though BPMN is a relatively new concept, it has gained great support from vendors and users. Both vendors and end users see the benefit of having a unified methodology that enables better understanding of (and integration with) other systems and standards. Feedback on its ease of use and on problems concerning integration and modeling (as well as suggestions regarding better performance, new functionality, and integration) will contribute to the improvement of the specifications and integrations with execution engines. The BPMN-WG of BPMI will continue working on standardizing elements of BPMN and sets of artifacts supporting verticals. It will also work on the ability to model business rules and business strategies in order to continuously improve organizational efficiency.
The BPMI has merged with the Object Management Group (OMG) (http://www.omg.org/memberservices/index.htm) with respect to its BPM activities, in order to provide leadership and standards throughout the industry. This merger helps the development of BPMN, as OMG is an international industry consortium that develops enterprise integration standards. The OMG manages an open, vendor-neutral process which proposes technologies, and invites proposals and feedback from any member company before coming to a consensus on a final specification (which then becomes an adopted standard). Some of the standards the OMG has developed include common object request broker architecture (CORBA), UML, and Internet inter-object request broker protocol (IIOP).
Standardizing modeling notations used by vendors, business analysts, and IT departments will improve the management of business processes (along with collaboration between business and IT) by providing a better integration with legacy systems. Using BPMN enables the communication of processes throughout the organization. BPMN extends towards other modeling methodologies, such as relational data modeling, XML schema designs, and system designs, which enables organizations to design the full enterprise architecture. In the long term, BPMN will provide a solid notation methodology, as almost all major BPM vendors have already adapted this technology into their solution. Even though BPMN is relatively new, thanks to the support it receives from both vendors and end users, it will lead the development of modeling notation standardization.
BPMN will also impact software selection for end users. Organizations currently evaluating BPM applications should consider whether vendors are using (or plan to use) the BPMN notation method, as BPMN is the best available notation method at the moment. BPMN enables easier design, implementation, and communication between different parties, both internally and externally. In particular, for organizations that need to communicate within their business processes with third party organizations, a standard notation methodology becomes essential to optimize and increase efficiency in the processes. During the selection process, organizations should focus on vendors that are BPMN-compliant. BPMN compliance alone is not enough, however, as organizations need to make sure that the solution integrates its modeling notation with a business rules engine, for process automation, and to fully benefit from these standards. This way, business users can develop the business process directly to the BPM rules engine, instead of switching to other modeling and notation languages to automate the process.
Organizations with purely internal business processes (in other words, with no interactions with third parties) should focus on vendors that are either BPMN-compliant, or that have it in scope to become compliant. Even though using a standard is beneficial, it's not essential for such organizations.
Organizations that have many interactions and data transfers between themselves and third parties should consider vendors that use BPMN in combination with integration to execution languages such as BPEL4WS, to improve the quality of interactions between the different organizations, and to increase the efficiency business processes by virtue of the fact that all parties will be talking the same language.