BPMS Watch: Organizing Complex BPMN Models

Registration is free. Login or register to view/download this content.

Author(s)

Business Relationship Manager - Product Lifecycle Management, Chevron Corporation

When you first begin to model processes with BPMN, it’s hard to look past the challenge of the notation itself – all the event types, flow control patterns, exception handling patterns, and the rules for sequence flows and message flows. With a bit of training and practice, the rules and diagram patterns soon become second nature, and that part of the modeling effort gets easy. But when you begin to apply that learning to capture your company’s actual end-to-end business processes, a new issue inevitably crops up: managing the complexity of the models.  Real-world end-to-end models aren’t like the simple exercises you learned in class. They extend over many diagram sheets, representing deeply nested hierarchies, and may link multiple independent BPMN processes. They may include multiple references to the same task or subprocess, and for ease of maintenance and governance high-level subprocesses may be defined in separate files.

In my course Process Modeling with BPMN, offered via the BPM Institute, I previously avoided this topic, not wanting to scare off students already nervous about tackling events and exception flows. But after working with graduates of the training as they began to tackle their companies’ real processes, I came to realize you can’t avoid dealing with it. So now, in addition to the tips every process modeler should know (see Ten Tips for Effective Process Modeling), we wrap up the training with best practices for organizing these complex real-world models. Here’s a summary.

A key principle of BPM as a management discipline is understanding a business process as a single entity end-to-end, so we teach a methodology in which the entire end-to-end process is captured at very high level on a single page of the diagram. That top-level diagram includes not only a coarse-grained view of the orchestration (sequential flow) of your process, but also abstract representations of external entities interacting with your process, such as requesters, service providers, and sources of unsolicited events, and the touchpoints between your process and those entities, called choreography.

BPMN provides containers called pools to represent each such entity or process, internal or external, and all the pools involved in your end-to-end process should be drawn in the top level diagram. External entities are typically drawn as “black box” pools – empty inside, since you don’t know or control their internals.  Internal pools – your own processes – are drawn as white box flows, showing the orchestration. Communication between pools is shown as dashed lines called message flows, representing all the requests, responses, and unsolicited events used to synchronize the various entities in the business process.

The purpose of the top-level diagram is not to explain how your process works, but to show how all the pieces of the end-to-end process fit together. With all the pools and message flows, there’s frankly not room on the page to provide much detail about what your internal process is doing. That detail is provided in other sheets of your diagram, each representing an expanded view of one of the subprocesses in the top-level diagram, again ideally on one page. These child-level diagrams may contain other subprocesses, which are detailed in their own child diagrams. When the end-to-end process is captured at the level of detail needed for simulation or implementation, you wind up with a deeply nested model drawn in many interlinked diagrams.

Each modeling tool has its own way of keeping the pieces together. Some leverage a built-in repository.  The one we use in our course normally maintains them as separate sheets in a single Visio file.  Each sheet represents what the tool calls a process level (Figure 1). (BPMN Link events allow a single process level to extend over multiple sheets, but our methodology discourages its use.) The end-to-end model can extend over many levels of nesting. A subprocess rendered collapsed – as a single activity – at a parent level can be expanded into its own process diagram at the child level. Our tool supports top-down modeling by creating and naming the child process level in one click from the collapsed subprocess.  Subprocesses can also be reused multiple times within a single model by referencing, shown by the dotted line links in Figure 1.

Figure 1. End-to-end BPMN models are spread out over multiple nested levels

Models fully built out in this way can extend over 10 or more sheets of a single Visio file. To manage navigation, we recommend a naming convention in which the name of the sheet is the name of the subprocess (or pool, for top-level diagrams) appended with the child nesting level in parentheses, such as (0) for top level, etc. For really complex models, you might prefer to manage some subprocesses in separate files, which allows more flexibility in maintenance.

Readability and traceability from top to bottom level are critical, including the choreography. We recommend that message flows also be shown from the top-level down to the lowest child level where they occur, which means replicating external pools and message flows in child level diagrams.

Typically your process starts with some kind of request from an external entity.  It’s not necessarily a web service request, but could be a call to your call center or a piece of incoming mail. And typically it concludes with some kind of response to the requester, such as a confirmation or failure notice. Best practice is to show all those interactions in the top level diagram, even when the detailed activity that sends the response may be defined in a deeply nested child level.

That often requires propagating the success or failure indication from its source at a deeply nested level up to the top level, and then sending the response from there. BPMN lets you do that. Successful completion of a subprocess at nesting level N returns to the normal flow out of the collapsed subprocess at level N-1.  Alternatively, an error end event at nesting level N sends a signal that is caught by an attached error event on the collapsed subprocess at level N-1. The exception flow out of the attached event can go to another error end event, which rethrows the exception to level N-2. Whether by successful completion of the subprocess or error throw-catch, this propagation can be repeated one level at a time until level 0, the top level is reached, from which the success or exception response to the requester is sent.

Figures 2 and 3 show how all the pieces fit together. The top-level diagram has an internal process called MyMain, drawn as a white box pool, and black box pools representing the process requester, a service provider, and another internal pool labeled MyIndependent Subprocess. The latter is drawn black box because here it’s defined in a separate Visio file. Alternatively, I could have made it white box and defined it in another top-level diagram of the main Visio file.

Figure 2.  Top-level diagram shows all pools and choreography

Figure 3.  Exceptions at child levels should be propagated to top level to return a response

Note that the process requests and both success and failure responses come from the top-level diagram, even though one source of failure, labeled Invalid Data, originates at some deeply nested level, 2 or higher. This exception is propagated to level 1, the attached error event on B1, and from there up to level 0, the attached error event on B. At level 0, the exception flow leads to the message event that returns the response.

Note also at level 1 the choreography between the activity calling MyIndependent Subprocess and the separate pool of the same name. It’s done this way in order to manage that subprocess in a separate file. If we kept it in the same Visio file, we could just expand MyIndep Subprocess at a new process level. That’s simpler, but we lose the ability to maintain the two files independently.

Each organization needs to evolve its own conventions for managing complex models.  They will depend on the tools used and the nature of the complexity.  But in the end it is vital to establish such conventions and teach everyone involved in end-to-end modeling to learn and adhere to them consistently. Learning basic diagram patterns is fine as a starting point, but once you start BPMN modeling for real, managing complexity becomes the larger issue.

Similar Resources

Featured Certificate: BPM Specialist

Everyone starts here.

You're looking for a way to improve your process improvement skills, but you're not sure where to start.

Earning your Business Process Management Specialist (BPMS) Certificate will give you the competitive advantage you need in today's world. Our courses help you deliver faster and makes projects easier.

Your skills will include building hierarchical process models, using tools to analyze and assess process performance, defining critical process metrics, using best practice principles to redesign processes, developing process improvement project plans, building a center of excellence, and establishing process governance.

The BPMS Certificate is the perfect way to show employers that you are serious about business process management. With in-depth knowledge of process improvement and management, you'll be able to take your business career to the next level.

Learn more about the BPM Specialist Certificate

Courses

  •  

 

Certificates

  • Business Process Management Specialist
  • Earning your Business Process Management Specialist (BPMS) Certificate will provide you with a distinct competitive advantage in today’s rapidly evolving business landscape. With in-depth knowledge of process improvement and management, you’ll be able to take your business career to the next level.
  • BPM Professional Certificate
    Business Process Management Professional
  • Earning your Business Process Management Professional (BPMP) Certificate will elevate your expertise and professional standing in the field of business process management. Our BPMP Certificate is a tangible symbol of your achievement, demonstrating your in-depth knowledge of process improvement and management.

Certification

BPM Certification

  • Make the most of your hard-earned skills. Earn the respect of your peers and superiors with Business Process Management Certification from the industry's top BPM educational organization.

Courses

 

Certificates

  • Operational Excellence Specialist
  • Earning your Operational Excellence Specialist Certificate will provide you with a distinct advantage in driving organizational excellence and achieving sustainable improvements in performance.
 

 

OpEx Professional Certificate

  • Operational Excellence Professional
  • Earn your Operational Excellence Professional Certificate and gain a competitive edge in driving organizational excellence and achieving sustainable improvements in performance.

Courses

Certificate
  •  

  • Agile BPM Specialist
  • Earn your Agile BPM Specialist Certificate and gain a competitive edge in driving business process management (BPM) with agile methodologies. You’ll gain a strong understanding of how to apply agile principles and concepts to business process management initiatives.  
 

Business Architecture

 

Certificates

  • Business Architecture Specialist
  • The Business Architecture Specialist (BAIS) Certificate is proof that you’ve begun your business architecture journey by committing to the industry’s most meaningful and credible business architecture training program.

  • Business Architecture Professional
  • When you earn your Business Architecture Professional (BAIP) Certificate, you will be able to design and implement a governance structure for your organization, develop and optimize business processes, and manage business information effectively.

BA CertificationCertification

  • Make the most of your hard-earned skills. Earn the respect of your peers and superiors with Business Architecture Certification from the industry's top BPM educational organization.

Courses

 

Certificates

  • Digital Transformation Specialist
  • Earning your Digital Transformation Specialist Certificate will provide you with a distinct advantage in today’s rapidly evolving business landscape. 
 

 

  • Digital Transformation Professional
  • The Digital Transformation Professional Certificate is the first program in the industry to cover all the key pillars of Digital Transformation holistically with practical recommendations and exercises.

Courses

Certificate

  • Agile Business Analysis Specialist
  • Earning your Agile Business Analysis Specialist Certificate will provide you with a distinct advantage in the world of agile software development.

Courses

Certificate
  • DAS Certificate
  • Decision Automation Specialist
  • Earning your Decision Automation Certificate will empower you to excel in the dynamic field of automated decision-making, where data-driven insights are pivotal to driving business innovation and efficiency.