Book: Learning BPMN 2.0

LEARNING BPMN 2 .0

A PRACTICAL GUIDE FOR TODAY’S ADULT LEARNERS 2ND EDITION

An Introduction of Engineering Practices for Software Delivery Teams


Introduction

Welcome! For those who read our 1st book, welcome back!

1.1 Learning Business Process Modeling and Notation

 

you ever think of how you learn-by reading, watching, listening, and doing? Maybe you use all four. Many of us go through life unaware of how we learn or acquire a skill set; we just learn it. We all have the capability to learn. From that perspective and with a passion

for business process modeling with Business Process Modeling and Notation (BPMN), we set out to write a book that will provide an understanding of BPMN while engaging in the adult learning process for acquiring knowledge. This book is intended to bridge the gap between theory and practice and make it interesting while we are doing it. While we focus on learning BPMN, we also teach foundational concepts, a balance between academia and real-world examples related to creating knowledge, and moving up the spiral of knowledge. With each spiral, more insight is gained, and better understanding is attained.


Understanding foundational concepts and linking them to real-world examples is the key to our approach. We will provide engaging experiences that create BPMN knowledge. Reading provides one way to obtain knowledge. Practical application, reflective experiences, and collaboration are other sources. We attempt to balance various approaches to enhance your learning experience with BPMN. This book’s secondary objective is to combine previous research findings in learning with the practical application of BPMN. Specifically, we will provide real-world, practical applications of various business process models using BPMN, tips for modeling complex business processes, and strategies that will enable you to capture your organization’s knowledge through business process modeling.

1.1.1 The Concept of This Book

First and foremost, this book is designed to be an experience. It is a collection of tacit and explicit knowledge and a combination of acquired strategies from experts in the field who have years of experience modeling with BPMN. It is based on previous research, academic and peer-reviewed research, anecdotal evidence, and a collection of various resources and videos. This book’s experiences will help you grasp ideas and transform information in innovative ways. We hope you will be able to share that knowledge with others in your organization and the broader BPMN community of practitioners. Secondly, this book explains how you can apply BPMN to your work situation. Specifically, we will demonstrate the most used notations and help you develop better business process models that can impact your organization. This book will cover those notations through an experiential learning approach. We will provide a real-world business process modeling learning experience through an action-and-reflection approach.

1.1.2 What Is Covered in This Book?

Before we go much further, it is important to cover what and what is not covered in this book. The BPMN specification breaks out three types of models: orchestration, choreography, and conversation [1]. We will cover the fundamentals required to create well-formed BPMN orchestration models for your organization. We will teach you how to create business process models from the organizational perspective down to the engineering implementation level if you desire. We will take the mystery out of notation, provide clear real-world examples, and put the notation in its proper context.


INTRODUCTION

A 2ND EDITION UPDATE

We will also cover how BPMN can help a software engineer convert stakeholder ideas into technical designs that an engineering team can understand and reference as they write system code.

1.1.3 Introduction from the Authors

We are writing this book from a practitioner’s perspective. I spent a lot of time understanding the specification and reading the textbooks already in print. I realized that no matter how much I “think”I understand BPMN, someone else in our community had a different interpretation of the specification. Early on in my doctoral research, it became apparent that syntactical errors in BPMN models were rampant in the community of users. Specifically, models analyzed by the research community contained a high percentage of syntactical errors [2] [3] [4]. From 2015 to 2017, I set off to study this problem. I completed doctoral research on the learning process for BPMN. My research examined the effectiveness of learning theories and the creation of BPMN knowledge from theory to practice. I took the research findings and developed training material to create meaningful learning experiences to incorporate in organizations-in essence, transferring my knowledge of BPMN to a wide range of stakeholders, modelers, and reviewers to improve business process management initiatives using BPMN. I later used these experiences and additional research to write with Joe, Learning BPMN 2.0.

A 2ND EDITION UPDATE

Since the publication of the 1st edition, I have gained a deeper understanding of the learning process of BPMN practitioners and extend some of these observations, research findings, and experiences. In addition, I have brought Wes Almeida to share his experiences. Hello reader, I’m Wes Almeida, and am delighted to have Josh’s invitation to help with this book. I have been fascinated by software since watching Knight Rider as a kid in the 80s. Although I experimented with BASIC in middle- and high school, it wasn’t until the mid-2000s, that I finally acted on my curiosity. I began experimenting with animations in Flash, which led me to front-end, back-end, and database design and programming. My tinkering and curiosity opened doors towards writing software as small as personal projects, medium-sized applications for small businesses and tech startups, and finally, parts of large enterprise systems. With all these projects, I saw that stakeholders and engineers did not always understand each other’s expectations and priorities. Even in my projects, where I was my stakeholder, my ambitions as a stakeholder didn’t always match my


LEARNING BPMN 2.0

engineering ability to deliver! I also noticed that although I was a good developer, I was much better at bridging the gap between stakeholders and the development team. Not every project that I worked on was successful. Scope creep, gold plating, bad schedule estimates, and delays were frequent enemies. It wasn’t until I learned about the Toyota Production System (TPS) that I understood what was important as a development team lead. TPS taught the world lean manufacturing and how to build physical products in high quantities and with high quality and I began implementing what I learned from TPS into software development. I wasn’t the only one applying TPS to software development as others around the industry were also taking TPS principles and applying them to Agile, and later, DevOps. If you’re new to leading software teams, or if you’ve been implementing DevOps in your organization without understanding why I encourage you to read The Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win (2013) written by Gene Kim, Kevin Behr, and George Spafford. In this book, I will provide a perspective to help you use BPMN to relay technical designs from engineers to stakeholders and vice-versa. I will also discuss how BPMN helps to document and convey architectural decisions to future versions of your team so they can quickly identify solutions without having to reverse engineer code every time. It is much easier to review a diagram than to rebuild an architecture from legacy source code!

1.1.4 The Four Knowledge Creation Activities

The discovery of a pattern of activities that looked like deeply ingrained assumptions about how experiences are grasped and transformed to create BPMN knowledge was profound and enlightening [5]. The following table identifies each of these categories and provides a high-level description (Table 1).

Table 1: Experiential Learning Mental Model Categories for BPMN


INTRODUCTION

The four knowledge creation activities depicted in the Experiential Learning Mental Model describe how experiences were transformed into knowledge (Table 1). Specifically, as individuals experienced a new event, they internalized that experience through apprehension or comprehension and transformed the experience through extension (action…doing) or intention (reflection…thinking). The term apprehension explains how one grasps knowledge through feelings, senses, and connections. Through apprehension, grasping knowledge is subjective; we do not know how others feel or think unless they share their comprehension. The term comprehension explains how individuals make logical connections between experiences and communicate their understanding of knowledge. It is like a colleague explaining their interpretation of notations from the specification in BPMN. You will learn BPMN through a series of experiences that will lead to an understanding of BPMN. The notions of apply concepts, explore alternate understanding, reflect experience, and determine and form new understanding enable us to provide you with experiences that create BPMN knowledge when grasped and transformed. The better job we do at creating meaningful learning experiences, the greater chance we will have to move up the spiral of knowledge to form a higher level of understanding of BPMN and reduce the number of syntactic discrepancies in your process models. Below is a conceptual model depicting how learners’ experiences were understood and transformed to create knowledge.


LEARNING BPMN 2.0

Figure 1: Experiential Learning Mental Model for BPMN

The experiential learning mental model for BPMN describes how experiences are used to create BPMN knowledge. The descriptions in the mental model are not all-encompassing; it is not meant to be a generalized list of all the BPMN modelers of the world.


INTRODUCTION

Instead, it is a framework for applying various grasped experiences to create BPMN knowledge. It enables us to expand on what we know, dives deeper into the learning process, and creates new ways to learn BPMN. It also enables us to develop meaningful experiential learning experiences. Our main objective is to expand everyone’s understanding of BPMN.We intend to create a meaningful connection with you. This book outlines how to create a meaningful experiential learning experience. Specifically, we will create a connection through apprehension because the more you value the source of the experience, the more likely you will be to embrace it. By embracing an apprehended experience, a more profound, more meaningful experience can flow. We also provide you with the framework to create similar experiences throughout your organization. We hope that through comprehension of all the provided apprehended experiences, you will form a higher understanding of BPMN and, more importantly, how to use BPMN in your organization. Lastly, we want to teach more than just the BPMN syntax. We are striving for a deeper level of learning. We attempted to design a deeper level of learning through the course of this book through the exercises, personal experiences, videos, and reflection experiences, and hope that you become a BPMN practitioner. Our sincere expectation is that you can develop the capability for modeling with BPMN from a deeper level of learning through this book. The key takeaway with these conceptual models and framework is that they will become the starting point for you to use as you learn and create meaningful learning experiences in your organization and transfer your BPMN knowledge to others. As we stated earlier, the experiential learning mental model is not all-encompassing. For experienced BPMN practitioners, we invite you to share insights that could advance this framework and these conceptual models further. To be a part of this exciting research, join our discovery page forum discussion at: https://www.bpmpractitioners.com/bpmn-forums-and-resources


1.1.5 The BPMN Practitioner’s Learning Process

We found from Josh’s research that everyone has their own self-directed learning mental model when learning BPMN. We have our distinct process for learning, whether we realize it or not. The self-directed learner’s mental model indicates that we work our way through a series of activities during the learning process. This means the individual activities we go through during the learning process influence our understanding of BPMN. The self-directed learner’s mental model is made up of five categories (Table 2).


LEARNING BPMN 2.0

Table 2: Self-Directed Learner’s Mental Model

We can think of these categories as a series of processes or,more importantly, steps in a process.Without knowing how people learned BPMN, we could be missing out on certain critical information. This became evident during interviews that resulted in the formation of these categories. Specifically, individuals shared how they had struggled to find useful resources that enabled them to learn BPMN. The lack of good resources led to misinterpretation of the specification, which resulted in poor modeling habits. In the original research, there was not an instance of single-loop learning. Since our first book, we have observed single-loop learning instances within organizations that have attempted to adopt BPMN unsuccessfully. We have also observed how knowledge is created during the learning process. These observations and feedback from the community lead to an extension of the BPMN Practitioner’s learning process. Figure 2 describes an updated learning process BPMN practitioners could experience. At the end of this chapter, we discuss the specific process for setting goals and identifying resources for learning BPMN.


INTRODUCTION

Figure 2: Complexity of Learning Process Revealed

Figure 2: of Process Revealed

1.1.6 Meet Our BPMN Learners

You have already met one of our BPMN learners. Let’s take a moment to explain.


Meditating Mike is always in a deep state of reflection. He is constantly

reflecting on experiences and searching for the reasoning behind 21 everything. When Meditating Mike appears, he allows you to pause, breathe, and search within, usually by asking self-reflection questions, improving your self-reflection skills. As the book progresses, Meditating Mike starts diving into more profound reflection techniques for you to use.


General Practitioner is all about action. He is constantly applying

concepts learned throughout life. General Practitioner is always busy, using their energy to apply learned concepts through the action of building a model. When General Practitioner appears, he reminds you to take action because without action, what is there for you to reflect on?


LEARNING BPMN 2.0


Streamer Seth is riding the current wave of technology by offering his own

streaming service. He is all about teaching BPMN concepts through his streaming channel. When Streamer Seth appears, he indicates a corresponding video related to the current topic in which concepts are discussed in additional detail.


BPMN Goal Setters are all about setting learning goals. When BPMN

Goal Setters appear, they remind you to set a learning goal. Since establishing goals can be challenging to someone new to the field, they provide sample goals for you to establish and evaluate. BPMN Goal Setters have realized that, without establishing and evaluating learning goals, their BPMN skills never truly develop.


Forum Felicia loves reading the insights of others through video/blog posts

or forum discussions. Forum Felicia is always looking for different perspectives about BPMN. When Forum Felicia appears, she indicates that there is a great forum post or video discussion about a specific notation.


Studying Sara loves working out and challenging herself through exercise. She

is all about taking her understanding to the next level by assessing what she thinks she knows. She has developed a list of exercises to help expand your BPMN understanding. When Studying Sara appears, she indicates additional exercises in our website’s training folder.


Surfer Dave loves two things: riding waves and providing BPMN pro

tips. “Aloha. I build sweet business process models when I am not catching waves at my favorite spot. I can teach you how to shred waves or build complex business process models.” Since this book is about BPMN, when


INTRODUCTION

Surfer Dave appears, he indicates that he has a pro tip to share. These pro tips are usually for those advanced modelers looking to expand their understanding.


The Inquisitor is always searching for the truth. When the Inquisitor

appears, he questions what we, the authors, say, indicating patterns and connections or sharing helpful learning techniques he has discovered during his adult learning journey. The Inquisitor may never acquire the knowledge to answer every question, but he pursues the unknown with a passion, constantly learning new and exciting things and opening his mind to impossible possibilities.


Engineering Lead Erin is the bridge between two worlds. Before we begin,

no, she hasn’t mastered dimensional travel. Instead, she has mastered the ability to communicate between business and developer teams. Business, software, and system architects communicate through diagrams, while hands-on engineers communicate via code. When Engineering Lead Erin appears, she is attempting to provide examples that bridge the gaps between these groups by understanding the BPMN diagrams from the architects and communicating intent and design to her engineering team. She can also relay and create diagrams for suggestions and ideas from her team to the architecture and design group.


1.2 New Insights to BPMN Practitioner’s Learning Process

This section provides an update on the BPMN Practitioner’s Learning Process by describing the process for establishing goals and a set of resources outside of this book that you can use for learning BPMN. The purpose of these new insights is twofold.

  1. We will shed new insights into the goal-setting process and provide you with the tools to set your process and outcome goals.
  2. We will share our list of books, YouTube Channels, BPMN Forums, Courses, Tools, and Journal Articles you can use to extend your knowledge of BPMN.

LEARNING BPMN 2.0

1.2.1 Establish Goals Sub-Process

We want to start by saying we are always learning. It is our motto at work and home. Whether it is about neuroscience techniques for improving adult learning, OpenCV, strategic management, mission engineering, DevOps, organization change management, or supply chain resiliency, there is always something new to learn, including teaching and writing about BPMN. We can modify assumptions about what works best for learning through continual learning. To that end, we want to share an extension to the learning process around establishing goals. In our first book, we provided the goal-setting corner. These sections reflect updates because we did not provide the goal-setting process. More importantly, we did not provide readers with a clear example of how setting outcome and process goals can improve learning BPMN. Therefore, we have extended the learning process for BPMN by describing a specific process for setting goals. We posit that goal setting is not a new concept to the adult learning process but rather an overlooked practice for those adult learners acquiring BPMN knowledge. Below, we describe the process for establishing goals and two template examples describing the details of outcome and process goals.

Figure 3: Establish Goals – Description of the Process for Setting Outcome and Process Goals


INTRODUCTION

We define the process for setting goals around five key activities. The process begins with the identification of a personal or a professional goal. A keynote, we incorporate the Specific, Measurable, Attainable, Relevant, and Timebound (SMART) guidance within our goal-setting templates.

  1. The first activity, “Determine Precise Outcome Goal,” sets the stage for what you expect to achieve from your learning journey. After you set your outcome goal, do a quick check to assess the difficulty of your outcome goal.
  2. Write out the difficulty of your outcome goal. Do you already have experience with BPMN? Then the current outcome goal might be easy. In that event, you could update it to be more meaningful.
  3. The next step is to determine how you will measure your outcome goal. Again, we provide an example in the template. We timebound the outcome goal here and how it will be quantitatively and qualitatively measured. First by the number of business process models (4), and second through the peer-review with a colleague. The second half of our extension describes how adult learners can set process goals to make progress towards the set outcome goal effectively. Process goals are the means to wit you will learn and track your performance for learning.
  4. The first step is to set a process goal. Again, by following the “goal-setting rules” above, you can ensure you can measure and track your performance. More importantly, by writing out your process goal, you will be able to see if there is an alignment with your outcome goal. The difference with setting the process goals, you will set a feedback mechanism that enables you to track daily/weekly progress towards your process goal.
  5. Like outcome goals, you will want to determine the challenge of your process goals. Since

process goals are actionable, you should be able to assess the current constraints of your environment to determine the challenges of the process goal. We dive much more profound into the following chapters and cover a more comprehensive range of insights, experiences, and reflections about each chapter. When learning BPMN, like other subjects, think of it as an iterative process. Think of the self-directed learner’s mental model as a kind of double-loop or revisiting the material from a different perspective based on feedback, either from validated knowledge or a lack of understanding. Our experience is that individuals become better modelers when they face peer reviews and respond to feedback, challenging their assumptions about what they think they know.


LEARNING BPMN 2.0

We hope you can leverage this book’s information, learning exercises, and shared experiences to advance your understanding of BPMN further. We learn and master a concept over time through the iterative learning process. It also allows us to explore the most effective ways to learn BPMN.

1.2.2 Identification of Learning Resources as of 2022 – 2nd Edition Update

While there is not an endless source of material for BPMN, there remains a growing body of knowledge around BPMN. This section will provide a list of learning resources to help you on your learning journey. We are unaware of this comprehensive list of learning resources in one spot. We have received several questions about other learning resources and have observed new learners struggling with finding resources to help with BPMN. While we are confident that our book provides an excellent source, it will never be, nor should be, the only source for learning. The following is not an all-inclusive list of books, articles, websites, or channels, only a starting point to help you continue your learning journey outside this book. With that, let’s jump into our 2022 identified BPMN resource list. We break down our learning resource list into the following categories.

 Books  YouTube Channels  BPMN Forums  BPMN Courses and Online Material  BPMN Tools  BPMN Journal Articles 1.2.2.1 BPMN Books

While we appreciate and enjoy reviewing different published works,we have some recommendations for new learners, either due to the writer’s style or the presentation of information. We indicate our “practitioner” preference with a green check mark of other BPMN books for new learners.


INTRODUCTION

Table 3: List of other BPMN-related Books

1.2.2.2 BPMN Dedicated YouTube Channels

YouTube channels or online streaming channels specializing or focusing on BPMN are few and far between in our experience. While that is not necessarily bad for a channel, it limits the number of choices for dedicated learning. The following are a few channels, including ours, that you might find helpful as you continue your learning journey.

Table 4: List of YouTube Channels for Learning BPMN

1.2.2.3 BPMN Forums and Online Material

The following are our favorite modes for communicating with other practitioners. Each one of these sites offers a great way to engage and ask questions regarding BPMN.


LEARNING BPMN 2.0

Table 5: List of BPMN Forums

1.2.2.4 BPMN Courses

The following is a shortlist of training courses, both in-person and online. While we are confident this is not an all-inclusive list, fellow practitioners have highly recommended these.

Table 6: BPMN Courses

1.2.2.5 BPMN Tools

Before diving into the following list of BPMN tools, we want to preface that modeling tools are essential for learning BPMN. Good modeling tools with built-in syntax checkers, animation features, and simulation capabilities positively influence learning BPMN. The downside here is that modeling tools are usually not free. Thus, if you are a part of an organization, it is imperative for management support to allocate the resources to acquire good modeling tools.


INTRODUCTION

Moritz Hesse developed a BPMN Tool Matrix that provides a comprehensive list of BPMN modeling speak to each tool in how they support learning. However, we can provide recommendations based on our experience. The following are some tools we have used in the past that will help us learn and apply BPMN due to their built-in syntax checkers, animation features, and simulation capabilities.

Table 7: List of BPMN Tools

1.2.2.6 BPMN-Related Journal Articles

It is a little harder to provide recommendations for new BPMN learners for journal articles, so our list targets any BPMN learner looking for a deeper understanding. These articles are probably best consumed based on your interest in a given topic. For instance, we recommend a couple of articles for those interested in cognitive processing with BPMN. Since many of these are peer-reviewed articles, our recommendation is to search for these on Google Scholar https://scholar.google.com/, as this can be a helpful tool to review available material. One observation with Google Scholar, not all articles will be available for free.


LEARNING BPMN 2.0

Table 8: List of Journal Articles for BPMN


Learning the Basic Categories for BPMN

The intent of this chapter is fourfold.

  1. To provide a brief discussion on business process modeling. Understanding how business process modeling can be used to depict organizational processes is a critical step in transforming your organization’s knowledge.
  2. An overview is required to create business process models using the five basic categories of BPMN. We will apply the basic categories of BPMN to lay the building blocks for further application of advanced modeling concepts introduced later in the book.
  3. To provide a description of several enterprise fundamentals for your modeling. Our enterprise fundamentals will enable a standardized and consistent look for your models. Additionally, we discuss an approach to leverage your enterprise assets and reduce the development time of business process models.
  4. A brief introduction to the concept of systems thinking and how using a systems-thinking approach will positively influence the BPM initiatives in your organization. Additionally, we describe how you can use enterprise architecture concepts as a framework for capturing the complexity of any organization.

An

overarching goal of this book is to provide meaningful experiential learning connections through our interactive approach. We hope that by doing so, we will improve your understanding of BPMN and set the foundation for understanding your enterprise.


LEARNING BPMN 2.0

MEDITATING MIKE PRACTICED REFLECTION

Take a moment and a few slow, deep breaths. As you go to exhale your last breath, think about yourself within your organization. Do you live and breathe in a small, medium, or large organization? Now envision how you are

connected to the members of your organization. Don’t worry if you found this exercise challenging. It is hard to see yourself connected to everyone else in your organization without practice. We hope that by the end of this book and through a series of reflective exercises, you will be able to see how processes are connected and, more importantly, how the processes are connected to people. With their endless capabilities and tacit experiences, these people can be harnessed and leveraged to gain a competitive advantage in the marketplace. We must confess that being able to see how everyone is connected is only the first step toward implementing a system thinking approach and seeing patterns and interconnected relationships. You will attain the essential skills for understanding your organization by practicing reflection skills. A critical concept we find in effective learning is profound, reflective thought. It can be pretty rewarding as well as a learning technique. Throughout these chapters, we will provide opportunities to pause and take a moment to reflect on your models and previous experiences or to see the whole organization as a living enterprise filled with potential and capability.

2.1 Business Process Modeling

One way to solve complex business process problems with business process management is through the creation of models which can be used to gain and sustain a competitive advantage, whether it is reorganizing the company, establishing new lines of business, or connecting technology with business.

A 2ND EDITION UPDATE

While researchers have various definitions of competitive advantage, one theme is common: value creation [6] [7]. Creating value for potential or current customers requires companies to dedicate resources to demonstrate the ability to generate innovative and superior benefits from their products and services [8]. Good business leaders and their teams are looking for ways to gain and sustain market positions. Business strategies such as cost leadership, differentiation, or focus strategies can be critical for a company to create value for its customers.


LEARNING THE BASIC CATEGORIES FOR BPMN

These strategies are achieved depending on the approach these leaders take [9]. Enter BPM and process modeling, one of the tools an analyst, engineer, and project leaders can use to support leadership teams and strategic goals and objectives. Before jumping right into business process modeling and BPMN, let us opine on models in the context of value creation. We build business process models to surface details (e.g., who, what, when, where, and why) of complex domains. We create a structured model that can be studied, improved, reengineered, or automated. Business process models are not exact representations of the physical world of business operations. Instead, business processes are essential selections and generalizations of critical details (who, what, when, where, and why). Your business process model should help fulfill a specific modeling goal (understand, communicate, analyze, synthesize, implement, etc.). For instance, if a company looks at ways to innovate a service, understanding how the process provides that service today is critical to generating innovative solutions. You may only need to innovate on specific aspects of that process to create a superior benefit for your customer.

MEDITATING MIKE PRACTICED REFLECTION

Ask yourself the following: Have you ever started a job and felt lost? Have you been in that situation before? As in: “What am I supposed to be doing? What should I know, how do I do that, and what do I do after that?”

Now think to yourself, how did you make it through that ordeal? Did your organization have a welldocumented operating procedure that you could follow step by step? Did someone show you the ropes? If someone did show you the ropes, they were transferring tacit knowledge of how to get the job done. Was it the best way? Was it the quickest way? Was it the most efficient way? How would you know? Tacit knowledge (or implicit knowledge) is the secret sauce for why and how organizations can achieve and maintain a competitive advantage. By documenting activities through business process modeling, organizations transform the tacit knowledge of individuals and teams into explicit knowledge. The explicit knowledge captured in business process models can be used to align business goals, develop strategy, evaluate performance, drive organizational change, as well as invest in IT, service design, and training, to name a few. As we dive into the concepts of business process modeling with BPMN, we will also explore how you can capture your organization’s tacit knowledge. Specifically, we will provide you with the tools and techniques for identifying tacit knowledge that can be captured in your business process models. We will also provide tips and examples of how to transform that organizational knowledge into


LEARNING BPMN 2.0

an explicit form (business process models) that can be leveraged to sustain or gain a competitive advantage.

GOAL SETTER’S CORNER

A goal can be professional and personal to you. As we get into the habit of setting concise educational goals, we rewire our

minds into a goal-setting norm. But first, why am I learning or want to learn? Understanding your intrinsic or extrinsic motivations can be key to your early success! In the following example, we use our template to create a specific outcome and process goal for this chapter. Typically, our outcome goal would be broader than a specific book chapter. However, we wanted to provide a relatable example to you, the reader.

We challenge you to create and set other goals for those who have already achieved these goals. Get into the habit of setting small process learning goals to go along with your outcome goals. One way to do so is through practical application and reflecting on your experiences. As you learn something new, take a step back and evaluate your understanding. Do you have a complete understanding or a limited understanding? If you didn’t achieve your immediate goals, don’t fret!


LEARNING THE BASIC CATEGORIES FOR BPMN

Personal and professional goals should not be viewed in isolation. If you ultimately set a goal but do not achieve it, it could still be a good learning experience. Analyzing goals occurs over time as you perform various activities related to your goal [10]. If you would like to participate and share your experiences as a lifelong learner, please join our forums on goal discussions, and we will set you up: https://www.bpmpractitioners.com/bpmn-forums-and-resources.


2.2 Modeling Inside Your Organization with BPMN

We won’t review the complete history of BPMN, but it has become the primary tool used in business process modeling. The following section provides a basic overview of business process modeling with BPMN. The structure of this book is simple. We want to provide an interactive learning experience to improve apprehension and comprehension through meaningful learning experiences. Through application and reflection, we will engage the cycle of learning by building on your previous knowledge of the business and, using BPMN, expressing that knowledge clearly.We will make meaningful connections through our discussions, learning exercises, and questions from BPMN practitioners in the field. Additionally, by taking time for reflection, we will be establishing the basic building blocks required to promote deep self-reflection.

2.2.1 Reflecting on What You Do through Business Process Modeling

Customers and stakeholders ask, “What can business process modeling do for the organization?” The answer can take many forms. The following are some common examples:

  1. Business process modeling enables the evaluation of inputs and outputs of business processes.
  2. Business process models enable organizations to capture how the business works in a way that brings value to the various business activities for stakeholders.
  3. It creates new opportunities to establish a competitive advantage.
  4. It helps create process differentiation.
  5. It establishes operating procedures describing workflows or automation.
  6. It is a foundational component for creating a digital twin model of your organizational processes. From the 10,000-foot level, business process modeling enables decision-making through various activities, whether from business process analysis and design, Technology Business Management

LEARNING BPMN 2.0

(TBM), service-oriented architecture, and business process management initiatives (e.g., digital transformation). We could probably spend an entire book writing about what business process modeling can do for your organization. To understand BPMN, you first must realize that it is a graphical modeling language with its specific syntax (i.e., the rules behind the language or notations). BPMN is more than just boxes and arrows. It is a means to communicate across different languages and cultures. It also enables the interchange of models using BPMN between tools. Using BPMN, we can describe a basic process flow as activities, gateways (flow divergence or convergence), and sequence flows. Our first example uses only the concepts of events and activities. There will be added features later in the chapter. The following example shows a cargo handling process. The process begins with a start event (something that happens that triggers the execution of our process is depicted as a circle): in this instance, cargo arrival notification. The arrows or sequence flow enables us to connect events and activities as the process continues. The activities of inventory cargo and complete cargo paperwork represent the specific work being accomplished to achieve a business goal for a service provided. We use circle a boldened circle to represent the end of our process, the complete cargo paperwork. The following is an example of a very basic business process.

Figure 4: An Examination of a Basic Process Flow

Our team consists of individuals with diverse backgrounds. Our diversity allows us to depict relatable business processes that you would see in many organizations. Again, to be effective, we want to make a meaningful connection. Section 2.6 provides another example of a basic process flow using social media. As you see examples, we encourage you to try to model something similar that you know using the concepts demonstrated. We will always provide alternative modeling exercises if you want more practice with the concept.


LEARNING THE BASIC CATEGORIES FOR BPMN

2.2.2 Applying Basic Business Process Model Concepts

Now that we covered the very basics of business process modeling (activities, events, and sequence flows), let’s apply these concepts by diving into the underlying application to apply and reflect. To do that, we will use three icons. First, we will apply our understanding of building a basic process model. Second, we will reinforce this by providing a video link in which you can hear and see us modeling in action. Lastly, we provide a reflection icon to allow you to continue practicing reflection in action.

GENERAL PRACTITIONER APPLICATION EXERCISE

Hey! Why are you just sitting there? Let’s apply these basic concepts! Let’s transition from reader to business process modeler. To take action, you will need your modeling tool. Open your tool of choice, start a new file, and use the BPMN stencil to do the following.

  1. Build your basic process of what you do for a job. Identify three to five activities, at most, for this exercise. If you don’t currently have a job, don’t fret. Build a basic process model of what you did today.
  2. The key is action. Practice using your modeling tool by dragging and dropping shapes onto the canvas. a. Drag a start event, then sequence flow and activity. b. Name the first activity (verb-subject). c. Repeat adding a sequence flow after the activity. d. Once you have identified your activities, connect a sequence flow from your last activity to an end event. STREAMER SETH created a video describing our basic process for

managing our educational program. You may find some of our other videos more useful for those advanced users. Join us as we build a basic process model for our education program. Join us at www.bpmpractitioners.com/videos. The videos match the figure name. You can also view Josh’s YouTube channel, Joshua Fuehrer.


LEARNING BPMN 2.0

Figure 5: Building a Basic Process Flow

The video allows you to engage through three of your senses (auditory, visual, and kinesthetic). If we were in the physical training environment, we also would turn on our candle warmer and put some jasmine wax to generate excitement and increase the ability of the brain to think. An oftenoverlooked aspect of engaging all senses is engaging the olfactory (sense of smell). Studies have shown that some smells can trigger chemical releases in the brain to promote learning. Organizations are generally made up of employees performing roles that contribute to the organization’s functions. You have created a basic business process model of what you do or what you did today. Next, close your eyes and think about what you do. Can your job be depicted in three to five activities? Does your model require a decomposition to show the value you bring to the organization truly?

MEDITATING MIKE PRACTICED REFLECTION

Try to visualize your organization through a process lens. Close your eyes and connect your process with other processes within your organization. Can

you see how you fit into the bigger picture?

Can you see how the processes are intertwined within the organization and how people, resources, and technology come together to produce a product? If you can, is it simple or complex? Can you articulate it in words? Here is where BPMN can help you visualize and describe your organization’s processes. Before we try to connect all our organization’s processes, let’s expand your basic knowledge of BPMN.

2.3 The Very Basics of BPMN

The second question customers always ask is, “What is BPMN?” Business process modeling and notation (BPMN) is a graphical language that enables the development of business process models that are easily understandable. It is a way to communicate process details using standardized notations with a specific meaning. It provides a way for people with diverse backgrounds to understand the process.


LEARNING THE BASIC CATEGORIES FOR BPMN

Of course, not all people are fluent in BPMN. Organizations committed to business process management using BPMN provide tutorials, training aids, and guides to help employees understand the notation. On the other hand, organizations thinking about adopting BPMN may use little more than a marketing flyer. Some organizations fall somewhere in between the two examples. Regardless of where your organization is, we hope that the information in this book, our training aides, our resource links to videos, and our forum blogs help you learn and apply BPMN.

2.3.1 The Five Categories of BPMN

The graphical aspects of the notation organize BPMN into five specific categories. These are flow objects, data, connecting objects, swimlanes, and artifacts. The idea behind the categories was to provide the diagram reader with easily recognizable elements that lead to understanding the diagram. Understanding how these basic categories work together tends to mitigate the confusion when trying to explain variations in the notation. In this section, we provide a brief overview of each category.

2.3.1.1 Flow Objects

Flow objects describe the behavior of a business process model.There are three types of flow objects: activities, events, and gateways.

  1. Activities represent work and describe an action or operation within a business process.
  2. Events represent something that happens during the process that affects the timing or sequence of the activity or process. Events typically start, end, interrupt or alter a process. These are called start events, intermediate events, and end events.
  3. Gateways represent convergence (joins) and divergence (forks) of sequence flows within a process.

Figure 6: Flow Objects


LEARNING BPMN 2.0

2.3.1.2 Connecting Objects

Connecting objects are used to link flow objects (activities,gateways, and events) and show information flow within a process. Connecting objects consists of sequence flows, associations, and message flows.

  1. Sequence flows depict the order in which activities occur within a process.
  2. Associations are used to connect information (data) and artifacts with flow objects.
  3. Message flows are used to show how information is passed between two processes or participants (pools).

Figure 7: Connecting Objects

2.3.1.3 Data

Data notations are used to describe the instance of information created, modified, or used during the process. Data notations include data objects, input, output, and data stores.

  1. Data objects depict information that is either consumed or produced by an activity.
  2. Data input depicts the information consumed by the activity.
  3. Data output depicts the information produced by the activity.
  4. Data store depicts a mechanism for the activities to retrieve or save persistent information that exists beyond the scope of the process.

Figure 8: Data


LEARNING THE BASIC CATEGORIES FOR BPMN

2.3.1.4 Swimlanes

Swimlanes are used to partition activities from one another. There are two types of swimlanes: pools and lanes.

  1. Pools are containers for partitioning a process (a sequence and flow of activities that carry out work) from other pools/participants (processes). Pools can be organizations or roles within the organization or the process itself. Expressly, they represent participants in collaboration as part of a process. a) Graphically, pools/participants can be placed horizontally or vertically. (Tip: If you are using Microsoft Visio, it will not allow you to create them vertically.) b) A best practice is considering a pool as a process (the work being done). This will pay big dividends when depicting complex business processes within your organization through a standardized approach and discipline for modeling. c) BPMN put out additional guidance regarding the naming of pools and recommends using the participant’s name when labeling the pool.
  2. Lanes are subpartitions within a process/pool. Lanes often represent individual roles (e.g., supervisor, employee, driver, clerk). a) Another best practice is to avoid office symbols such as lanes. Office symbols (e.g., organizational branches, departments, etc.) change frequently (are unstable) and frequently cause your model to go out of date. Some larger organizations love to reorganize; it provides the illusion of innovation and adaptation while often having more to do with internal company concerns. In any event, we consider office symbols to be unstable elements. As such, these should be avoided.

Figure 9: Pool and Swimlanes – Horizontally


LEARNING BPMN 2.0

Figure 10: Pool and Swimlane – Vertically

2.3.1.5 Artifacts

Artifacts are used to convey additional details about the process. Three standard artifacts are the “text annotation,” the “group icon,” and the “association.” BPMN allows for the use of custom artifacts. We will address how to create custom artifacts later in the book. For now, we will discuss the standard artifacts:

  1. Text annotations enable modelers to provide more details to the process being modeled and are often referred to as callouts.
  2. Group icons allow for grouping activities, events, and gateways on the model.

Figure 11: Artifacts


LEARNING THE BASIC CATEGORIES FOR BPMN

GENERAL PRACTITIONER APPLICATION EXERCISE

Let’s take it up another notch! Practice by expanding on your basic business process model. For this exercise, just attempt to recreate the following business process model.

  1. Start by creating a pool with two lanes. a. A pool with multiple lanes represents process orchestration between the activities, events, and gateways and the pool/participants (resources- people, systems, organizations) carrying out the process to achieve an outcome (competitive advantage).
  2. As you copy the example, ask yourself: Do you understand the basic notations? As you drag and drop each notation, say them out loud. a. Don’t forget to label each activity, event, and gateway. b. If you do not have these notations mastered yet, don’t worry. That is OK. The key is just building this model and restating the notations.

Figure 12: Expanded Business Process Flow


LEARNING BPMN 2.0

We wanted to show how all the basic categories for BPMN work together when building business process models. Our example depicts the five categories describing our basic cargo process. This exercise is just another step toward expanding your understanding of how to apply BPMN to your organizational process models.

2.4 Incorporating Enterprise Fundamentals for Modeling with BPMN

In the following section, we discuss some fundamentals for modeling for your organization. We start by sharing our basic enterprise modeling style guides for labeling activities and events for modeling with BPMN. We will introduce the concept of a central repository to store enterprise primitives. We will also provide basic modeling conventions that will set the stage for more advanced modeling in chapters 3 and 4. Lastly, we will describe how systems thinking, and enterprise architecture can be used as tools and frameworks for improving your BPM initiatives using BPMN.

2.4.1 Modeling Style Guide

There are many guidelines and advice from various authors, practitioners, and bloggers on the styling guidelines. We typically defer to BPMN’s guidance for our styling or, if we are feeling bold, Bruce Silver’s modeling and style guide. For the book, we will use a simplified style guide. It combines Object Management Group (OMG) best practices and things that work when applying them to our enterprise architecture and developer efforts. For this book, we attempt to apply the following rules.

 Activities: Verb-subject agreement for naming (Complete Paperwork, Create

Document, Destroy Obsolete Records, etc.)  Events: Subject-verb construction for naming (fire alarm activation, time expiration,

code deployment success, and buzzer notification). There are exceptions to these naming conventions when dealing with timer, escalation, link, error, and compensation events. Regardless of how you label your activities, events, and gateways, the key is to capture and store information about your enterprise. If you are interested in detailed styling guides for modeling with BPMN, we highly recommend you check out Bruce Silvers’s work, as he is the leader in this space, and we are big fans of his work.


LEARNING THE BASIC CATEGORIES FOR BPMN

2.4.2 Central Repository for Primitives and Models

To build a set of enterprise business process models that link together, you need to use a standard set of participants, processes, activities, events, and gateways. Collectively, we call these elements primitives. If you identify and define the primitive the first time you use it and store it, you can reuse it later. This provides basic building blocks for your process models and accelerates the modeling process because you are not spending the time to define things every time you use them. This concept is not new. The auto industry reuses parts all the time. They design a wheel one time and reuse the design on several different automobile models. Business process modeling is not all that different from building automobiles in that it is a repeatable process. Business process models are made up of key primitives (activities, participants, events). We want to leverage these primitives as we build process models. This is where using a central repository is vital for successful business process modeling efforts. We posit that a central repository is vital for any organization making enterprise efforts, including architecture, business process management, or model-based systems engineering. We are huge fans of the research out of the European community. Henrik Leopold, Jan Mendling, and Oliver Gunther reported on quality issues of BPMN models [2]. They provided five key recommendations ingrained in our practice for modeling with BPMN. We highly recommend you read this research as we won’t get into all the details in this book. Still, their fourth recommendation is to use a central repository that enables reuse and is an “important requirement for a sound process architecture” [2]. Their recommendations align with John Zachman’s view on storing and reusing primitives for successful Enterprise Architecture efforts. By storing and reusing primitives, you leverage your enterprise primitives and avoid recreating what you already know. We highly encourage you to work with your enterprise architects, business analysts, solution-level architects, developers, and engineers within your organization to define/build enterprise primitives. One of the most valuable assets produced from business process modeling sessions is the activities, resources (system, personnel, material), and information that can be stored and reused in an enterprise repository. Great enterprises take this a step further and have found ways to capture the tacit personal knowledge of these processes. Tacit knowledge can reveal problem areas, quality issues, improvement ideas, operating procedures, and shortcuts that employees use. Those enterprises that can leverage that knowledge to inform policy, make decisions, improve processes, and create and sustain a competitive advantage are critical.


LEARNING BPMN 2.0

Many options are available to store and reuse primitives. Many modeling tools allow for library files that can be accessed directly. Using a modeling tool and having the data linked is critical for faster analytics, the ability to test assumptions, and automating processes. When process information is properly collected, managed, and stored within your organization, it enables the reuse of enterprise information. It provides access to information that can be used to solve complex problems and analyze impacts on business process re-work.

2.4.3 Modeling Conventions

The BPMN version 2 recommends modeling left to right or top to bottom. This is something we have embraced. We model sequence flows either left to right or top to bottom to improve the readability of our process models. The following rules apply when using sequence flows and events.

 Start Events: Always use an outbound sequence flow arrow.

 Intermediate Events: Always have an inbound and outbound sequence flow arrow:

  • Except for Intermediate Link Events – Except for Intermediate Compensation Events

 End Events: Always have an inbound arrow.

Events, gateways, and activities (flow objects) are always connected with sequence flows.

STREAMER SETH created a video describing inbound, and outbound

sequence flows from events and activities. This is a foundational video that helps explain basic modeling fundamentals. Join us at www.bpmpractitioners.com/videos. You can also view our YouTube channel, Joshua Fuehrer.


LEARNING THE BASIC CATEGORIES FOR BPMN

Figure 13: Connecting Flow Objects

After completing the model, fill in the blanks: practice naming activities and events. Use the verbsubject construction (first the verb, then the noun) for activities, but subject-verb construction (noun first, then verb) for events.

MEDITATING MIKE REFLECTING ON ACTION

Ask yourself: Does my activity describe an action? Does my event describe when something happens?

Getting into the habit of reflecting on your actions-in this instance, applying style rules to your process models-allows you to question or view your understanding. Does your understanding align with the material provided? Or did you interpret it in another way? We hope to challenge your view of a concept through reflection in this book. Doing so enables a validation of knowledge that can lead to higher forms of understanding.

2.4.4 Gateway Fundamentals

A basic modeling fundamental is an interaction between sequence flows and events, activities, and gateways.

  1. Gateways determine the branching,forking, merging, and joining of the sequence flows along a process.
  2. Gateways control the flow of a process; they are reliant on conditions or business rules associated with the activity before the gateway. Additionally, some gateways are reliant on the events after the gateway. We discuss the differences between gateway types in chapters 3 and chapter 4.
  3. Gateways are not decision points. The sequence flow arrows should not be “yes” or “no.” This is a preferred modeling style as it enables expressive language details to be captured.

LEARNING BPMN 2.0

  1. Gateways do not represent work.
  2. Gateways can be data-based or event-based. The first gateway we examine is the exclusive gateway. The following example depicts the exclusive gateway and how it diverges the process when students are not engaged. The exclusive gateway is data-driven, meaning during the execution of the activity “teach lesson” and examination of the data are students engaged will determine which path we take as an instructor. Are students nodding off? Are they sitting on the edge of their seats, asking questions, and so forth?

Figure 14: Exclusive Gateway-Engaged?

Do you find yourself engaged? If you answer no, grab yourself a snack. If yes, let’s continue by practicing building a process model with an exclusive gateway. Let’s join STREAMER SETH, who has created a video to help explain basic rules.

STREAMER SETH created a video describing inbound, and outbound

sequence flows from gateways. This is a foundational video that helps explain basic modeling fundamentals using gateways. While watching the video, attempt to follow along while re-creating the same model.Join us at: https://www.bpmpractitioners.com/videos.


The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.


LEARNING THE BASIC CATEGORIES FOR BPMN

Figure 15: Sequence Flow Example for Exclusive Gateways

MEDITATING MIKE GATEWAY REFLECTION

Now let’s reflect on your most recent action. Reflecting on action shortly afterward enables an examination of your understanding of basic concepts. Ask yourself the following.

  1. Does your diverging gateway have at least two outbound arrows?
  2. Does the merging gateway have at least two inbound arrows?
  3. Did you use a start and stop event? Now that we have covered some fundamentals, some modeling conventions, and a brief introduction to gateways, let’s discuss some ideas about the enterprise.
2.5 Examination of the Enterprise: A Framework for Capturing Your Process Models

This section describes essential modeling fundamentals that will enable your business process modeling efforts to have far-reaching effects throughout your enterprise. Specifically, we will outline some critical components for process modeling and how business process modeling fits neatly within the enterprise.


LEARNING BPMN 2.0

2.5.1 Understanding the Enterprise

Capturing and structuring your enterprise information can be difficult, but it is important. Let us examine why capturing your enterprise information is so important.

THOUGHT EXPERIMENT INTRODUCTION

Take a moment and mentally transport yourself at the center of the car buying experience.

MEDITATING MIKE REFLECTION CORNER

To engage in a thought experiment, visualize yourself as a customer node and visualize the node as a small, orange light. To do this, close your eyes and count to five. Can you see the small, orange light?

Figure 16: The Node as a Customer

Now imagine you are buying a new electric car. Pause a moment and countdown from five. Now visualize every process related to buying that car. Visualize what you can see. As you try to see these nodes within this process, dig deeper and start looking beyond the first touchpoint of purchasing the vehicle. What are some possible process interactions? (Process relationships or dependencies). If you are like us, you can only see so much at first. The following is a possible example of what you are visualizing.


LEARNING THE BASIC CATEGORIES FOR BPMN

Figure 17: Enterprise View of the Process Nodes and Relationships

Now that we have a basic enterprise view of these processes let’s extend the thought experiment by asking, who might perform in these processes? Let’s visualize these roles as blue nodes. How many can you see? Can you see the salesperson that helps you purchase the vehicle? What about the loan specialist needed to help you obtain a loan or lease? Ask yourself, what are other possible roles for these processes? Can you see a complex network of roles needed to perform these processes starting to form? If not, that is ok; let us help by presenting a simplified view of possible roles.


LEARNING BPMN 2.0

Figure 18: Enterprise View of Roles within the Processes

Now let’s dig deeper as you visualize these nodes. Ask yourself, what else might be essential to visualize? In complex systems, the architecture that makes up the systems are multi-layered, with “threads” that connect everything. Depending on what problem you are trying to solve, these “threads” may be relevant or not. Let’s explore some other nodes for this thought experiment. Let’s examine other possible nodes by starting with the basics. Take a moment and ask yourself, what are the competencies, systems, equipment, and material needed for each type of node? What do processes and roles need to achieve the business objectives and goals? Material, equipment, systems, and competencies are a few more nodes we can visualize. To help visualize these nodes, we use the following example.


LEARNING THE BASIC CATEGORIES FOR BPMN

Figure 19: Node Visualization Legend

Figure 20: Enterprise View of Roles, Processes, Technology, Material, and Competencies

Unless you have been a part of or have studied this complex system, you probably have not seen the manufacturing supply chain’s tier 2 and tier 3 suppliers. But why would you? If you understand the system, you seek to study; you can make well-informed decisions. The decomposition of enterprise processes will reveal the transformative nature of a business. Business processes are filled with activities completed by people, machines, systems, and artificial intelligence (AI), that transform inputs (money, customer orders, information, service requests) and generate outputs (goods, services, innovation, tacit knowledge, mental models). Those goods and services are connected within the business ecosystem and deliver value to a customer.


LEARNING BPMN 2.0

As you begin to identify these patterns, you are developing your systems thinking process that enables you to see hidden views that, over time, as you build these patterns of these interrelated actions, can enable you to see the whole enterprise. The Inquisitor’s response was reactive. If your response was like the Inquisitors that is a prime example of how we naturally view the world today: reactively. Systems thinking in its simplest form (and we do use the words simplest form lightly) is the ability to consider a set of elements interacting to produce a behavior. We consider all the actions within the “system” and understand that those actions have relationships and connection points that influence each other. How those actions influence each other (cause and effect) can either be seen or unnoticed. Systems thinking can be applied to complex machines such as jetliners, natural ecosystems, watersheds, business ecosystems, or the United States tax code. Take a moment and ask yourself this: can you see how high-level patterns of change affect every aspect of your organization? Or do you see patterns of change based on what only you can see today? Systems thinking provides a framework for making patterns clearer for us to successfully solve problems that are not easily seen [11]. Josh’s previous research was a specific example of systems thinking related to this book. Specifically, he identified how organizations could positively or negatively influence BPM initiatives and learn BPMN. Through the course of this book, we will share those influences plus additional research we have compiled to help your organization promote learning and positively influence change. Surfacing our mental models is critical to understanding a deeper meaning. We each have our views or assumptions about how the world works, our organization operates, or even our actions [7]. It is not until we surface those assumptions (or examine those views) that we can truly understand why we think something or react a certain way when we hear something.


LEARNING THE BASIC CATEGORIES FOR BPMN

2.6 New Learning Experiences

This section provides us an opportunity to present, perhaps, a more relatable basic business process model and learning exercise.

2.6.1 Basic Social Media Process

After our first publication, we received great feedback via social media. Through this partnership with the practitioner community, we realized an opportunity to explain a basic process flow and an expanded process flow in a way that might connect with even more readers. The following example shows a social media process regarding social media posts. The process begins with a start event: in this instance, a social media alert. When your phone or computer notifies you that someone has posted something, do you know? The “social media alert” starts our process, so we use a sequence flow to connect to our first activity to open the social media platform. This action enables us to respond to the post. We use another sequence flow to connect between the first and second activities. After we respond to the post, another sequence flow connects to an end event, signifying we have commented on the social media post, which completes our process.

Figure 21: Basic Process Flow Using Social Media Example

2.6.2 Engineering Lead Erin’s Daily Stand-up Process
ENGINEERING LEAD ERIN

One of the most basic processes that developers experience is the daily stand-up with their team. At its core, a stand-up gives everyone in the team a chance to voice blockers and update others on their own progress and goals.


LEARNING BPMN 2.0

Let us take a look at this process. At the beginning of a team member’s turn, he will talk about the work that he did in the previous day. Next, he will discuss his goals for the remainder of the day. If he is blocked for any reason, he will explain the blocker to the team and discuss with the other team members and facilitators. Once the blocker is documented, then his turn is over, and the next team member repeats the process. Something unique about this process that we want to introduce you to is the “the standup loop”. After a member on the team finishes sharing their progress, if there are other team members remaining, we allow them to share their progress. To do model this in BPMN, we use an exclusive gateway and a sequence flow to loop the flow to the beginning of our process, thus enabling the activities to be repeated by the next team member. Once there are no team members remaining, our process ends.

Figure 22: Daily Stand-up Process

2.6.3 Amazon GIG Delivery Business Process Model – Applying Basic Categories of BPMN

We provided another general practitioner application exercise to practice modeling using the basic categories of BPMN. Our example depicts the five categories describing a basic Amazon delivery model. Amazon is everywhere; the way they have harnessed the GIG economy with their drivers is an exciting business model. Interestingly, in general, the processes of yesterday are the same processes of tomorrow in the GIG economy. The changes are seen in the overhead costs and expenditures associated with expensive fleets, equipment, and facilities. Like other related business topics, we could spend the entire book talking about the GIG economy and describing the business processes


LEARNING THE BASIC CATEGORIES FOR BPMN

of these types of business models. But you are here about learning BPMN and with that, let’s practice building with the basic categories of BPMN.

GENERAL PRACTITIONER

UPDATED APPLICATION EXERCISE

Want to practice taking it up another notch, again? Let’s go! We will expand on our previous exercise for the basic notations and illustrate another example, the notations, and allow you to practice.

  1. This example describes a basic Amazon process of how the goods you ordered online are picked up at a warehouse and delivered to you. In this instance, we describe the process from the point of view of Amazon. Practice recreating these activities, sequence flows, gateways, data objects, text annotation, and events.
  2. As you copy the example, ask yourself: What notations do I understand? It is ok to focus on what you are comfortable with at this stage. a. The key is practice. Practice modeling. Practice saying the notations aloud, and practice seeing the orchestration of familiar processes.

Figure 23: Amazon Example of an Expanded Business Process Flow


LEARNING BPMN 2.0

2.7 Closing Thoughts

This chapter introduced a few overarching concepts related to BPMN and process modeling within your organization. If you take anything away from this chapter, it should be that understanding the interactions within your enterprise is critical. Doing so will enable you to see how processes, people, and technology are connected, all of which help visualize how your organization can achieve and maintain a competitive advantage. This chapter provides guidelines to enable your organization to succeed in business process management initiatives. By leveraging key concepts such as enterprise architecture, primitive repositories, and some basic modeling guidelines, we hope to set you on the path to improving your BPM efforts in your organization. We will include some additional modeling techniques and overarching guidance to expand your knowledge throughout this book.


Exploring a Basic Subset of BPMN

3.1 Applying BPMN to Business Process Models

This chapter teaches you how to create BPMN diagrams using

the descriptive conformance subclass notations.

BPMN

separates the notation into three general classes. The descriptive conformance typically is used for business process modeling efforts in which processes are not too complicated. What does this mean to you? Using descriptive conformance class notations, you should be able to create the following business process models.

  1. High-level, non-executable process models
  2. As-is business process models
  3. To-be business process models
  4. Collaboration between two or more process models Also, by using the descriptive conformance subclass of notation, you will see a smaller subset of BPMN notations. We have found this enables business analysts to create a business process model that is simple and how collaboration among key participants.

LEARNING BPMN 2.0

Additionally, starting with the descriptive conformance subclass can build the basic knowledge needed to transition into more complicated notations (see chapter 4). Since the descriptive conformance subclass is such a mouthful, we will refer to this as our basic subset of BPMN notations. After completing this chapter, we highly encourage you to go back to the BPMN specification from the Object Management Group (OMG) and read the section on the different conformance subclasses [1]. It provides additional details regarding the BPMN model elements and attributes of those elements. As we move throughout this chapter, we will cover key concepts of the descriptive conformance subclass notation set and create the knowledge required to move into more complex modeling with BPMN.

GOAL SETTER’S CORNER
As we minds goals. for this get in the habit of setting concise into setting goals as a norm. State out We use our template to create a specific chapter in the following example. educational loud the outcome goals, we rewire our following and set these goal and a process goal


EXPLORING A BASIC SUBSET OF BPMN

3.1.1 Gateways

The basic notation subset covered in this chapter has two gateway types commonly used in business process modeling. Each has unique characteristics. The first is the exclusive gateway; the second is the parallel gateway. BPMN includes several other gateways. However, for this introduction, we will keep it simple and cover just these two.

Figure 24: Exclusive and Parallel Gateway

3.1.1.1 Exclusive Gateways

Close your eyes and imagine it is a beautiful sunny day and you are out for a long walk. You approach a fork in the road. You have a decision to make. What path do you go down to continue your enjoyable walk? You can only select one path to walk down; you must decide before heading down the path.

A simple trick for conceptualizing exclusive gateways is that exclusive gateways represent a fork in the road, and you can only make one choice. The key to remember is that exclusive gateways do not determine your path: the previous activity decides the path. In the scenario just described, you decided which path to take. The path did not decide for you.


LEARNING BPMN 2.0

Figure 25: Exclusive Gateway – This Path, This Path, or This Path

Exclusive gateways seem simple, right? They are, although the example presented is probably one of the simpler ones you will face. As you head down the selected path, you finish your walk and head home, and the process ends. Now imagine that you wanted to examine the activities you completed on the course of your walk. What if one path presented an obstacle you moved to clear your way? What if another path featured a little old lady enjoying a picnic who invited you to join? These descriptions are pretty interesting and can be modeled for our process. While we could “end” each path with an end event, what if the process continues or merges at any point? Here, using the exclusive gateway to bring all paths back together makes sense. We use the exclusive gateway to “merge” these paths to bring these paths back together.

Figure 26: Exclusive Gateway Merge


EXPLORING A BASIC SUBSET OF BPMN

The following are key characteristics of exclusive gateways:

 Displayed with or without × (but choose one notation and stick with it for the entire model)  Data-driven, meaning the activity prior determines the path taken based on the response of

a question  Used to create alternate paths within a process

 Only one path can be taken for a specific instance of the process with exclusive gateways.

 Sequence flows are labeled to identify the condition in which the path would be taken, based

on the response to the question  Require at least two outbound sequence flows from the exclusive gateway  Require at least two inbound sequence flows for merging exclusive paths

STREAMER SETH has created a video for you to follow along while building

exclusive gateways. Join us at www.bpmpractitioners.com/videos. You can also view our YouTube channel, Joshua Fuehrer

Figure 27: Video Tutorial Example for Exclusive Gateways-Movie Selection

MEDITATING MIKE EXCLUSIVE GATEWAY REFLECTION

Now let’s take a second and reflect on exclusive gateways. Close your eyes and think about your own personal experience at work or in life. Can you recall any

decisions you had to make in which you could only choose one path to follow?


LEARNING BPMN 2.0

A fitting example of this was when I decided to get my doctorate. I am a lifelong learner who has a passion for many fields but had to decide one path to take. Thankfully, I chose business management specializing in management education. We could still be waiting for someone else to discover the experiential learning mental model and BPMN practitioner learning process for BPMN practitioners.

GENERAL PRACTITIONER

EXCLUSIVE GATEWAY EXERCISE

What decisions do you make? I had to choose between wearing my military outfit or tuxedo for this book.

Let’s create a BPMN model using an exclusive gateway. Take a step back and contemplate your role in the organization. Think about what you do, and again, identify three to five activities you complete in a process. But this time, think about when you have to choose based on a decision and model the diverging paths and activities that would follow. Use the exclusive gateway to show the diverging and merging of your process. For those who are students or struggling to identify a decision in your process, practice building the following overly simplistic cybersecurity process.

Figure 28: Exclusive Gateway for the Cybersecurity Process

STUDYING SARA ADDITIONAL

EXERCISES FOR EXCLUSIVE GATEWAYS

I have additional exercises on exclusive gateways if you are looking to expand your understanding.


EXPLORING A BASIC SUBSET OF BPMN

Just head to the BPMN Learning Centre section in our training folder on our website to complete these exercises and test your knowledge. In the next section, we will expand on the concept of gateways through an examination of parallel gateways. The key to remember is that exclusive gateways do not decide which path to take; the action (activity) before the gateway determines the path. It is important to remember this concept because not all gateways follow this convention.

3.1.1.2 PARALLEL GATEWAY

Where the exclusive gateway enabled you to model a path based on prior actions, the parallel gateway does not require a decision. Parallel gateways sound like they do: they create multiple simultaneous activity paths. The use of parallel gateways also enables you to join (synchronize) the process flow after completing tasks and events that occur in the process. The following are key characteristics of parallel gateways.

 Display a plus sign in the diamond  Use the gateway to create or synchronize parallel process flows

 Generate a flow token for each parallel flow occurrence: for example, if two paths are created

from a parallel gateway, two tokens will be created, one for each sequence flow. (See chapter 4 for an advanced description of tokens)  Synchronize parallel process flows by merging the flow with a parallel gateway  Require at least two outbound sequence flows for creating parallel paths  Require at least two inbound sequence flows for synchronizing parallel paths In the following example, we manifest cargo. We use the parallel gateway to create two sequence flows. In parallel, we attach a tracking device and sequence the cargo load (activities completed) before loading cargo. No condition or data is needed for parallel gateways. A parallel gateway is also used to join two or more different parallel paths into one path. BPMN calls this synchronization. Before the activity load cargo can begin, all paths must be joined.


LEARNING BPMN 2.0

Figure 29: Parallel Gateway Basics

FOLLOW ALONG WHILE STREAMER SETH creates a business

process model regarding a cargo management process using parallel gateways. Join us at bpmpractitioners.com/videos. The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.

Figure 30: Follow-Along Video Exercise – Parallel Gateways

For us, we live in a state of parallel processes. Specifically, one of our many jobs is developing the management of architecture. We are constantly evaluating models, evaluating the quality of data, and so forth, in parallel while architecture is being developed. Each of those activities must be completed before we can conduct an architecture assessment.


EXPLORING A BASIC SUBSET OF BPMN

Figure 31: Basic Enterprise Architecture Process in Parallel

FORUM FELICIA

INTRODUCTION TO JOINING THE FORUM DISCUSSIONS WITH BPMN PRACTITIONERS

If you are interested in branch-and-thread concepts, there is an interesting discussion regarding the differences here. Branch-and-thread is just another way to say diverge, create. Go to: https://groups.google.com/forum/#!topic/bpmnforum/COOruQ8yl1w


Another example of parallel gateways is the process for training BPMN. In the following model, we depict a simplified process. As students complete training, we evaluate the business process models developed and grade the tests to ensure students understand BPMN. However, it is not until both activities are completed that we provide mentorship to students. We wait for both activities to be completed because time is precious. We wouldn’t want to mentor students without a complete assessment from graded tests and the evaluation of their process models.


LEARNING BPMN 2.0

Figure 32: Education Parallel Process

As you examine the parallel gateway and the concept of activities completed in parallel, have you ever conducted a process in parallel at work?

STUDYING SARA ADDITIONAL

EXERCISE FOR PARALLEL GATEWAYS

Let’s test your understanding of parallel gateways. If you want to test your knowledge on the application of parallel gateways through a multiple-choice test, just head to: https://www.bpmpractitioners.com/bpmn-exercises


In this section, we described how to use exclusive and parallel gateways. In the following sections, we will expand the use of events. As we dive into events and how to apply them, we will provide additional opportunities to apply the gateway notations discussed here.

ENGINEERING LEAD ERIN’S USE OF PARALLEL GATEWAYS

As a lead engineer, you and your team must act all the time, sometimes in parallel. As an engineering lead, it is essential to have this “living” document as it establishes the processes to handle issues with builds. Let us explore a simplified process for defining build problem procedures. Early on, during the engineering team’s formation, Engineer Erin and her team collaborated to create various processes to handle issues with builds. This living document defines what actions the team should take depending on the type of build problem. Once potential build issues are identified, the team works in parallel with specialized members such as UI developers and security engineers to develop procedures based on the types of build issues. To keep it simple, we will focus on three


EXPLORING A BASIC SUBSET OF BPMN

build processes: UI tests, API tests, and security tests. These simple imaginary processes show how this diagram works. Still, there would likely be many more tests in real life, and depending on risk tolerance, developers may not test these processes at all doing a build.

3.1.2 Events

Up to this point, we have used events to start and stop a process, but events can be used in other ways. In this section, we dive deeper into modeling with events. A simplistic overview of events is as follows: events represent when something happens in a process. Events start or end a process, and they can also occur within the process. There are three different general classes of events:

  1. Start Events
  2. Intermediate Events
  3. End Events

Figure 33: Three Types of Events


LEARNING BPMN 2.0

Whether it is a start, intermediate, or end event, each has unique characteristics in your business process model. In the following sections, we will discuss each type of event independently and how you can apply these to your process models. Additionally, we will identify and illustrate how you can apply the different event types for these three events.

3.1.2.1 Start Events

It doesn’t take long to see those start events are everywhere, from the events that start our daily process, to the start events for making dinner, to the start events that drive our organization’s processes. Start events are essential in identifying when a given process will start. Start events share the following universal characteristics:

 Start events begin the process  All start events are initiated by triggers from outside the process that is “caught.” So, we

sometimes refer to start events as catching events.  Common triggers are messages, signals, timers, and conditions (e.g., we will discuss the

rules for each type in this book) The focus of this section describes three start events (none start event, message start event, and timer start event). Before we go any further, an essential concept is each notation’s “event definition.” Most events will have an event definition that describes the trigger for the event. Event definitions are seen in start, intermediate, end, and throw-and-catch events. Throughout this chapter, we will cover each of these event definitions related to the specific event type covered. It is important to note that the event definition for start events describes how the process begins and what specific elements and attributes are associated with that specific event. The following are examples of the three start event types covered in this chapter.

Figure 34: The None Start Event


EXPLORING A BASIC SUBSET OF BPMN

Figure 35: The Message Start Event

Figure 36: The Timer Start Event

3.1.2.1.1 None Start Events

We provided a basic overview of start event characteristics in the previous section. Now we will dive a little deeper into the none start event. Specifically, we want to provide some of the unique characteristics of start events and cover how you can model with them within your organization. There are three key characteristics of the none start event.

 It can be used for top-level processes or any subprocesses

 The none start event is useful when first shaping a process.  The process start type may not be clear. Using a none start event avoids trying to

determine the specific type of start event to use

 Has no defined trigger.

 There is no event definition, so the attribute field is blank

 It is displayed with no marker (blank) GENERAL PRACTITIONER STARTING

THE PROCESS EXERCISE

Hey, start building this model. It’s all about practice!

Let’s practice building the following model with none start events. Open your modeling canvas and create the following model. Use a none start event to start our very basic process for creating training material to teach a class.


LEARNING BPMN 2.0

Figure 37: None Start Event Exercise Example

SURFER DAVE PRO TIP

Gnarly, dude! The tide is pretty low right now, so while I wait, let me share a basic modeling pro tip with you. Don’t forget to label your start event using a subjectverb construction for many of the event types you learn in this book. Of course, there are exceptions to this pro tip, based on your style guide on how to label events.

3.1.2.1.2 MESSAGE START EVENTS

The message start event identifies how the process can start with the receipt of messages. The message is received and triggers the start of the process. The message start event has several characteristics.

 Received from a participant (another pool)

 Message is a concept in BPMN that transfers control of the process (pool/ participant)

to another process (pool/participant).  Messages can be phone calls, faxes, emails, social media notifications, mail, carrier

pigeon, or tasking at a staff meeting.  Messages can use a message flow (not required).

 Displayed with an envelope marker inside the circle  Can be used for top-level processes or event subprocesses (described here)

Figure 38: Event Subprocess

There is a message event definition defined for the message start event, so we use an envelope to describe when a message is received and starts the process. The message event definition is unique


EXPLORING A BASIC SUBSET OF BPMN

to the specific process, as the underlying attributes specify an operation and the message details received from a participant (pool). The following example describes how we receive a message from a social media platform. We use the message flow to depict the information from the social media platform. That notification triggers our process to check out the latest status or photo. We review those new photos and let users know that we like that photo.

Figure 39: Message Start Events – Social Media Example

3.1.2.1.3 Timer Start Event

The timer start events are used to specify a time-date or cycle in a process. When using the timer start event, you can articulate specific process times or events around set times. The timer start event has several characteristics.

 Used for specific time-date or cycles

 Friday at 10:00 p.m.  Every five minutes  2020-11-04 21:00:00

 Displayed with a clock icon  Can be used for top-level processes or event subprocesses

Organizational processes are filled with timed events. The following example illustrates that the process begins at a set day and time for reviewing security protocols.


LEARNING BPMN 2.0

Figure 40: Timer Start Events

It is important to note that the timer start event has a defined timer event definition, so we use the clock to describe a specific time and date or a specific cycle, which illustrates when the start event is triggered.

GENERAL PRACTITIONER

TIME FOR ANOTHER EXERCISE

“Time is the only scarce commodity”, so let’s make the most of this time to practice three basic models.

Let’s test your understanding through the practical application of three start events. The following are three different processes using each type of start event (none, message, and timer). This following exercise is an excellent opportunity to practice building with start events, mainly if you are new to modeling with BPMN. Open your canvas and recreate the following three processes.

Figure 41: Application of Three Start Events


EXPLORING A BASIC SUBSET OF BPMN

MEDITATING MIKE

FOCUSED BREATHING WHEN REFLECTING

After creating all three processes, take a moment and reflect. Close your eyes and take a few slow deep breaths. Clear your mind. After taking those deep breaths, and your mind is clear, reflect on the following.

  1. Can you think of other examples of when you received a message that triggered the start of your process at work?
  2. What about any time that a specific time or date defined when you began a process? As you continue practicing these reflection techniques, we promise you will see the overarching benefits-or have you already? When you reflected on these fundamental questions, could you visualize how these events occurred in your previous experiences? Did those previous experiences surface any thoughts or feelings? We hope that they did. If not, that is OK: reflection is a lifelong practice that takes time to develop. The point is that we are trying to get you in the habit of practicing various reflection techniques. As we continue our journey in this book, you will have plenty of opportunities to develop these skills to help see things in a new light.
3.1.2.2 End Events

Just as start events are everywhere, so are end events. End events tell us when the process is complete. The types of end events add further clarification, as they can illustrate when there is an error or significant issue in a process. End events share the following characteristics.

 End a completed process

 Represent a result that can be used outside the process. We often refer to end events as

throwing results.  If you use an end event, you must have a start event  A process model does not have to include start and stop events, but we will discuss

that later.


LEARNING BPMN 2.0

This section examines the three types of end events: (none end event, message end event, and terminate end event).

Figure 42: None End Event

Figure 43: Message End Event

Figure 44: Terminate End Event

3.1.2.2.1 None End Event

None end events are used when the end of the process has no associated event definition. As modelers, we can use the none end event when the process ends with no specific action defined. None end events share the following characteristics.

 Do not have an event definition  Displayed without a marker

In the following example, we demonstrate how to use the none end event.


EXPLORING A BASIC SUBSET OF BPMN

As we receive a payment, we check out a bank statement. After checking to make sure we were paid for our services, the process ends.

Figure 45: None End Event – Payment Verified

How could we model it if the process required us to notify the sender that we received payment? In the next section, we discuss how message end events can be used for sending messages at the end of our processes.

3.1.2.2.2 Message End Events

Message end events are a convenient way to communicate information that is being sent at the end of our process. We use message end events in some form in many of our processes. Have you ever completed a set of activities in your job in which you had to send an invoice, notify a customer, or email information to a coworker? Message end events share the following characteristics.

 Messages are sent to a participant when the process ends.

 Option to use a message flow to connect to the participant.

 Messages are used to communicate in a process.

 Just like message start events, message end events can be emails,faxes,phone calls, and social media notifications (or non-electronic means messages such as hand delivery or talking to someone). In the previous section, we used the none end event to indicate that we verified our payment. But what if we wanted to send a payment confirmation email to the customer? The message end event enables you to communicate that information. We depict a simple example of the message end event describing such a process in the following example.


LEARNING BPMN 2.0

Figure 46: Message End Event – Payment Confirmation

We see all sorts of uses for message end events. In the following example, we depict a simple cargo arrival process. As cargo is received, cargo is stored, and the customer is notified. A message end event is used to communicate cargo arrival details to a customer. The key to remember is that all end events are throwing events, meaning the process transformation that occurs is communicated by the information thrown from the process.

Figure 47: Message End Event – Communicating Cargo Arrival Details

ENGINEERING LEAD ERIN’S MESSAGE

START AND END EVENT EXAMPLE

As an engineering lead, there are times in which the team has to address problems with the builds. As discussed earlier, we had three types of issues identified. Let’s take a moment and look at one possible security issue during the build process. The following example describes how Engineer Erin’s team receives a message from the build pipeline process that we identified before. When we receive the “failed security tests notification”, that notification triggers our handle failed security tests process to check out the latest status in more detail. The status describes that “Dependency check failed with Widget library: Library is two major versions old.” We reviewed the error and decided to upgrade the Widget library to the latest version, ending the process.


EXPLORING A BASIC SUBSET OF BPMN

Figure 48: Handle Failed Security Tests Start and End Event Example

3.1.2.2.3 Terminate End Event

Terminate end events abort the entire process instantiation. These events allow us to model what happens when a process is stopped prematurely. Terminate end events share the following characteristics.

 Cause the entire process to be aborted

 Includes any remaining active activities or tokens

 Displayed with a dark circle within the end event

 Can be used for any type of process We describe something we all love to do in the following example: car shopping! (Go ahead and insert sarcasm if you haven’t already.) So, you have found that perfect car, but while you are selecting the car package options, the dealer is having you fill out loan paperwork and is negotiating a price. But then the worst happens: you are denied the loan. If the loan is not approved, the process ends, and any activities cease. Without the money from the loan, you cannot purchase a car.


LEARNING BPMN 2.0

Figure 49: Understanding End Terminate Event Characteristics

A 2ND EDITION UPDATE, I recently bought a Tesla and loved the car buying experience. To

see my updated process model, head to section 3.2.2 to see the differences. There is a defined terminate event definition for the terminate end event, so we use the terminate end event to end the process abruptly. For example, if we were planning a vacation and searching for hotels and flights, we may be able to find a flight that fits our schedule, but we are unable to find the hotel. Thus, using the terminate end event would abnormally terminate the entire process.

GENERAL PRACTITIONER

APPLYING TERMINATE END EVENTS EXPERIENCE

Let’s practice by modeling with terminate events. For this exercise, let’s keep it simple and recreate the following model about determining our next vacation.


EXPLORING A BASIC SUBSET OF BPMN

Figure 50: Application of Terminate End Events

My family has selected our vacation destination-Hawaii. So, we need to book a flight and a hotel. We split up the work. My wife, Ashley, books the flight, and I am booking the hotel-a parallel process. What happens if all the hotels are booked and there are no rooms available? If a hotel room is unavailable, I tell my wife there are no rooms, and she stops looking for a flight. We can model this by using the exclusive gateway to depict the results from “book hotel.” In this instance, the hotel is either available or unavailable. We then use a sequence flow from the exclusive gateway to a terminate end event. The terminated end event will stop any ongoing activity, such as booking the flight, and none of the follow-on activities will be initiated, such as purchasing the tickets. That is the significance of terminating end events. These application exercises that appear early in our book are more about recreating some sort of model with an accompanying narrative. As we progress through the book, we move from these application exercises into more complex exercises requiring you to analyze narrative text or usecase information to apply your knowledge of BPMN. For those BPMN practitioners who have an advanced understanding of a notation discussed, we challenge you to take these building block exercises to the next level and put your spin on creating a narrative to build a custom model using the notations discussed. After you have completed your narrative and model, we encourage you to share it on our website and discuss it.


LEARNING BPMN 2.0

MEDITATING MIKE

RECALL DOODLING TECHNIQUE FOR REFLECTING ON EXPERIENCE

Take a piece of paper or whiteboard and slowly draw a circle. When the point of the pen or marker meets to connect the circle, keep going in circles with your pen/marker. Keep drawing (doodling) the same circle for a couple of minutes. During this process, just focus on drawing the circle and clear your mind. Now, let’s reflect on any previous experience related to terminating events. Does something abnormally occur in your process that terminates other actions completed by you or others? The technique of structured doodling has been shown to improve individual ability to recall memories [12]. So, practice this technique when you feel stuck or need to recall previous experiences.

3.1.2.3 Intermediate Events

Intermediate events enable you to model when something happens (a trigger is caught or thrown) within the process. Whereas start and end events have a specific purpose for starting and ending the process, intermediate events occur throughout the process, affecting the flow of a process model. Intermediate events share the following characteristics.

 Indicate when something happens in the process (a trigger is caught or thrown)

 It can be used for catching and throwing from one pool/participant to another pool/

participant  Will not begin or directly end a process  Can be placed on the boundary of an activity (discussed in chapter 4)

 Can be interrupting or non-interrupting (discussed in chapter 4) In the following example, we describe a basic shopping cart process. The trigger is the shopper’s intent to buy a product. The first task is to add items to the shopping cart. The next is to complete the checkout process. As the shopper lands on the payment screen, he notices an automatic online coupon for 20% off purchases in the online store. Instead of completing the shopping cart process, the shopper returns to the shopping cart and increases the quantity of some items to take advantage of the discount. Now he can input payment information and complete the shopping cart experience.


EXPLORING A BASIC SUBSET OF BPMN

Figure 51: None Intermediate Event

Does your process have to wait for a specific time to continue, or does it have to wait to receive an email or message to continue or something to be sent? You can think of intermediate events when you model your organization to depict when something occurs during the process. Throughout this section, we describe a few different intermediate event types and illustrate the practical application for modeling these event types in your business process models.

3.1.2.3.1 None Intermediate Events

We will briefly cover the none intermediate event in this section. Similar to the none start event; none intermediate events do not have an event definition. While the none intermediate event helps model early on during the development of the first iterations of our process model, we typically find other intermediate event types more meaningful and tend to gravitate toward using them. The main reason is that other event types have event definitions that help us define the trigger (or what’s occurring). It is a great way to communicate organization process events to multiple stakeholders. None intermediate events share the following characteristics.

 It does not have an event definition (just as the none start event)

 It can be used only during the normal flow (cannot be on the boundary of activity)  Displayed without a marker


LEARNING BPMN 2.0

Figure 52: Examination of the None Intermediate Event

A side note for those who have seen boundary events or modeled with them before: we will discuss boundary events and the application of events on the boundary of activities in chapter 4. Let’s continue examining intermediate events and model out a simple household process: something most of us should have experience with-doing chores.

GENERAL PRACTITIONER

APPLICATION OF NONE INTERMEDIATE EVENTS

Wait for a second; doing chores is not fun! I want to build BPMN models. Oh, well. Let’s combine both. Instead of doing chores, we will use BPMN to model our chore process using intermediate events and parallel gateways.

  1. Our process begins, and the first activity of our chore process is to complete general cleanup.
  2. Use the parallel gateway to depict two paths. a. One path taken leads to the second activity of our chore process: dust living room. i. Upon completion of dusting the living room, a sequence flow leads to a parallel gateway (synchronization).
  3. The second path taken leads to our third activity: wash clothes. a. Upon completion of washing the clothes, a sequence flow leads to a none intermediate event to illustrate that the washer cycle has been completed. i. By using the none intermediate event, we are signifying that the process cannot continue until the event washer cycle is completed occurs.
  4. The fourth activity after the none intermediate event is unloaded washer.

EXPLORING A BASIC SUBSET OF BPMN

  1. The fifth activity after unload washer is to fold laundry. a. Upon completion of folding the laundry, a sequence flow leads to the parallel gateway (synchronization).
  2. After completing all of our activities, a sequence flow leads from the parallel gateway (synchronization) to an end event. a. Remember that for the process to continue with a parallel gateway, all active activities and paths taken must be completed before we can continue our process

Figure 53: Practice Building with None Intermediate Events

We use the intermediate event to control the flow of the process to illustrate that this event must occur before we can fold laundry. As we dive into intermediate events, we will illustrate the power of controlling the flow of the process based on events or the things that occur.

SURFER DAVE PRO TIP

Bro, teaching bad concepts is like teaching bad form for surfing: it will come back to haunt you! Like the authors stated, none intermediate events are great for TBD or placeholders until you have enough details to figure out the event types. The previous examples of none intermediate events are great for teaching the concept.

The following would be a more accurate way to represent the event types from the previous examples. We will get into why signal events would be a better fit here in chapter 4; but basically, signal events are used when there is not a specific target but rather a general notification that affects the process flow.


LEARNING BPMN 2.0

Figure 54: Surfer Dave Pro Tip – Correct Event Types – 20% Online Discount

Figure 55: Surfer Dave Pro Tip – Correct Event Types – Washer Cycle Completion Alert

3.1.2.3.2 Message Intermediate Event

Message events can be emails, faxes, phone calls, social media notifications, by carrier pigeon or nonelectronic, such as letters or talking to someone. Message intermediate events share the following characteristics.

 Used to communicate in a process

 Throwing messages are displayed with a dark filled-in envelope  Catching messages are displayed as an unfilled-in envelope Message intermediate events, just like none intermediate events, are used to model out when something

occurs during the process-in this case when a message is received or sent. As teachers, we typically

create our training material before holding class. It is between creating the training material and class


EXPLORING A BASIC SUBSET OF BPMN

when many things occur in our process. We can use the intermediate message event to describe how, upon receipt or catch of the student list from an organization, we can prepare for class by ensuring we have resources for the appropriate number of students. We can create all the training material in the world, but until the occurrence of receiving that student list, our process doesn’t continue. In the following example, we illustrate the catch concept.

Figure 56: Message Intermediate Event – Catch

Let us expand on the catch concept by including the throw concept. In the following example, we use a message throw and a message catch during the normal process flow between two activities. After a report is created, we use the message throw, illustrated with the filled-in envelope, to show that we send a report to an actual pool/participant (not shown). We then use the message catch from the pool/participant to describe that our processes don’t continue until discrepancies are received. Our process sits and waits for the intermediate message catch event until the event discrepancies received occur. Once we receive discrepancies, the process flow continues, and we can modify the report.


LEARNING BPMN 2.0

Figure 57: Message Intermediate Events – Throwing and Catching Concept

The application of the throw and catch intermediate message event enables you to show the flow of information in collaboration. Additionally, throwing and catching enable you to show how process control is changed. If an intermediate message event is depicted as a throwing event, then a message is sent as soon as that event occurs; you are passing control to a participant outside of your process. As soon as a message throw occurs, the process waits to receive “catch” information from the participant outside of your process. In the following example, a test is sent to the student. Control is passed to the student because they must complete the test. Our process flow moves to the intermediate message event catch, and the process will wait until the student sends test results. Once test results are received, the process flow will continue, and we can evaluate test results. In this case, control of the process is transferred with the message throw. The control of the process is now with the student. Until the student returns the test, the actual process is in the wait condition. “Why is that?” you ask. Because after we receive the test results, we will evaluate them. We use the exclusive gateway to depict that there are two options based on our evaluation. If the data indicates that students didn’t grasp the throw and catch concept, we will update our training material, because we failed to make that connection. If we could connect with the student and the student can grasp the concept of throw and catch, then no updates should be required to our training material. However, if everyone understands this concept, we can proceed, and the process ends.


EXPLORING A BASIC SUBSET OF BPMN

Figure 58: Analyze Message Throw and Catch with Trisotech Modeler

In the previous example, we use the animation feature of Trisotech to illustrate the throw and catch or how the message (envelope) moves through the process. We are throwing control to the student because we cannot continue without receiving test results.

GENERAL PRACTITIONER

CREATE BPMN MODEL WITH THROW AND CATCH MESSAGE INTERMEDIATE EVENTS

Wait, why wasn’t carrier pigeons used as a method for throwing and catching in that last example? Oh, well. I guess with technology; some things become obsolete.

Let’s take a moment and practice building the following model.The key here is to apply the concept of intermediate message events for this basic process.


LEARNING BPMN 2.0

Figure 59: Developing a Process Model with Intermediate Events

For advanced users, add a parallel gateway with an additional message throw and catch and two participants describing a familiar process. When you are done, feel free to join the conversation on our forum discussion and share your process.

MEDITATING MIKE REFLECTING ON STUCK PROCESSES

Look at the previous model closely and ask, how long would you wait to receive corrections before moving onto the “update balance sheet” activity? The answer: indefinitely. The way the model is depicted, we must wait on receiving corrections before continuing.

However, as modelers, we have options to avoid getting stuck in our process. We will cover this a bit more as we continue to peel back the layers of BPMN.

3.1.2.3.3 Timer Intermediate Event

Like the timer start event that we previously discussed, the timer intermediate event shares similar characteristics. The difference with the intermediate event is that it acts as a delay mechanism in the process. The timer intermediate event is also a catching event and indicates a specific time-date or cycle. We will discuss important characteristics of the timer intermediate event and how you can apply it to your process models. Timer intermediate event shares the following characteristics.

 Acts as a delay mechanism within the process flow

 Used for specific time-date or cycles  Displayed with a clock icon

 Are catching only

EXPLORING A BASIC SUBSET OF BPMN

Figure 60: Timer Intermediate Event – Delay Mechanism Example

Organizations care that their processes lead to a competitive advantage. Timer events are useful when modeling organizational processes, specifically when there are time delays or cycles relevant to providing a good or service. The following example shows a standard automotive repair shop process using timer events. The process is simple: It begins at 7:00 a.m. daily at the beginning of a shift. The shop goes through a series of activities for repairing a vehicle. We use the timer intermediate event to illustrate that after arranging for a vehicle repair, they wait two hours (cycle time) before the process continues. It may be relevant to an organization to capture that it takes two hours before a customer may pick up a vehicle. Could they improve customer satisfaction by decreasing the wait time? Or does the process already have an optimal benchmarked time? Until you capture specific time events that occur during the process, you may never know.


LEARNING BPMN 2.0

Figure 61: Timer Intermediate Event Explained – Replace Process

MEDITATING MIKE TAKING TIME FOR REFLECTION

Time for reflection is everything, even for the most straightforward problem. How long would the intermediate timer event delay the previous process? The answer: two hours. While this was a simple example, now imagine having five timer intermediate events with various times, gateway paths, and so forth. Understanding the control flow and which timer is enabled will allow you to analyze process information as you start building out business process models.

GENERAL PRACTITIONER

CONCEPTUALIZING A PROCESS WITHOUT ACTIVITIES

The point of a process is to show the transformation. But it’s fun to break the norm when learning. Let’s visualize our process model without activities. To do this, we will have a little fun with intermediate events and apply what we have learned so far. Without looking at the provided solution, create a process model without activities.

  1. Create a process model based on events.
  2. Engage in creative thought to build a process model with a start event, intermediate events, and end events.
  3. Use parallel gateways (fork and synchronize).
  4. As you place each notation, state out loud which notation you are using. After you complete your model, look at our following example. Was your model different? If so, we would love if you shared your example on the forums.

EXPLORING A BASIC SUBSET OF BPMN

Figure 62: Conceptualize the World Without Activities

Spatial-temporal reasoning enables us to visualize patterns and how to arrange objects. When learning and applying BPMN, improving our spatial-temporal reasoning would, in theory, improve how we can see how processes are connected, how to arrange the notations based on our knowledge of BPMN, and how we can visualize the patterns. When you are in the mood and are building a model, we recommend listening to classical music. We all vary in our preferred music, but some of our favorites include Mozart, Vivaldi, Handel, Bach, and Telemann. In a group setting, we may include the top 50 classic rock playlist. This section provided a baseline of events that you can use to start applying to your business process models. These basic event types are the key to any good business process model.They are commonly used in developing business process models and enable us to dive deeper into other event types in chapter 4. But before you move on to solving your organization’s problems with BPMN, let’s expand your understanding of modeling with activities and tasks in the next section.

3.1.3 Modeling with Activities and Tasks

Activities are used to describe work an organization completes in a process. Thus far, we have used a task object as a basic way to describe an activity within a process flow. Now we will dive deeper into activities by explaining the differences in the activity notation and how you can apply them to your process models effectively.


LEARNING BPMN 2.0

Tasks are atomic, meaning they cannot be broken down into any finer level of details. In this section, we will describe four BPMN tasks. Chapter 4 will describe the remaining task types, but for now, the following task types are covered in chapter 3.

Figure 63: Manual, User, Service Task, and Call Activity

3.1.3.1 Manual Tasks

Modeling with manual tasks is probably the most stimulating notation out of all the notations.

We did. Because if you look at manual tasks as opportunities to improve current as-is processes, organizations are filled with manual tasks. Over the last 3, 5, 10, 20 years, ask yourself how many “tasks” have been automated in your current organization? Technology advances (e.g., cloud, AI/ML, robotics), globalization, and integration capabilities (e.g., application programming interface (API)) has led to a change for many organizations. Identifying and understanding manual tasks and manual processes can be fruitful for those looking to promote change through digital transformation. Think of the manual task as an activity completed without the assistance of a system or any form of automation. Organizations are cluttered with manual tasks and processes. How many times have you completed a manual task? Now, ask yourself how often you have thought that a manual task could be automated? The following are characteristics of manual tasks.

 Identified with a hand in the upper-left corner of the box  Completed without the assistance of automation

EXPLORING A BASIC SUBSET OF BPMN

In the following example, we illustrate a basic manual process for cargo management for building cargo pallets. We illustrate three manual tasks. Each manual task (illustrated with the hand in the upper-left corner) represents work done without automation by employees performing a series of activities with their minds and might.

Figure 64: Manual Tasks

STREAMER SETH has created another video if you want to learn more

about manual tasks. Follow along while we build a process for teaching BPMN using manual tasks. Join us: https://www.bpmpractitioners.com/videos.


The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.

Figure 65: Building with Manual Tasks – Expanded Training Example


LEARNING BPMN 2.0

GENERAL PRACTITIONER

BUILDING WITH MANUAL TASKS

Let’s manually create a model using a piece of paper or whiteboard. Think about manual tasks that you have performed at work in the past and create a model with manual tasks you perform without the assistance of a tool. Use a whiteboard or piece of paper

  1. Create a process with manual tasks.
  2. Would you or could you automate any of those manual tasks?
  3. After creating the model, please take a picture with your phone or camera and add it to our forum discussion on manual tasks.

MEDITATING MIKE FEELING THE PRESSURE

Let’s role-play a bit. Imagine you oversee your organization for the day, and you have the authority to move mountains regarding the change. Take a moment, think about processes you are familiar with, and ask yourself the following.

  1. Would you automate any of the tasks you identified?
  2. Do you know what would be an excellent quantifier to automate tasks? Before you answer these questions, some things to think about are.
  3. Is the task repetitive or mundane?
  4. Can the task be automated cost-effectively? Identifying manual tasks is only part of the battle in understanding whether your processes are competitive. Understanding costs to automate, resources required to complete a manual task, and the output of manual tasks are essential considerations for competitive processes.
3.1.3.2 User Tasks

The second type of task that we will cover in this chapter is the user task. A user task is performed with the assistance of an application or system. We also include equipment in this category. Organizations are made up of employees utilizing software and applications to complete their work.


EXPLORING A BASIC SUBSET OF BPMN

Think of the user task as someone completing work using a software application such as QuickBooks, Xero, or even Microsoft Excel to verify account balances or a system that helps you process payments. The following are characteristics of user tasks.

 Identified with a person icon in the upper-left corner  Completed with the support of an application or system

Figure 66: User Tasks

GENERAL PRACTITIONER

BUILDING A PROCESS MODEL WITH MANUAL AND USER TASKS

Don’t let the fear of not knowing keep you from the action. Practice makes perfect. The practical application of modeling enables trial and error.

Let’s apply your understanding of manual and user tasks and recreate the following business process model for system change requests. As you are building the model, a key takeaway is identifying the task types you use.

Figure 67: Applying User Tasks to System Change Request Process


LEARNING BPMN 2.0

The user task shows that we use Microsoft Excel to track all system change requests. Showing this adds value to an organization trying to improve its process because it leads to the question: Have you ever tried using a tool like Serena? While we love MS Excel, there is a time and a place for using it. Managing system change requests, in our opinion, is not one of them.

STUDYING SARA

USE CASE FOR IDENTIFYING USER TASKS

Do you want to improve your identification of user tasks? An exercise will provide some real-world examples of identifying user tasks.

The key is to experience what analysts go through. Take a moment and test your analysis skills. We encourage you to complete this exercise with a group of colleagues who also use BPMN. We find this type of collaboration can help surface new understanding. Download the use case from our training folder on our website and share it with your colleagues: https://www.bpmpractitioners.com/ bpmn-exercises If you are reading this yourself, no worries; you can post on the forums, and we would be glad to discuss your analysis. Before we move on, are you starting to see a pattern emerge yet? Do you see that your organization’s processes are made up of distinct tasks? Understanding the task types will clearly represent how activities are being completed. As we continue to dive into BPMN, patterns should start to emerge that represent how your organization functions. In the next section, we describe the service task and how you can apply it to your business process models.

ENGINEERING LEAD HANDLE FAILED SECURITY TESTS

This is a good opportunity to discuss a previous example for Handle Failed Security Tests. As discussed earlier, we receive a failed security test notification message. But what does this really mean in terms of the types of activities we do in relation to user tasks? Let’s take a look at our updated process model.

An expanded look at our handle failed security tests we see that task types and systems used by Engineer Erin’s team. The difference to our previous example, we are now able to apply the user task type to represent that the team uses AWS CodeDeploy to check the latest status, review the error message, and then upgrade the latest version library.


EXPLORING A BASIC SUBSET OF BPMN

Figure 68: Engineer Erin’s User Task Example

3.1.3.3 Service Tasks

The third task we will discuss is the service task.The service task is either triggered by an application or web service. Can you think of any service tasks in your organization? The following are characteristics of service tasks:

 Identified with a gear in the upper-left corner  Invoked by an operation

 To be invoked by an operation, the message into the service task must have an item

definition.

 See the SURFER DAVE PRO TIP below for an expanded description of the operation.  Represents a service request/response [think web services or micro-services]  It can be used to identify business logic errors or conditions that were not expected or

experienced: a fault is returned, and an interrupting error event occurs (see chapter 4 error events).

Our organization uses specialized security software for monitoring threats to our systems. In the following example, we model out the basic process for threat management. We use the service task to illustrate how our system detects threats and the steps taken when a threat is detected. We do not have any manual or user tasks in this process.


LEARNING BPMN 2.0

Figure 69: Applying Service Tasks – Cybersecurity Monitoring

MEDITATING MIKE

SERVICE TASK REFLECTION

Before moving to the next exercise, take a moment and ask yourself the following. Do I have a better understanding of service tasks? Does my organization automate any tasks? Are there redundant tasks I do today that could be automated? Would it be cost-effective?

Taking time to reflect on the models you are analyzing will be essential as you begin making recommendations for process improvement, redesign, or re-engineering.

GENERAL PRACTITIONER

ANALYZE AND DECIDE SERVICE TASK EXERCISE

Let’s examine our understanding of service task types and determine which service task types to apply to the following BPMN model.

The following example provides a basic process model with no task types identified. We challenge you to rebuild the model and apply the service task based on your understanding of service tasks. Leave the task types blank if it is not a service task.


EXPLORING A BASIC SUBSET OF BPMN

Figure 70: Identify Service Task Exercise

  1. Rebuild the business process model with your identified service task. a. Can you automate the complete process? b. Do you think automation is always cost-effective? We provide some of our insights into modeling with service tasks. Now that you have built the model and identified the service tasks, does it look like the following example? Did anyone automate all of the tasks? Do you want to discuss automation further? Join our forum discussion regarding service tasks and automation. The following is one possible solution for this exercise.

Figure 71: Possible Solution for Service Task Exercise

ENGINEERING LEAD SCAN CARGO PROCESS

Are you on an engineering team or looking at becoming an engineer? Then this is a great opportunity to look at how we can use a diagram build with BPMN to automate the Scan Cargo process. When Engineer Lead Erin was tasked to automate the Scan Cargo process, this is how she started.


LEARNING BPMN 2.0

First, Engineer Erin collaborated with her Business Management team to review and understand the business process, key metrics, and relevant process goals. She learned that a significant bottleneck occurs while cargo is being scanned causing delays that cost tens of millions of dollars each year. Second, Engineer Erin sought the help of Human Factors Engineers (HFE) who interviews the workers that perform the Scan Cargo process. The HFE team also watched the workers to learn about workarounds that they created to make their job more efficient. With these pieces of information in place, Engineer Erin brought her engineering team together to iterate through a proof-of-concept of how they might automate the Scan Cargo process. After a few sessions, the team decided that there are three key actions to automating Scan Cargo.

 Step 1: Remove the cargo from its storage bin  Step 2: Scan the item identifier  Step 3: Prepare the cargo for movement

The team attempted to not include solutions into these steps. For example, for Step 2, they didn’t say “Scan RFID” because that implies the use of RFID tags and scanners. Simply stated, what if there was a way to identify each container with AI, or some other method? The next task was to identify the success criteria for each step, and the possible failure scenarios. Agreeing on the success criteria allows engineers to focus engineering efforts on that outcome, while identifying failure scenarios is important to create handlers for each error type. Below are some example success criteria and potential failures.

Table 9: Engineering Success Criteria and Possible Failures


EXPLORING A BASIC SUBSET OF BPMN

How might you take this information with an understanding of the process to engineer a solution for this problem? At a high level, the source code might look something like this:


LEARNING BPMN 2.0

The code in the figure above is not practical for a real-life system at scale. However, it does an excellent job illustrating how Erin might break up the Scan Cargo task. She first identified the success and failure criteria and then created the scaffolding to support them. If any new actions or failures pop up through testing or live use, then the team can update the class to support the changes. Another benefit of thinking about these things beforehand is that testing becomes easier and compartmentalized. In a real-life production system, this ScanCargo class would likely be a collection of other classes that interface with physical hardware like robots and scanners, as well as the compute and data hardware that support the logic layer of the application. An important note for BPMN practitioners and software delivery teams is that we can measure bottleneck reduction and its impact on the overall process of freight movement in this proof of concept. Taking this thought a step further, we could measure the costs to an organization to implement such proof of concept (at scale) and determine if”goals and objectives of a cost leadership strategy” can be achieved by reducing freight costs for the cargo being delivered to customers. Join us on the Twitter to discuss @tera_tech.


EXPLORING A BASIC SUBSET OF BPMN

With progress in machine learning, artificial intelligence, and robotics, many of the tasks we do today will be done by these technologies. Understanding what the employee does versus automation is vital in capturing process details.

3.1.3.4 Call Activities

We have discussed three task types thus far.This section will expand our use of activities by describing and applying the call activity. A call activity identifies a set of activities that have already been modeled and can be used. We call these sets of activities a global task. We call a global task when the activities should be executed. We will discuss the call activity for using a collapsed subprocess (global process) in chapter 4. We will focus on a global task being called to execute call activities here. The following are characteristics of call activities.

 Identified with a bold line around the activity shape (with or without a task type)  Specifies the unique data requirements it must fulfill

 For instance, we must provide specific input (data), and in return, we expect specific

output (data) from the call activity

Figure 72: Call Activities – Three Types Depicted

If you are still learning BPMN, you are probably asking yourself, “Why and when would I use call activities?”Recall that these enable the reuse of activities that are completed within your organization and that can be shared globally. Organizations have lines of business that have shared responsibilities. For instance, the shipping department identifies routes to move cargo and can estimate the transportation cost. A call activity allows modelers to represent that set of activities as a reusable task. In the following example, we illustrate a basic process for selecting a course of action for cargo movement. We use the call activity evaluate cost estimate to represent a global task that is shared by other processes.


LEARNING BPMN 2.0

Figure 73: Application of User Call Activity

STREAMER SETH has created a video describing call activities. Join Seth

as he builds and describes how to use the call activity. Join at: https://www.bpmpractitioners.com/videos.


The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.

Figure 74: Call Activity Example Using BPMN

The key to identifying call activities is to think globally about that task. If other processes share a task, it may be modeled as a global task (call activity). Other process models can invoke that global task by using the call activity. For those looking for a further explanation of call activities, we encourage you to join our forum discussion regarding call activities or head to chapter 4 . In the next section, we dive into subprocesses and illustrate another layer of complexity with BPMN.


EXPLORING A BASIC SUBSET OF BPMN

3.1.3.5 Subprocess Overview

If our goal were to create a process model of everything your organization does, we would not be able to create a diagram big enough to do it. It would be a colossal diagram that would wrap around the room and be impossible to follow. Luckily, we have subprocesses to expand or hide process details. This section will describe collapsed subprocess, expanded subprocess, and how you can create a process model that might not wrap around the entire room. A task is used when the work in the process cannot be broken down to a finer level of detail. In contrast, the collapsed subprocess (indicated with the plus) illustrates that a process is decomposed into a lower level of details. What that means is that there are two types of activities used in process modeling:

 Task (described in the previous sections)  Subprocess

Subprocesses are used to represent an abstract of many activities or tasks in a process. As with task types, we only cover a small subset to introduce you to the notation. In chapter 4, we expand on subprocesses. This section will cover two types of subprocesses:

 Expanded subprocess  Collapsed subprocess

Figure 75: Subprocess and Expanded Subprocess


LEARNING BPMN 2.0

3.1.3.5.1 Collapsed Subprocess

We are in luck. Using the collapsed subprocess notation, we can hide the flow details of our processes and capture a more strategic or tactical level picture of our organization’s processes. The following are characteristics of a subprocess.

 Represented as an activity with a plus sign (+) in the lower center  Only none start events can be used in subprocesses.

 The collapsed subprocess hides a process’s details (sequence flow, activities, events, data,

and gateways). As the name suggests, subprocesses are a decomposition of a parent process. The parent process will trigger a subprocess when the sequence flow reaches the collapsed subprocess notation during our parent process flow. In the following example, we illustrate how the process flow goes from the parent process into the subprocess.

Figure 76: Parent Process – Manage Transportation Accounts & Decomposition of Manage Transportation Accounts

The subprocess helps reduce the complexity of BPMN. The examples thus far have been depicted as simple processes, or the complex processes have been superficially modeled for simplicity. Modeling business processes typically results in complex models. Subprocesses reduce complexity by encapsulating details in separate models.


EXPLORING A BASIC SUBSET OF BPMN

Have you ever tried to model your organization from the top down? You probably have if you think of your organization as a collection of subprocesses. At the highest level (think high-level workflow), you would see several subprocesses or main lines of business. A transportation management business process model may look like this: Track Inventory Levels, Direct Cargo Operations and Verify Transportation Accounts. It is rare, however, that they fit neatly as in this first example:

Figure 77: Simple View from the Top

The previous simple example could quickly look like the following model as you start peeling the layers of your organization and modeling out gateways and business rules.

Figure 78: Expanding the View of Your Organization

You are probably asking yourself, “What good is modeling top-level processes? It just resembles our organization chart.What is the benefit?”Well, it does provide an enterprise view of your organization and, if done correctly, can identify redundant operations or organizational processes. Many of us in the field have been modeling processes at the lowest level. If that is the case, BPMN has you covered, and with a bit of analysis, you can reverse-engineer those business process models. Reverse engineering will enable you to quickly build enterprise-level models by rolling up activities into a model filled with collapsed subprocesses. On occasion, you won’t have all the necessary information to model a process altogether. Using collapsed subprocesses allows you to capture the idea and come back later to fill in the details.


LEARNING BPMN 2.0

SURFER DAVE PRO TIP

Understanding the parent and child relationship and using a centralized repository for storing primitives can significantly aid in your ability to determine a process hierarchy and reuse your enterprise assets.

How do you determine which activities fit neatly within a collapsed subprocess? Let’s take a moment and practice identifying activities for a collapsed subprocess.

GENERAL PRACTITIONER IDENTIFYING SUBPROCESSES IN A PREVIOUSLY BUILT PROCESS MODEL

Let’s practice identifying tasks that could be grouped into a collapsed subprocess.

In the following example, we describe writing a technical report-a standard process for consultants in the IT industry. Which tasks would logically go into a collapsed subprocess?

Figure 79: Identify the Collapsed Subprocess Exercise – Write a Tech Paper

We describe two practical solutions for creating collapsed subprocesses. Did you identify any others? If you did, join us in the forum discussion on subprocesses and share.


EXPLORING A BASIC SUBSET OF BPMN

Figure 80: Possible Solution for Collapsed Subprocess Exercise – Write a Tech Paper

ENGINEERING LEAD DEVOPS

COLLAPSED SUBPROCESS EXAMPLE

DevOps is a cultural mindset that is focused on delivery speed and kaizen (continuous improvement). People across multiple domains and practices must work together to provide business value by delivering software to a business function. Like kitchen staff members working to deliver food quickly at a quality restaurant, these domains and practices work through multiple sub-processes simultaneously to deliver the final product. Let’s focus on a simple version of our DevOps process. In section 4.1.5.4 we extend this model. We can use the collapsed subprocess notation to describe our DevOps top-level process. Plan, Develop, Build, Test, Package, and Deploy are the main subprocesses. Suppose we would click on our build process (the first figure). What is revealed are the details of our build process (the second figure). Don’t be alarmed by the case management model and notation.In the following section, Surfer Dave introduces Case Management Modeling and Notation (CMMN) and the BPMN Relationship for learners looking to understand the notations beyond BPMN.

Figure 81: Engineering Lead Erin’s DevOps Collapsed Subprocess Example


LEARNING BPMN 2.0

Figure 82: Test Release Subprocess Revealed

Using subprocesses can reduce the size of your model. Creating the collapsed subprocess may make sense for modeling, but sometimes your functional community wants to see detail within the process model and not go to other models. In the next section, we describe the use of expanded subprocesses and how to apply them to those situations in which it makes sense to show the details of the subprocess.

3.1.3.5.1.1 Introduction to Case Management Modeling and Notation (CMMN) and the BPMN Relationship

While this book focuses on learning BPMN, let’s learn how CMMN is connected. OMG developed CMMN.

CAUTION, NEW LEARNERS!

If you are new to BPMN, we suggest you skip this section and return later.

SURFER DAVE PRO TIP

Woah, I thought the process for surfing was straightforward. Little did I know

that these unpredictable forces make modeling my process difficult. Luckily,

Case Management Modeling and Notation (CMMN) is an excellent

connector to BPMN that enables us to model this unpredictability.


EXPLORING A BASIC SUBSET OF BPMN

CMMN is a language to describe processes not easily described as sequential activities flows. At the most basic level, CMMN is used to:

 Model knowledge worker processes  Model document-centric processes  Model event-driven processes  Model unpredictable processes

There are other uses for CMMN, and it gets complex quickly. We highly encourage you to check the OMG’s CMMN specification to learn more about this modeling language. For now, we start with our BPMN process and how CMMN is connected. We can see our business process for our test release process. Using Trisotech, we identify if there is a failure with the build process, we “Examine Build Issue” using the case notation. The case notation enables us to connect our BPMN model to a specific case model to examine the build issue. Clicking on examine build issue will reveal the case model (represented with a little lock icon-a Trisotech feature).

Figure 83: Introduction to Case Management Modeling

and Notation – Examine Build Issue

By clicking on the task, we can reveal a simplistic case model with some of the notations of CMMN. The following CMMN example illustrates the case plan model, blocking process task, entry and exit criterion, manual activation, information (unstructured or structured), and lifecycle stage (a subset of CMMN). This case model describes how we examine build issues and how different failures result in different tasks that are completed. To keep it simple, we only describe three possible build issues (security, API, and UI failures). As software developers, you could see many other types of test failures. For example, your system’s interface with another provider could fail because a security certificate expired. The same interface could fail because the provider server is experiencing an outage due to misconfiguration. These are rare examples, of course, but sometimes developers fail to account for these because of their rarity. Still, when these problems happen, they can be at a


LEARNING BPMN 2.0

minimum embarrassing or, at worst, a loss of revenue or customer trust. If something can go wrong, it will so use your imagination when thinking about possible failures!

Figure 84: Examine Build Issue – A Very Basic CMMN Example

want to show you how it can be connected during BPMN modeling efforts. By clicking on the hyperlink (lock icon) for “Handle Failed Security Test,” you will see something familiar if you have been reviewing previous Engineering Lead Erin examples. The following is our previously created process, dynamically linked across models.


EXPLORING A BASIC SUBSET OF BPMN

Figure 85: From BPMN to CMMN to BPMN – Handle Failed Security Test

How our models connect across an enterprise is remarkable when you think about it. As we go from top-level processes and drill down into our sub-processes, we reveal organizations’ complex actions to deliver a product or service. We reveal the details behind the processes. In the event of our build issue example, we reveal that not all processes are sequential and can be event-driven and unpredictable, so modeling with BPMN only may be challenging. There are a couple of great resources if you are interested in CMMN. One resource is Bruce Silver’s CMMN Method and Style, which can take you on the CMMN learning journey with some great examples. The purpose here was to explain that other modeling languages are connected to BPMN that enable you to extend your models should you need to explain processes that are not sequential.

3.1.3.5.2 Expanded Subprocess

We are commonly asked, “How do we model with the expanded subprocess, and should we?” We have an interesting approach for applying the expanded subprocess. We think showing details representing the functional community and its activities is beneficial. However, expanding subprocesses adds many details and makes the model more complex. They also expand the work area or canvas size. Many of you may have experienced that expanding your canvas size usually requires a more complex model. Combining a complex-looking model with a poorly trained functional community is a confusing, hard-to-follow model. Worse yet is the hand-wave when they say, “Yeah, this looks good,” but it is not good, as they don’t want to provide the validation required to ensure we


LEARNING BPMN 2.0

have an accurate model.There is little chance for a successful process improvement initiative without an accurate model. The expanded subprocess enables task viewing within the main process flow. The following are characteristics of the expanded subprocess:

 Identified with a large, rounded rectangle  Can use a start and stop event (If you use an end event, you must also use a start event.)
 Can have floating activities  Sequence flows cannot come from the main process and cross into the expanded subprocess

(must stop at the edge of the expanded subprocess) The following example depicts our preferred way to model the expanded subprocess. We use the start and stop events to illustrate how the process begins and ends within the expanded subprocess.

Figure 86: Expanded Subprocess Example

BPMN allows for an alternative way to model expanded subprocesses by allowing start and end events to be placed on the border of the expanded subprocess. The following is an example of the same model but using this alternative approach.

Figure 87: Expanded Subprocess with Start and End Events on Border


EXPLORING A BASIC SUBSET OF BPMN

We want to advise that we avoid using this construct because it usually adds to the confusion, mainly when there is an inconsistency in its use. Therefore, we use the start and stop events within the expanded subprocess, not on the border. A question that surfaces regularly is, “What if the activities in the subprocess are done in parallel?” The expanded subprocess can be depicted with activities done in parallel. We use managing sources to illustrate how to use an expanded subprocess. The following depicts how you can model the expanded subprocess with parallel tasks. In the following example, we depict three activities that are done in parallel. Doing so has the same meaning as a parallel gateway (described previously). All three tasks are completed before the process flow continues out of the expanded subprocess and back to the parent-level process. AN IMPORTANT

NOTE: START AND STOP EVENTS AND SEQUENCE FLOWS ARE OPTIONAL.

Figure 88: Study Expanded Subprocesses and Application of Parallel Activities-Manage Sources

SURFER DAVE PRO TIP

Bro, in some instances, it makes sense to display the contents of a subprocess. The key for modelers is determining when to display expanded subprocess details versus leaving it as a collapsed subprocess.

If you are still unsure, we typically observe a few rules of thumb when modeling outside of a BPMN tool.


LEARNING BPMN 2.0

  1. If you are using Visio, it is sometimes beneficial to show the details in the expanded subprocess to avoid the paper shuffle of going through multiple models.
  2. 5+/-2 RULE: You can use an expanded subprocess with three to seven activities. The more

activities, the harder the expanded subprocess will be to display.

  1. If using the expanded subprocess adds clarity for readers, then use it.
GENERAL PRACTITIONER

WHEN TO USE AN EXPANDED SUBPROCESS EXERCISE

In my experience, one of the essential things is just to do it. Model it. Because everyone makes mistakes at first, you need to go through this process, not just by building but by analyzing your understanding.

This exercise examines the records management business process model and applies the knowledge you gained in this section on expanded subprocesses.

  1. Let’s analyze which activities could be in an expanded subprocess: a. Identify which expanded subprocess is done in parallel.
  2. Rebuild the following model using expanded subprocesses.

Figure 89: Determine How to Use Expanded Subprocesses

Exercise – Records Management

The following example depicts a possible solution for using expanded subprocesses. Since we had to do this manually for the book, we made a judgment call based on our understanding of the BPMN rules. We decided that the activities that serialize record, catalog record, upload record, and annotate record log could be children of a higher-level or parent activity manage official records.


EXPLORING A BASIC SUBSET OF BPMN

We also decided that “evaluate record” and “verify record status” could be children of a parent activity determine record status. We came to that conclusion based on the nature of the activities. Had we been using a primitive repository; we may have seen a parent-child relationship between these activities.

Figure 90: Possible Solution for Expanded Subprocess Exercise – Records Management

MEDITATING MIKE REFLECTING ON SUBPROCESSES
  1. Did you use the expanded subprocess correctly?
  2. Did you identify that it may be better to use collapsed subprocesses?
  3. Lastly, try to surface gaps in your knowledge. Jot those down. As you think about this, ask yourself, “What doesn’t make sense or what am I not quite sure about?” If you would like, share your comments on our forum page. By identifying those gaps and sharing, we can analyze better ways to make meaningful connections and fill in those gaps by revising our training material and adding follow-up discussions on our website. Sometimes using the collapsed subprocess is better for modeling. It will be case by case. Ask yourself, is it worth showing the information? Or can it be hidden? Modeling tools that allow quick access to the subprocess details will significantly aid your decision. If you have a tool that exposes them, we advise you always to hide the details, as it makes for a cleaner model.The following is how we would depict the previous example using a modeling tool.

LEARNING BPMN 2.0

Figure 91: Reflect the Use of Collapsed Subprocesses – Records Management

3.1.4 Swimlanes

We have focused primarily on modeling a basic business process with BPMN. In this section, we expand the use of pools and swimlanes. Specifically, we will describe the pool and the participant and how these relate to process control. We then provide modeling opportunities to illustrate how we can start creating more complex business process models. In BPMN, a pool represents a participant in collaboration.

 Participants can be a company.

 Participants used during collaboration can be partner roles.

 Participants are responsible for the execution of a process, meaning they control when it

starts, and when it ends and define the boundary of the process.

 Pools can depict a process (with process details) or can be depicted as a black box (no details).

In BPMN, a pool is a container for a process (sequence flows between events and activities). The process should have a name and be associated with the pool as a best practice. A pool also represents a participant in collaboration. The participant should also be named and associated with an individual pool.

 Participants represent business-to-business collaborators and can be a company (partner

entity) or a role in the company (partner roles).  Participants can be nested in a pool using lanes.  Participants are responsible for the execution of a process, meaning they control when it

starts, when it ends and define the boundary of the process.  White box pools depict participants and the sequence flows and activity (process details).  Black box pools depict a participant (business-to-business collaborator), but the process

details are hidden.


EXPLORING A BASIC SUBSET OF BPMN

Figure 92: Pool with Process Details

Figure 93: Black Box Pool – No Process Details

An alternative way to depict a black box pool is by resizing it. BPMN allows for the resizing of pools. When doing so, we are black-boxing the process, showing no details. You are probably wondering, “Why resize the black box pool?” There are many reasons, but the most obvious for us is that it reduces the size of the model canvas for process models showing collaboration.

Figure 94: Black Box Pool Resized

If you aren’t using a tool that links data and processes, we have a way for you to add value to your resized black box pool. Using MS Visio, we can link the data from our database or Excel file to display value-added details for the customer regarding touchpoints. As you begin connecting message flows to your black box pools, adding these details provides key touchpoint information. In the following example, we identify the participant and individual.

Figure 95: Expanding the Black Box Details for Resized Pools


LEARNING BPMN 2.0

Pools and lanes are used to organize the activities in a process. Lanes help identify roles, systems, and departments. Within pools, lanes help identify who is performing which specific activities.

 Lanes can represent.

 Roles (supervisor, accountant, forklift driver)  Systems  Organizations, teams, or departments

 Lanes can identify an organization, department, team, or role, whereas sublanes are usually

used to identify the role. A caveat to this: Whom you identify in lanes or sublanes will depend on the level of abstraction you are modeling (10,000-foot view versus 10-foot view)

Figure 96: Pool, Lane, and Sublane

We introduce a new term, ORCHESTRATION MODEL, to describe the process (sequence flow and activity). ORCHESTRATION MODELS specify how a single participant coordinates a set of activities. Are there any sports fans reading this book? An uncomplicated way to view an orchestration model is with a football analogy. In the following example, the quarterback calls the play, the running back


EXPLORING A BASIC SUBSET OF BPMN

runs the ball to score the touchdown, and the kicker kicks the extra point. (Of course, as a football fan, the process described is a happy-day process, in which everything goes according to plan).

PROCESS ORCHESTRATION is illustrated as follows.

 The pool assumes process control (the offensive coordinator).

 In the pool, the offense coordinator arranges for the process to begin (when a play is

received).  The pool offense coordinator assigns the roles to the players.  The pool offense coordinator starts and stops the process.  Sequence flows cannot cross the boundary of the pool.

Figure 97: Process Orchestration – Football Analogy

GENERAL PRACTITIONER

BUILDING WITH POOLS AND LANES EXERCISE

I learned more deeply when I model something project-oriented, and everyone had a stake in making it work. Let’s practice building pools and lanes modeling out a generic accounting process. Your objective is to create a business process model for an upcoming project describing process orchestration.


LEARNING BPMN 2.0

  1. The pool (accounting branch) assumes control. The accounting branch controls three roles. Use three lanes to depict the following roles. a. Invoice processor b. Accountant c. Supervisor
  2. The process begins with an invoice received message (event) by the invoice processor.
  3. The invoice processor verifies the invoice (task). a. If the invoice is valid, the process flow moves to the accountant. b. If the invoice is invalid, the process continues with the invoice processor, who annotates the discrepancy (task). The process then ends (event). c. Use an exclusive gateway to depict the data-driven decision.
  4. The accountant processes invoices that are valid.
  5. After an invoice is processed, the supervisor confirms invoice accuracy (task) as a mechanism to ensure compliance. The invoice processor then uses the confirmed invoice to file the invoice (task).
  6. The process ends after an invoice is filed (event). The application of pool and lanes was the focus of this exercise. While we used various cases during these early exercises, as many of you already know, extracting information from source documents or interview notes is not so simple. We try to incorporate various techniques to help you identify tasks, events, and gateways, as this is a crucial step when building out business process models from source documents. The following represents a possible modeling solution. The importance of this exercise is the application of process orchestration and applying pool and lane concepts to your process model. Did anyone have a different solution? You will come to find that our subjective nature will inevitably lead us to create models that are different from the next person.

EXPLORING A BASIC SUBSET OF BPMN

Figure 98: Create Accounting Branch Process Modeling

through Process Orchestration Exercise

BPMN has identified three types of business processes for orchestration: PRIVATE NON- EXECUTABLE, PRIVATE EXECUTABLE BUSINESS PROCESSES, and PUBLIC

PROCESSES. As we continue throughout this book, we discuss how to create internal (private)

business processes and public processes for collaboration. Before we continue, let’s take a moment and explain private and public business processes. Private internal business processes refer to the internal actions of an organization. The previous example of creating an accounting branch process model is an example of a PRIVATE NON- EXECUTABLE BUSINESS PROCESS. An EXECUTABLE PRIVATE BUSINESS

PROCESS would have the process details (covered in chapter 5) to well, execute the model.


LEARNING BPMN 2.0

PUBLIC BUSINESS PROCESSES refer to the interactions between two or more specific

activities being accomplished by separate participants. The key to public processes is that the activities depicted on the internal model are limited to those used to communicate with the external participant. This means that we only depict activities related to message flows for public business processes. Internal business processes will have a greater level of detail than public processes.

SURFER DAVE PRO TIP

Bro, all these tourists are taking up my waves and crossing my boundaries.

These tourists are lucky that there aren’t rules for crossing boundaries into my waves. This reminds me of something similar you want to avoid with BPMN. Crossing lane boundaries with activities and expanded subprocesses is a violation. The following example is an illustration of Surfer Dave’s Pro Tip. When modeling process orchestration and using activities or expanded subprocesses, we want to avoid crossing the boundary of the lanes and pools, as this is a violation.

Figure 99: Surfer Dave Pro Tip – Expanded Subprocess and Lane Violation


EXPLORING A BASIC SUBSET OF BPMN

MEDITATING MIKE

REFLECT ON YOUR ORGANIZATIONAL CONNECTIONS

Take a moment. Let’s reflect on your organization and the processes. Read the following questions out loud and reflect on your responses. Can you surface any of your insights into a process with more than one role (individual) contributing to the process? Do communication and interaction play a critical role in your process success? As we begin building business process models,we find that BPMN enables us to convey the knowledge of our workforce as they go about completing tasks related to a process. From that knowledge of those processes, organizations can gain a competitive advantage. Specifically, leadership can make critical decisions that affect how processes achieve or maintain a competitive advantage by shifting resources, expanding on new capabilities, or leveraging organizational knowledge. In the next section, we dive into some of the connecting objects you can use for your business process models.

3.1.5 Connecting Objects

This section will describe the notation basic subset for connecting objects. We will start by describing how to use unconditional sequence flows. Specifically, we will build on your previous knowledge of sequence flow rules. We will also expand on your current understanding of message flows and associations and illustrate how to apply these to your process models.

3.1.5.1 Sequence Flows

If you have made it this far in the book, you should be familiar with unconditional sequence flows. “Why should I be familiar,” you ask? Because you have already been applying unconditional sequence flows to your process models. While we cover conditional and default sequence flows in chapter 4, the basic rules discussed here apply to all three types of sequence flows. Let’s cover some basic sequence flow rules.

 Sequence flows describe the order of flow elements (tasks, events, and gateways) in a process.  Pools, lanes, data objects, groups, and text annotations cannot have sequence flows.

The following example depicts basic sequence flow rules for tasks, events, and gateways.


LEARNING BPMN 2.0

Figure 100: Sequence Flow Rules – Preferred Modeling Style for Events, Activities, and Gateways

Figure 101: Sequence Flow Rules – Another Style


EXPLORING A BASIC SUBSET OF BPMN

Thus far, we have provided basic modeling techniques for sequence flows. The two previous examples depict the various ways sequence flows can be used. We typically depict sequence flows from left to right, as our functional community finds them easier to follow. In the following section, we will expand on message flows and how to use them to display collaboration between processes.

3.1.5.2 Message Flows

As business process modelers, we have a few notations in the toolkit that enable us to connect information within and outside of the process. The first important concept for connecting information is the message flow.The message flow connects two or more processes. Message flows are also significant because they help identify collaboration between two or more pools. The following is an example of the message flow connecting information from a black box pool.

Figure 102: Message Flow and Collaboration

It is important to understand the rules of message flows between processes. The following are fundamental message flow rules.

 Message flows must cross pool boundaries.  Pools, catching events, throwing events, tasks, and expanded subprocesses can be modeled

with message flows.


LEARNING BPMN 2.0

 Lanes, gateways, data objects, groups, and text annotations cannot have message flows.

 BPMN version 2.02 also allows the message (envelope) to be optionally used on the

message flow when depicting collaboration. Message flows are the key to illustrating and communicating the collaboration of processes. Josh, you might say, “I only care about my processes.” Ask yourself the following: Why does my process exist? Does it operate alone? Does my process rely on any resources or provide a service to someone? The list could go on and on, but your process is a part of the greater good within the organization. Remember visualizing “the node”? Just like in the car buying process, you are connected to other organizational processes and connected to external customers, partners, etc. Using message flows, we can illustrate collaboration and the flow of information between private and public processes.

STREAMER SETH has created a video describing message flow rules.

Join Seth as he builds the following collaboration diagram highlighting the message flow connection rules.

Join at https://www.bpmpractitioners.com/videos.


The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.

Figure 103: Message Flow Rules


EXPLORING A BASIC SUBSET OF BPMN

As discussed in the previous section, the collapsed pool is an alternative way to depict collaboration and black box communication. The following model represents the message flow rules using the collapsed pool. As you will see, the same rules apply whether you are using the pool or collapsed pool.

Figure 104: Message Flow Rules Using a Black Box Pool (Resized)

ENGINEERING LEAD ERIN’S MESSAGE FLOW EXAMPLE FOR HANDLING FAILED SECURITY TESTS

An engineering team’s top priority is to deliver value as fast as possible. Some might say that speed is not as important as security, but the truth is that delivering secure, error-free software is an integral part of delivering fast. Let me explain: the most

expensive work that a team does is rework. Not only does rework mean that the team must recreate work that they already completed, but rework also means that future deliveries must wait until the rework is complete. The more rework a team must do the greater the backlog delays become. If your team has ever had to use an entire sprint to reset the backlog, or if your team has a recurring backlog dedicated to catching up, then your team is likely mired in rework. Teams should spend whatever time necessary to discover the root causes of rework! So why is speed more important than security? Because delivering secure code reduces the likelihood of rework. “Slow is smooth, and smooth is fast” as


LEARNING BPMN 2.0

the adage implies, is true for software delivery as well. When a team prioritizes security over speed, teams have different incentives. Wasteful processes like compliance activities or excessive levels of verification become the norm. Since preventing failure is impossible, these processes and activities grow out of control and teams struggle to deliver capabilities at the speed of relevancy. Instead of attempting to prevent failure, it is better to prepare for failure! Prioritizing delivery speed allows the organization to react to inevitable outages quickly and consistently. This is an excellent opportunity to look at our previous handle failed security tests and update our model using message flows and a pool. Previously, we just described receiving a message from the build process when there was an error message. In our updated model, we can use the pool to represent AWS Simple Notification System (SNS) and a message flow indicating the error message “security tested failure.” As before, that notification triggers our process. At the end of our process, we can use the message flow to represent the flow of information, in this case, “Library version [updated],” in which the message is routed via AWS’s SNS.

Figure 105: Handle Failed Security Tests – Message Flow Example

3.1.5.3 Association

We have already discussed sequence flows and message flows; the remaining notation for this section is association. Associations are used to connect information and artifacts, such as text annotations and data objects. We discuss text annotations and data objects in greater detail in the next section, but for now associations, the following are critical characteristics of associations.


EXPLORING A BASIC SUBSET OF BPMN

 They are used to connect information and artifacts with flow objects  Can have no directional arrow, a one-way arrow, or a dual arrow
 They are used to show the input or output of data objects

 Associations can also show compensation from an activity (see chapter 4 for details).

Figure 106: Association Example

In business, individuals complete various tasks. A transformation occurs during the completion of a task; a transformation occurs-the output from that individual activity or task results in creating something. BPMN enables us to depict what is being created from that hard work. For this section and the section on data objects, we will focus on a specific HR process to show the application of associations with data objects. The following example depicts a simple HR process in which employee paperwork is being verified.

Figure 107: Data Object Example – Complete New Hire Paperwork


LEARNING BPMN 2.0

BPMN also allows for data objects to be associated with the sequence flow connector. The following is another example of how to connect to sequence flows.

Figure 108: Alternative Data Object Example – Finish New Hire Paperwork

The output from the transformation of the activity is data, which can be physical or information. Data associations are used to show inputs or outputs of data objects. Associations are also helpful for displaying data inputs or information required when beginning an activity. Data associations are also used for data flows in or out of a data store object. The following example illustrates how data associations depict the flow of information to a data store object. In the next section, we will discuss the importance of data stores. It is essential to understand that associations are used to ensure that data is retrieved or updated by the activities of a process.

Figure 109: Data Associations and Connecting Data Stores


EXPLORING A BASIC SUBSET OF BPMN

Text annotations enable modelers to provide additional information for readers. Associations are also helpful for connecting artifacts. In the following example, we depict how associations are used to connect text annotations. Text annotations are covered in the next section in greater detail.

Figure 110: Text Annotation Example

While we don’t dive into compensation in this section (refer to chapter 4), it is essential to know that associations connect compensation intermediate events to activities. The following example provides a depiction of associations from compensation events.

Figure 111: Compensation Association Example

This section aimed to provide a high-level overview of associations and how you can use associations when creating business process models. The following section will apply associations with their commonly used notation: data.There you will get to create process models combining both notations.

3.1.6 Data

In this section, we focus on the use of data in BPMN. This section discusses two types: data objects and data stores. Data objects are the primary notation for modeling data within your process or subprocess, whereas data stores are a mechanism to add or retrieve information independent of your process.


LEARNING BPMN 2.0

We must add a caveat: Up until this point, we have slowly been building up the basic concepts of BPMN. In this section, we provide you with an opportunity to dive deeper into the underlying meaning of data. We hope that by slowly incorporating some of the underlying elements and attributes throughout this book, we have enabled you to use that knowledge to create syntactically correct business process models and, if you so desire, dive even deeper through your learning journey with BPMN.

3.1.6.1 Data Objects

Data is important in BPMN. Data is the key to analyzing problems, benchmarking processes, and envisioning a to-be state for your organization’s lines of business. The first data notation we will discuss is using data objects, which are used for modeling data within the boundary of your process. The following are four data objects.

Figure 112: Data Objects

The previous section used a simple HR process to discuss the data association notation. In the following example, we expand upon the data association and data object. We do this by labeling the data object W2, showing the transformation from one activity to another. After the activity Verify Employee Paperwork, the process depicts a W2 data object is created from the activity. That information is used to complete the next activity, File Tax Forms.

Figure 113: Data Object – Activity Transformation – W2


EXPLORING A BASIC SUBSET OF BPMN

If only modeling were that simple, right? Luckily, BPMN has accounted for the complexity of data with the data collection object. Unless you run a small operation, your HR department is typically busy. Orientation for new hires commonly occurs, in which an HR representative is probably handling many new employees. The following example depicts how to use the data object as a collection of many W2s. We used a notation we have not covered yet in the book: the standard looping activity notation. The standard looping activity represents that the activity continues to occur until all employee paperwork has been verified; each time it is completed, it generates a W2. To illustrate how a collection of W2s can occur, we felt it was appropriate to apply the standard looping activity. (We will dive deeper into the execution of the looping activity later in chapter 4.)

Figure 114: Data Object that is a Collection of Standard Loop Activities

BPMN allows for a visual shortcut for connecting associations and data as discussed in the data association section. In the following example, we complete our HR process using the data association connected to the sequence flow.

Figure 115: Alternative Data Object Example – W2


LEARNING BPMN 2.0

Data objects can be created, manipulated, and used during your process. The changed data is used to describe the different states of the same data object at different points in the process. BPMN recommends referencing [square brackets] when a data object state changes. For example, the data object W2 can be reused in the same diagram as activities are being executed during the process, the state of the data changes. In the following examples, we first use W2 [Submitted] to represent that the state of the data changed for the W2 that was filed with the Internal Revenue Service (IRS). The second example illustrates that the W2 [Submitted] is a data object output.

Figure 116: Data Object State Change – Adding Clarity to Your Process Model

Figure 117: Data Object State Change and Data Object Output with Trisotech


EXPLORING A BASIC SUBSET OF BPMN

SURFER DAVE PRO TIP

Surf ‘s up, Bro! I am ready to dive into these killer waves, but first, let’s look at the item definition for a data object. Before you keep reading my gnarly insights, keep in mind we are diving deep into the underlying characteristics of a data object.

All BPMN objects have underlying characteristics, and if Surfer Dave tried to explain each one, he would miss all the sweet waves. Some BPMN practitioners don’t need to dive into these concepts yet. However, if you are ready to advance your understanding, let’s begin. A notation with an item definition element means there is a list of attributes that specify the notation structure. So, if we break down the item definition for a data object, we will see that there are three attributes:

Figure 118: Surfer Dave Pro Tip – Class Object for Item Definition for Data Object

Let’s start with understanding ItemKind.The following example illustrates the two types of ItemKind for the data object. We have “physical”, and “information” represented by the nature of the item. Physical = papers, paperwork, W2, W4, or application. Information = data, email, or digital ID.


LEARNING BPMN 2.0

Figure 119: Surfer Dave Pro Tip – ItemKind Explained for Data Object

The second attribute is structureRef, which states that this element is a data object.The third attribute is the collection, which is set by a Boolean, meaning there are two possible values. Boolean values are usually defined as either true or false. So, if our data object is a “multiple collection, it would be set to true.

Figure 120: Surfer Dave Pro Tip – Boolean Value for Data Object

The following section expands our understanding of data by examining the data stores and how to model with the notations covered in these sections.

3.1.6.2 Data Store

Activities use data Stores to create, read, update, or delete (CRUD) data. The activities can retrieve information from data stores that can be warehouse databases, supply chain systems, passenger reservation systems, and so on.


EXPLORING A BASIC SUBSET OF BPMN

Figure 121: Data Store

To better understand why data stores are essential, we depict a process using the data store in the following example. In the ordering process, we identify three performers completing a set of activities. We illustrate how inventory lists are checked and how an associate buyer orders fabric. Since the order system’s database lives outside of the process, we used the data store to indicate that order information is being updated in the database. Alternatively, we also depict how information is retrieved by the manager when validating purchase orders. Could the associate buyer just hand a purchase order to the manager? Sure, but in today’s complex business processes, having systems in place to automate the simple, mundane task improves the productivity of processes. When those organizations improve the efficiencies of their processes, competitive advantage can be seen and studied.

Figure 122: Manage Textiles with a Data Store


LEARNING BPMN 2.0

GENERAL PRACTITIONER EXPERIENCE USING OPERATING PROCEDURES TO CREATE A PROCESS MODEL WITH THE DATA NOTATIONS

You have two options: You can read the latest DHS regulation, which is about 400 pages, or use the following operating procedure to create a process model using data objects. If you are like us, you will probably choose the latter. As business process modelers, we are tasked with going into organizations, examining business processes, and developing process models. Sometimes, processes are documented through operating instructions, or a non-sanctioned operating procedure created by who knows whom? In the following exercise, use your knowledge of data to create a BPMN model.

SUMMARY: You have been tasked with modeling the current process for the Passport Processing

Office. The department head stated that staff members are so busy they can’t take time to be interviewed but have an operating procedure for you to use to model out their process. Use your knowledge of data objects, events, and any other applicable notations to model the following steps.

STEPS OUTLINED IN THE OPERATING PROCEDURE

Diagram the Passport Processing Office.

  1. The process starts when the passport specialist receives a passport application. a. A passport application consists of an individual’s details (see checklist 149994).
  2. Once an application is received,the passport specialist shall evaluate the passport application.
  3. Once the application is evaluated, the passport specialist will decide if the application is valid or if there is missing information. a. If there is missing information, the passport specialist will email the applicant regarding the missing information, and the process ends (all resubmissions start over). b. If the passport application is valid, the passport specialist submits a [verified] passport application to the passport processor. c. Once the passport processor receives a [verified] passport application, the passport processor will approve the passport application. Approved applications are updated in the DHS’s passport database.
  4. The process ends after the end of the month and after approved passport applications are documented in a manual spreadsheet kept on the passport processor’s computer (which occurs the first day of the following month).

EXPLORING A BASIC SUBSET OF BPMN

The purpose here was to illustrate how you could take a page out of a procedure to identify concepts you could use for modeling with data. So, we must be honest; an operating procedure is rarely this simple. Most are full of jargon or redundant information; even worse, they can be several pages long. The following is a potential solution based on our understanding of the operating procedures.

Figure 123: Reflect on What is in Front of You

MEDITATING MIKE USING REFLECTION TO SOLVE PROBLEMS

Take a moment and look at the model. Take a few deep breaths and ask yourself whether you saw anywhere you would improve on this process. As a business analyst creating business process models, it is crucial that you examine your modeling processes. Identifying areas for improvement and discussing potential choke points in the process


LEARNING BPMN 2.0

will enable experts in the field to have their aha moment for a deeper conversation when creating that future vision of their organizational process.

3.1.7 Artifacts

This section describes the unique application of artifacts with BPMN. We describe the nature of the group icon and expand your understanding of text annotations. Artifacts are used to convey additional details about the process. BPMN identifies the text annotation and group icon. We have seen a variety of artifacts over the years. However, BPMN also enables modelers to use other artifacts. This is because artifacts have no syntax value when modeled. The key to using artifacts is that they add additional details or clarity for outside readers. We will conclude this section by discussing some of our favorite uses for the group icon and text annotation.

Figure 124: Group Icon Illustration

Text annotations enable models to provide more details or context for your business processes. “What details?” you are probably asking. If any details add value to your customer, then add them. We have found a variety of uses for text annotations. We identify two uses in the following example.

Figure 125: Text Annotation with an Attached Association

First, we identify that cargo is received in location bay 55. Why would we do this, you ask? From a process improvement perspective, identifying areas of potential choke points or problem areas enables smarter decisions to be made. In the second, we identify that hand receipts are signed via tablets. If we are having problems with the receipt of cargo for a process, identifying additional details allows for examining that activity. For instance, is it a problem with the tablets (system-specific), or is it the culprit of a lack of training and material? Documenting that tacit knowledge, along with other important information, can effectively analyze organizational processes.


EXPLORING A BASIC SUBSET OF BPMN

Figure 126: Uses for Text Annotations – In-Check Cargo Example

As modelers, you can group information important for studying process collaboration. The group icon allows for the grouping of various objects on the model.This is particularly useful when grouping activities, decision points, and events and articulating additional details for reviewers. Additionally, the group icon is beneficial because it can cross pool and lane boundaries. The following example describes how training activities occur in our online collaboration lab.

Figure 127: Application for Group Icon – Evaluate Student Learning

MEDITATING MIKE REFLECTING ON THE APPLICATION OF ARTIFACTS TO IMPROVE YOUR PROCESS MODELS

Take a moment away from reading and takefive deep,slow breaths.Takethis momentto think about your previous modeling experience and ask yourself the following.


LEARNING BPMN 2.0

Is there any other way to use these artifact concepts to further enhance the models I create? The following are a few uses for group and text annotations.

 Application of text annotations

 Completion time for activities  Identification of pain points in the process  Identify metrics significant to the process (costs, resources, etc.)  Clarification of process activities  Identification of opportunities for improvement

 Application of group icons

 Identification of locations where activities are completed  Clarifying steps in a process

JOIN STREAMER SETH as he describes a few ways you can use artifacts

to improve your business process models. Join us at www.bpmpractitioners.com/videos. The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.

Figure 128: How to Use BPMN Artifacts – Run Time for the Transportation Invoice Process

Let’s imagine trying to calculate the process runtime by capturing metrics with the assistance of text annotations: Use the previous example and calculate run time.


EXPLORING A BASIC SUBSET OF BPMN

ANSWER: Six days and thirty minutes. The parallel process will not be completed earlier than two

days. So, 2 + 2 + 2 + ½. Before we move on, let’s examine one more custom artifact and how you can use it for your modeling efforts. We discussed the pool dilemma earlier. Using a custom artifact and Visio, we can identify the processes we depict for our organization. We use a folder (or package for you Unified Modeling Language experts) to depict our process name.

Figure 129: Custom Artifact for Depicting the Organization Process without a Mode Tool


LEARNING BPMN 2.0

MEDITATING MIKE

REFLECTING ON POOR MODELING PRACTICES

After reviewing the video (Run Time for the Transportation Invoice Process) and the previous model, take a moment, and reflect. Close your eyes and take a few deep breaths. Ask yourself what the impact would be if improper notations were used in the process.

When incorrect notations are used, they can cause model validation and simulation errors. Errors in modeling result in the consumption of resources needed to fix and revalidate business process models. Additionally, as we build out business process models, members will have various levels of understanding of BPMN, so using improper notations will instill bad modeling habits for those using your models as baselines throughout your organization. It is important to note that unless new practitioners have innate skills for modeling and a deep understanding of BPMN, they may fall into the trap of learning from previously built business process models. A well-built model can be tremendous in transferring the explicit knowledge of an organizational process and proper modeling techniques. Conversely, a poorly built model can transfer bad habits to a new practitioner. How often have you used a previously developed model as a baseline or seen a concept modeled, assumed it was right, and copied the technique? What have you experienced? We can tell you from personal experience, at one time or another, we have. Let’s hear from you. Join our discussion on the forums regarding the impacts of modeling errors.

STUDYING SARA

POOLS, LANES, AND MESSAGE FLOW MULTI-CHOICE EXERCISE

I have created a multi-choice test related to pools, lanes, and message flows that will help identify the correct use of all three of these concepts.

Now that you have seen the importance of pools, lanes, and message flows, let’s test that knowledge with a multi-choice exercise. We have created an exercise to test your ability to conceptualize correctly modeled processes. Join us at: https://www.bpmpractitioners.com/bpmn-exercises


EXPLORING A BASIC SUBSET OF BPMN

3.1.8 Team Collaboration and Learning BPMN

Learning BPMN can be challenging for anyone. Early on, we have to admit that members within our organization struggle with interpreting the BPMN specification and from the various online material describing different concepts. However, that struggle taught us a valuable lesson: we could discuss our interpretation by creating a model together through collaboration. We would then use that model as a team to examine the underlining meaning in which we could challenge or validate one another’s views, usually with the BPMN specification.

CONSULTATION TEAM EXERCISE INTRODUCTION

Let’s demonstrate your ability to analyze the proper use of BPMN through the following consultation exercise. Imagine your team has been tasked with reviewing an already-developed business process model. For this exercise, as a team, evaluate the following model for BPMN:

  1. Identify discrepancies
  2. Identify potential areas for improvement
  3. Recreate the model with recommended improvements Please head to our website to download a more readable copy from our training material sectiondownload consultation service request 1. https://www.bpmpractitioners.com/bpmn-exercises

Figure 130: Consultation Service Request – An Exercise in BPMN Collaboration


LEARNING BPMN 2.0

The second thing you need to do is find a group. There are several ways to do this. If you are process modeling in an organization, seek out colleagues using or learning BPMN, or go to our forums page and post that you are looking to collaborate on this experience. Once you have your group (at least three people), share this exercise with them. After you have had time to review the model, share your recommendations with your group. We provide a possible modeling solution within the training section but refrain from peeking until you recreate the model and discuss your recommendations with your group. The following solution highlights changes in green. Did anyone find anything else? If so, join us on the forums and share your solution. Additionally, before you share, ask yourself, what would you recommend to the process owner to improve this process? For example, the organization could improve the lag time of processing orders by creating a web form and automating the process to ensure missing information did not occur for the first activity (review order). Another improvement identified is that another process could be created to handle fleet inspections annually/quarterly to ensure demand is always met.

Figure 131: Solution for Consultation Service Request – An Exercise in BPMN Collaboration

MEDITATING MIKE REFLECT ON DIFFERENT VIEWS

After completing the consultation exercise as a team, take a moment to reflect

and ask the following.


EXPLORING A BASIC SUBSET OF BPMN

  1. Did team members have any different views on the discrepancies identified?
  2. How did you reconcile differences? An essential concept for team learning and collaboration is communicating effectively. By sharing your views on why you think the notation is used a certain way or how to model a particular problem, you are exposing your level of understanding. Doing so in open dialogue can promote a greater understanding as a team. That level of understanding can be used to improve the process models being developed and facilitate a culture of team learning. As we proceed through the remaining chapters, we will provide these collaborative experiences to promote a deeper understanding and promote team learning.
3.2 New Insights to Learning and Using BPMN

In Chapter 3, we provided you with an opportunity to create knowledge through the transformation of experiences (learning process). While we are not in front of you in a classroom setting or in your workspace, we attempted to create a space for learning from our words and our insights, videos, reflections, and discussion online. We are humbled by all who have engaged in learning with us online. The dialectical balance between reflection and action is essential to us as writers. Without it, we would write and miss a critical opportunity to create a higher level of understanding. We can provide new insights into learning and using BPMN through this balance. The following are additional insights covered in this section.

  1. An introduction to cognitive overload and how it can impact the effectiveness of learning and applying BPMN within your organization.
  2. Two terminate event examples from Josh’s recent experience buying a Tesla and a new home.
  3. The power of data and how to model data objects with BPMN.
3.2.1 Cognitive Load and Avoiding the “BPMN Information” Overload

Many of you may have already experienced cognitive overload in your learning process or your organization’s business process management efforts. In this section, we dive into some of the research regarding cognitive theories and offer insight into how you can make your learning experience and your application of BPMN in an organization successful by avoiding BPMN information overload.


LEARNING BPMN 2.0

Like learning other languages, BPMN is beautiful, but it can be overwhelming to someone new. The same can be said of those reviewing your models, such as a subject matter expert, developer, project leader, or executive. Have you been in a situation where a model reviewer feigns interest or maybe nods along while presenting a process design? Conversely, when learning BPMN, have you read something in this book that was inherently difficult to understand? If you answered yes, that is natural. Our brains work at tremendous speeds, processing information to perform all sorts of complex tasks, such as learning,reasoning, problem-solving, paying attention, and decision-making [13] [14]. That process takes resources to execute our working memory functions [15]. The functions of our brain can be compared to the functions of an organization. Both, in practice, have functional architectures, which describe the relationships between specific parts that execute functions, with incoming signals transformed to produce an output [16]. When an organization begins exceeding resource limits, functions begin to break down. You may have been a part of this breakdown before. One example of this breakdown occurs when people within the organization are overworked, resulting in deficiencies in the product or service. Like an organization that exceeds its resource limits, the brain can exceed its resource limits, resulting in a performance decline.

SURFER DAVE PRO TIP

While we wait for the next set of waves to come in, let’s dive a little deeper into cognitive theory research. Skip ahead to the “tips” section if you don’t

want to explore how our brain works when learning and processing models.

Cognitive load theory is based on the research of the human cognitive architecture and how we process and store information using long-term memory (LTM) and working memory (WM) [14] [17]. CLT posits that working memory is limited in capacity and duration. We cannot hold more than 9 information elements longer than 20 seconds [18]. CLT suggests that we use cognitive schemas to organize and store knowledge by “chunking” several information elements into our long-term memory [18]. We take those “chunks” from our long-term memory and use them in our working memory during learning activities. We combine these schemas into more complex ones as we organize and store that knowledge again. The longer we learn (over time), the more we go through this process of schema construction [18]. Eventually, we reduce the load on working memory (cognitive load) through the unconscious processing of those higher-level schemas [18].


EXPLORING A BASIC SUBSET OF BPMN

The more knowledgeable you are on a topic, your working memory will likely handle new information. Simply stated, as you go through different stages depicted in the Experiential Learning Mental Model for BPMN, you are potentially reducing the cognitive load or burden on your working memory as you are becoming more proficient with different notations, modeling situations, etc., We created a very simplistic example of how the brain processes information for fun from a process perspective. This simplistic example only shows one iteration. Imagine learning BPMN over several months, where you would execute this process many times, potentially incorporating multiple information elements, lower-order schemas, and higher-level schemas. With the result of you transforming and creating knowledge from your experiences. A caveat when it comes to learning is not just about the brain. It is a whole-body effort, from sensory inputs to mental models.

Figure 132: Using BPMN to Describe the Basic Process

for the Brain’s Schema Construction

But before we continue, we just broke the cardinal rule. We attempted to model something without teaching you about the notation first. In blue, we call out the event-based gateway and conditional intermediate event. More about these are covered in Chapter 4. Event-based gateways are “event” driven, meaning the process path branching is based on events that occur after the gateway. This is different from the “data-driven” gateways we have seen thus far. So, we are attempting to convey that based on how effective our LTM is at processing information. We will either begin schema


LEARNING BPMN 2.0

construction OR, after 20 seconds, the LTM process ends because we missed that critical window for schema construction. While cognitive load theory explains the relationship between our working memory and longterm memory, new research offers a theoretical extension concerning how our brains function when performing systems analysis and design with models. Malinova and Mendling (2021) put forth a theoretical framework (CogniDia) to explain our cognitive understanding and task performance with diagrams [19]. In the simplest terms, it extends our understanding of the cognitive architecture of the brain and how individuals process information when using diagrams in computer science. The authors described four consecutive phases of cognitive processing: (1) Visual Processing (Learning), (2) Verbal Processing (Learning), (3) Semantic Processing (Learning), and (4) Task Processing (Application) [19]. In 2022, Malinova and Mendling published a research paper with experimental results identifying a few examples from each consecutive phase and the effects on cognitive processing [20]. Many of the results the authors cited have relevance to learning but also present BPMN to customers. For instance, when learning BPMN, learners exposed to a model that conveys highly specialized domains tend to struggle to learn new concepts presented when unfamiliar with that domain.

3.2.1.1 Tips for Mitigating Cognitive Overload

Cognitive overload can be a challenge when learning and applying BPMN. The amount of information needed to model with BPMN can be tricky to determine, as it relies on a two-way transaction, the modeler, and those reviewing the model. We present some tips on how you might reduce cognitive overload from two perspectives: The Learner and the Practitioner

LEARNER TIPS TO REDUCE COGNITIVE OVERLOAD
  1. Instructional design or BPMN presentation can impact an individual’s cognitive load (extrinsic-impact). Which means: a) Find training that engages multiple learning modes. It should not be about comprehending “PowerPoint” slides b) Find training material that is kept simple and builds slowly on the complexity
  2. The effectiveness of learning BPMN comes down to the number of interacting elements during the learning experience and can impact cognitive load (intrinsic) a) Don’t try to read the specification, this book, or watch every training video in one session. Start with a small number of information elements and build up your knowledge.

EXPLORING A BASIC SUBSET OF BPMN

b) Find something relatable (tacit experience) if you are a self-directed learner. Either

find training material that uses general life examples or training material related to your field. c) Focus on only one part of a business process model to build understanding in chunks

[13] d) Take short breaks between learning

  1. Learning should be balanced across experiential learning, four knowledge-creating activities
PRACTITIONER TIPS TO REDUCE COGNITIVE OVERLOAD
  1. Find and review how other practitioners develop models. Look at models that are clearly described and easy to follow; replicating readability approaches can reduce cognitive overload during review sessions. The following are some sources you may find helpful. a) Camunda has an excellent best practices resource for creating readable process models. We have found this helpful in practitioner sessions. i. https://docs.camunda.io/docs/components/best-practices/modeling/creating-

readable-process-models/

b) Business Process Incubator has a great source of already developed business process models. These can serve as a guide for recreating similar processes. One caution to newer practitioners, some models are complex. i. https://www.businessprocessincubator.com/category/type/templates/


  1. Use a simple legend explaining the basic notations when working with subject matter experts or presenting models to stakeholders to reduce cognitive overload a) In Chapter 4, we conduct a thought experiment, which could serve as a simple legend. b) Since many of the organizations we deal with have adopted BPMN, we have expanded our basic notation legend, but you may find use in this: https://www.bpmpractitionerscom/bpmn-forums-and-resources/join-the-discussion/learning-bpmn-cheat-sheets

c) Camunda has a great set of examples of BPMN you can use to build a legend. The website helps explain the notation. i. https://docs.camunda.io/docs/components/best-practices/modeling/naming-


bpmn-elements/

d) Trisotech has a great quick guide that you could also use to create a simple legend:


Engine&utm_medium=email&utm_campaign=QuickGuide


LEARNING BPMN 2.0

  1. Create visually appealing models that enable processing by stakeholders, customers, and other practitioners. a) Use matching colors for gateways, sequence flows, or activities connected. For gateways with more than one pair of branching and merging gateways, use different colors to create a “pop-out” effect [20].

Figure 133: Matching Colors for Diverging and Merging Gateway Example

b) Don’t mix and match modeling languages. BPMN is effective due to its strong

ontological expressiveness1. If you start throwing workflow modeling notations or Petri net notations on your BPMN diagram, you will have ineffective cognitive processing with customers.

3.2.2 Terminate Events

We received several questions regarding the terminate end event after the first book. We thought this would be an excellent opportunity to share two different experiences using terminate events.

3.2.2.1 Tesla Car Buying Experience

The following describes my (Josh) recent experience buying a car online. To keep to the spirit and intent, we used the terminate event to describe how any active activities would be terminated if the loan application was denied. Thankfully, it wasn’t. The process is slightly different from the previous example, as there was no negotiating the price. After purchase, there was a two-week delay as the car had to be shipped from California.

1 Ontological expressiveness means the modeling language is complete and clear and does not suffer from the four

deficiencies described in the theory by Wand and Weber [23]


EXPLORING A BASIC SUBSET OF BPMN

Figure 134: Tesla Car Buying Experience w/Terminate End Event

3.2.2.2 Home Buying Experience

Let’s just say that since the first publication of this book, I (Josh) have been busy.Terminating events enables you as a modeler to have an “exit” strategy for those parallel gateways and other modeling approaches, such as interrupting and non-interrupting boundary events. It means you can terminate the process that no longer needs to remain active if your home loan is denied because why would you want to keep looking at houses if you can’t buy them? In the following example, let’s share another process model using terminate events again within a home buying experience.

Figure 135: Home Buying and Loan Experience w/Terminate End Event

3.2.3 Data

Learning how to model with data objects can be powerful in communicating complex systems (systems thinking). It is also an essential concept at a more operational level to describe the


LEARNING BPMN 2.0

transformation of information or material through your business process activities. This section will provide an example of both to extend how you can use the data objects and data store to support your modeling activities.

STREAMER SETH has created a video describing two different processes

and how to use data objects and data stores. Using our manufacturing electric vehicle example, we will discuss the importance of process transformation and data consumed and produced within organizational processes. In the first example, we describe our HR process and use data objects and data stores. In the second part of the video, we also dive into the importance of data within the organization’s business model. Join at: https://www.bpmpractitioners.com/videos.


The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.

Figure 136: BPMN Data – How to model with Data Objects and Data Stores – HR Example


EXPLORING A BASIC SUBSET OF BPMN

Figure 137: BPMN Data – How to model with Data Objects and Data Stores – Electric Vehicle Manufacturing Example

3.3 Closing Reflections

This chapter was an introduction to critical notations used for business process modeling. We identified and applied a basic palette for you to use for business process modeling. This chapter intended to instill basic modeling practices and establish the foundational knowledge structure of a small BPMN subset. If we are successful, your transition through the following chapters will bring about a greater understanding, and evolution will occur as you move up the knowledge spiral, building your understanding of BPMN. Finally, as you reflect on your experiences so far, we encourage you to evaluate your progress related to the goals you set. This is particularly important before moving on to the next chapter.


LEARNING BPMN 2.0

Join our goal-setting group on the forums and download the BPMN Personal Mastery Goal Scale


goal-setting-1 You can answer a few questions about where you are today and how you can shape future goals. In the next chapter, we dive deeper into BPMN and what it has to offer by examining the practical application of BPMN and specific notations that will round out your modeling notation subset.


Expanding the Application of BPMN

4.1 Advanced Process Modeling with BPMN

Based


on our experiences with modeling and evidence from the research community, we will devote this chapter to expanding your knowledge of key notations and concepts relevant to advanced business process modeling with BPMN. What do we mean by “advanced”? To us, advanced implies a decomposition of our main lines of business into a level of detail that reveals the true complexity of the process. As we dive deeper into complex processes, we need the ability to model exceptions to the process flow, business rules, and so much more. The following includes some of the notations we will cover in this chapter.


LEARNING BPMN 2.0


Flow Objects

Event Subprocess


Figure 138: Notations for Advanced Process Modeling

BPMN practitioners are probably asking, “Where are the compensation tasks, cancel end events, and ad hoc subprocesses?” Don’t worry; we will cover these in this chapter.The challenge was how to get all of the types of notations in chapter 4 on one model because there are a lot. With the second edition, there are even more concepts and notations covered. Before we begin, let’s establish another set of goals.

GOAL SETTER’S CORNER

As we continue setting concise educational goals, we form positive behavior

traits through these actions. State what goals you want and then set them. If you don’t have any goals, use the goal setter template, and modify any of these examples for Chapter 4.


EXPANDING THE APPLICATION OF BPMN

4.1.1 Tokens

Hopefully, you have made it through the book with no problem. If so, great, because we are about to dive into a theoretical BPMN concept that can only be visualized with good modeling tools or a great imagination. The BPMN concept we are referring to is the token. The BPMN specification defines tokens as a theoretical concept that is used as an aid to define the behavior of a process that is being performed. Through sequence flows, tokens are passed between activities, gateways, and events. As a process starts, a token is created. The token traverses the process through the sequence flow to activities, events, and gateways. The token is consumed at the end of the process (end event). A token does not pass through a message flow. In the first example, we describe how to visualize a token. We are fortunate that the tool we use, Trisotech modeler, allows us to do process animation to follow the token.


LEARNING BPMN 2.0

Figure 139: Token Depiction Using Trisotech Modeler

As we visualize the token, we see how the token traverses the process.

Figure 140: Visualize the Token Using Trisotech Modeler

Understanding tokens can be beneficial as you start modeling-specifically as process paths diverge and become complex. Visualizing the token can help mitigate process deadlocks. The following example depicts a token after two passed through a parallel gateway. When a token arrives at the parallel gateway, two tokens emerge and traverse one path.


EXPANDING THE APPLICATION OF BPMN

Figure 141: Parallel Processes and Two Tokens with Trisotech Modeler

This application is where visualizing tokens is helpful. In this instance, the second token remains at the activity until it is completed. Remember, all active paths must synchronize for parallel gateways before the process can continue down the path. The following examples depict how the first token remains at the parallel join, waiting for the remaining active token.

Figure 142: Token Merge with Trisotech Modeler

Hopefully, tools within your organization allow you to visualize tokens. They are instrumental in examining your BPMN models’ redundancies, deadlocks, or business process modeling logic. If you


LEARNING BPMN 2.0

don’t have a snazzy tool, we hope this discussion provides some insight on how you can visualize the token.

4.1.2 Events

Up until now, we have covered some of the most used event types. For simplicity, we have broken out events into two sections. This section will expand your understanding through the practical application of the remaining event types. First, we cover events that occur during a normal process flow. After that, we dive deeper into the application of boundary events and introduce the concept of interrupting and noninterrupting events.

4.1.2.1. Conditional Events

Processes are filled with conditions based on state changes, both internally and externally.As conditions become true, they can trigger the start or influence the flow of the process. Conditional events are used to illustrate these state changes. Does anyone invest in the stock market? The following is a simple example of how to use conditional events. We tell our broker to sell if the stock decreases by 40 percent. In our model, we set a condition: our stock is sold when true. We use the intermediate conditional event to illustrate that we want no further transactions made until sale confirmation has occurred. Once that condition is true, our process continues, and we begin to evaluate stock options.

Figure 143: Illustration of Conditional Events

The following are characteristics of conditional start and intermediate events.

 Depicted as lined paper  Triggered when the condition becomes true

 It can be used to start an event subprocess


EXPANDING THE APPLICATION OF BPMN

 It can be used to start a top-level process  Conditional events can be start events, intermediate catching events, interrupting

events, and noninterrupting conditional events (cannot be end events).

GENERAL PRACTITIONER

BUILDING WITH CONDITIONAL EVENTS

For me, the most important learning experience is learning by doing. Learning

by doing is very important but make time to reflect on that action.

Let’s use conditional events and build out the following invoicing business process model. For this exercise,just recreate the invoice model. Here is our scenario. After the cargo is booked for shipment, we must check the invoice. If we find discrepancies, they must be resolved before submitting the invoice. But there is an additional condition: the shipment must be complete before submitting the invoice. Here is our logic. We use a conditional start event to start the process because when the condition cargo booking is set to true and the event occurs, the process begins. The first step is to validate billing charges. We model two paths using an exclusive gateway (we either have a discrepancy or don’t). If there are discrepancies, we update invoice details. We use a matching exclusive gateway to merge our process flows. We use a conditional intermediate event to illustrate that we must wait on the condition shipment arrival before our process continues. So, until the condition occurs, the token waits at that event. Once the condition is true, the process continues, and we can submit our invoice.

Figure 144: Recreate Invoice Model with Conditional Events


LEARNING BPMN 2.0

We think conditional events are instrumental and can be used to model many everyday situations. In fact, like many other practitioners, we use conditional events and incorporate these into our subset of commonly used modeling notations. We don’t spend too much time on conditional events in this section, as we include conditional events in many of the practical application exercises in the following sections.

4.1.2.2. Link Events

Link events allow modelers to connect the sequence flows without using a sequence flow. Linked events are useful when modeling complex processes and are used to connect two segments of a process. In the following example, we depict what we mean.

Figure 145: Explaining the Concept of Link Events

The following are the characteristics of the link event:

 Only occur in the normal process flow  Used to avoid long sequence lines  It can only be used for the same process level linking
 Use the throw and catch concept (using black and white arrows)  Great for looping process flows (annotate a looping flow for clarity)

EXPANDING THE APPLICATION OF BPMN

A common question we hear is, “Why should we use link events?” Typically, we use link events on larger process models. In that instance, we use the link event to avoid long lines across our model. A gateway or boundary event diverges the process, and the process flow steps do not occur until later.

Figure 146: Using Link Events to Avoid the Spaghetti Diagram

Another excellent use for the link event is the looping of processes. To illustrate this below, we use a generic simulation process to analyze a company’s strategic plans. We identify the analyst and simulation specialists with various tasks they complete in parallel. When the analyst requires simulation, we use the link throw event A to link to the simulation specialist with the link catch event A. When the simulation specialist completes model simulation, we use the link throw event B to link back to the analyst, depicted with the link catch event B using the link event, reducing the sequence flows crisscrossing.


LEARNING BPMN 2.0

Figure 147: Application of Looping Process Flows with Link Events – Strategic Planning Example

GENERAL PRACTITIONER THINKING OUTSIDE THE BOX

Regarding enforcement, the most relevant thing is the practical application of the notations we learn. Let’s use link events to recreate a business process model. Do you have any old BPMN models that are large? If so, attempt to update that model with link events. Once you have updated the link event, have a colleague look at the model and solicit feedback. Specifically, ask your colleague, “Does this update help the readability or look cleaner?” If you don’t have a colleague, join us for the link event forum discussion. There we can collaborate on your model. If you don’t have a previous model, that’s OK. Use the model from the team collaboration exercise in chapter 3.


EXPANDING THE APPLICATION OF BPMN

MEDITATING MIKE ANALYZING

PREVIOUS MODELS

Think about how you analyzed what you could link to the previous exercise. Did you see anything else you would improve as you reviewed your previous model? Reflecting on previous experience or, in this case, previously built models enable us to take a fresh approach to update and refine our models. The key is to make time to analyze your models.

4.1.2.3. Signal Events

Signal events are used to model messages that have no specific target. There is no specific person for the message when using a signal event. Instead, it can be viewed as a message to the masses-similar to social media notifications. Here is our scenario. An employee updates an inventory system, and the system sends out an update notice. One way to model this scenario is by using a signal event. The employee sends the signal as a

general notification. Any users of the systems will see the signal as an updated system notification.

The signal event has several characteristics.

 Does not require a source: may or may not be from a participant

 Signals can be system notifications, general alerts, flare guns, distress beacons, smoke

signals, etc.

 Displayed with a diamond  Can be start events, intermediate throw-and-catch events, boundary events, noninterrupting

boundary events, and end events  It can be used to start an event subprocess

 It can be used to start a top-level process  Can carry data  Can start multiple processes

Have you used any social media platform? We have. These are great for communicating but also can be very daunting. Luckily, the signal event seems to have been made for social media. When someone shares something on the internet, it is usually open for anyone to see unless privacy controls are employed.


LEARNING BPMN 2.0

In the following example, we illustrate how the signal start event works. The social media notification is made available, and if we see it, it starts our process. At the end of our process, if we decide to share a social media post, we make it available to the world with no specific target audience.

Figure 148: Signal Events Explained – Start and End Events

MEDITATING MIKE PREVIOUS EXPERIENCE WITH SIGNAL EVENTS

Let’s examine previous experiences from this book. Take a moment and try to recall where else you have seen signal events in the book.

Were you able to think about the early example of signal events described by Surfer Dave in chapter 3? We defined two different processes in which signal events could be used. While we did not dive into the specifics then, we will now take a moment and illustrate why signal events were used for those examples.


EXPANDING THE APPLICATION OF BPMN

Figure 149: Previous Experience with Signal Events – 20% Discount

The second example was our chores process. Here we illustrated that the washing machine completion alert affects how our process continues. We used the signal event because the washing machine alert is just a general notification. We are sure that some of those smart washers will send text or app notifications in the future.

Figure 150: Previous Experience with Signal Events – Washer Cycle Alert


LEARNING BPMN 2.0

FORUM FELICIA

SHARED INSIGHTS FOR SIGNAL EVENTS

There is a great question and answer in a forum post regarding signal events as well as, a great discussion on sending messages to multiple pools and the

As you read the responses, take a moment, and think about the nature of signal events and how you may apply it to the forum discussion: https://groups.google.com/forum/#!topic/BPMNforum/6KSf7M0qntg


While we don’t usually like to jump ahead, we provide a good exercise in the event-based gateway section, where you get to apply signal events. We focused on creating an application exercise here, primarily because we like to show the applicability of signal events in more complex process modeling exercises.

4.1.2.4. Multiple Events

In our years of process modeling, we have to confess that we have yet to find a home for these notations in our subset of regularly used notations. We will explain why from our BPMN practitioner lens after discussing some basic characteristics. We will look at multiple events and parallel multiple events in the following two sections. The multiple events have several characteristics.

 Displayed with a pentagon  Have multiple event definitions, meaning out of the multiple events listed, only one needs to

be triggered  It can be used to start an event subprocess

 It can be used to start a top-level process  Can be start events, intermediate throw and catch events, boundary events, noninterrupting

boundary events, and end events We depict our first illustration of multiple events in our high-impact projects planning process. The process can start multiple ways, either from a new requirement, a rejected plan, or when a crisis is identified. Only one of the event definitions must be met to start this process. As the process continues, we can throw back to the participant, requesting additional details or a clearance request.


EXPANDING THE APPLICATION OF BPMN

Again, multiple events can trigger or occur and move our process along. Similarly, only one event needs to be “caught” to move on to the prioritized resources task. The process ends with one event definition throwing information to a participant.

Figure 151: Multiple Event Depiction – Plan Project Example

Here is what we struggle with as BPMN practitioners with multiple events and parallel multiple events.The following model shows the same process with other participants.There are many message flows associated with the model, and that is why we struggle with multiple events and parallel multiple events. Unless you are dealing with only one participant, using multiple events, the model can confuse reviewers. Trying to show all of the participants can make the model very complex.

GENERAL PRACTITIONER

MULTIPLE EVENT PRACTICE PROBLEM

Keeping it simple allows for successful modeling sessions with subject matter experts (SMEs) who can better understand the basic notations.

Let’s apply the multiple event notation to the following problem. Your manager has just indicated an issue with expense reports and wants you to model and analyze the problem. The manager provides you with the following information.

  1. The process can begin when: a. An email is received stating there is an action item in the reporting system, or b. A phone call is received indicating that a report has been uploaded
  2. Task 1: The first action requires the accounts manager to review system information. a. If no report is displayed, then the account manager must email the system help desk b. The account managers will receive a troubleshoot detail email or a report upload notification. i. Either message requires the accounts manager to review system information (Task 1 again).

LEARNING BPMN 2.0

c. The accounts manager (Task 2) verifies report accuracy if a report is displayed.

  1. Task 3: The account managers will certify the report.
  2. The process ends after the account manager completes certifying the report. The system generates a notification indicating a record has been certified. Take a moment without looking ahead and try to model these steps using multiple events.

Figure 152: Possible Multiple Event Solution

How did your solution compare to ours? Hop on our forums and share your thoughts, specifically if you found another interesting way to model this problem using multiple events. Before we move on parallel multiple events in the next section, let us share our thoughts on multiple events. Here is what we struggle with as BPMN practitioners with multiple events and parallel multiple events. The following model shows the same process with other participants. There are many message flows associated with the model, and that is why we struggle with multiple events and parallel multiple events. Unless you are dealing with only one participant, using multiple events, the model can confuse reviewers, thus leading to cognitive overload and running the risk of slowing down a review session and the effectiveness of your effort. Trying to show all the participants can make the model very complex.


EXPANDING THE APPLICATION OF BPMN

Figure 153: Evaluating the Application of Multiple Events – A Modeler’s Critique

4.1.2.5. Parallel Multiple Events

Parallel multiple events share similar characteristics of the multiple events. Parallel multiple events are designed to have more than one event definition, meaning they can have several occurrences associated with the event. The critical difference with parallel multiple events is that all the event’s associated definitions must occur before the process flow starts or continues.


LEARNING BPMN 2.0

The parallel multiple event has several characteristics.

 Displayed with an outlined plus (these are only catching events), reminiscent of the solid

plus of a parallel gateway  Has parallel multiple event definitions, meaning all the events listed need to occur  It can be used to start an event subprocess  It can be used to start a top-level process  Can be start events, intermediate catch events, boundary events, and noninterrupting

boundary events We have found that we use parallel multiple events even less than multiple events. The main reason is that all the events listed must occur to trigger the event. We find that situation in business to be rare, particularly in today’s fast-paced environment. To illustrate how to use parallel multiple events, we depict how our process begins with buying a new car. We see car ads on TV all the time, but it is not until we see a friend pull up in the same sports car and hear them rave about it that our process to buy a car starts. Similarly, for intermediate parallel multiple events, it is not until our car, and all the car accessories are delivered that we will complete the customer survey.

Figure 154: Parallel Multiple Event Illustration – Buying a Car

In the next section, we will expand on the use of events by describing boundary events.


EXPANDING THE APPLICATION OF BPMN

4.1.3 Boundary Events and Expanding Your Application of Events

An important concept introduced in BPMN is the use of boundary events. There are two types of boundary events: interrupting and noninterrupting. This section will discuss how to use boundary events while expanding your understanding of events by introducing a couple of new event types that we have not discussed. We continue to peel away at another level of complexity within BPMN and share our experiences with some key concepts.

4.1.3.1 Interrupting Boundary Intermediate Events

Thus far, we have discussed the normal process flow of your business processes. Let’s examine the happy-day path for booking and loading cargo.

Figure 155: Happy-Day Path – Introduction to Boundary Events

What happens when the person you are interviewing says, “But sometimes when cargo is not available to load, we have to notify the customer.” Aha: an exception to the process. The exception is the key premise for boundary events, as it enables the creation of exception flows.


LEARNING BPMN 2.0

The following are characteristics of boundary events and how to model boundary events.

 Attach an intermediate event to the boundary of an activity.  Use intermediate boundary events when an exception in the process occurs.  Boundary events change the normal flow into an exception flow.

 Place an outbound sequence flow from the event. In the following example, we describe how to apply a boundary event and create an exception flow. When an exception is identified, we place the message intermediate event on the boundary of an activity. We place the sequence flow describing the exception flow, which leads to an alternate activity, notify the customer. Now let’s expand on boundary events by examining what happens when a boundary event is triggered. When cargo unavailable notification is triggered, a downstream token is generated, and the exception flow leads to the alternate step (in this case, notify the customer). The previous activity, book cargo, is canceled (never finishes) based on the value of its cancelActivity attribute (see Surfer Dave’s Pro

Tip below for more information on these attributes).


Figure 156: Boundary Event Occurrence with Trisotech Modeler – Visualize the Token


EXPANDING THE APPLICATION OF BPMN

GENERAL PRACTITIONER’S EXCEPTION FLOWS

Let’s practice using boundary events by recreating the following process model. In this example, we just want you to practice placing the message intermediate event on the boundary of the activity to create an exception flow.

Figure 157: Apply Boundary Event Concept to a Cancelled Order

SURFER DAVE PRO TIP

Bro, I have all of these exceptions for when I want to shred waves-like when there is a rare shark sighting, it’s an exception to my process, which results in me

waxing my boards.

Let’s look at the details behind these exceptions. Here we dive into the attributes of the boundary event and the activity to which it is attached. This tip is for those who want to dive into the water and examine the complexity of the underlying BPMN syntax. Let’s start with the intermediate event attached to the boundary of activity from the previous cargo example. When the condition cargo unavailable is set to true, an exception to the process flow is triggered when the event occurs. Setting conditions is helpful when modeling tools capable of applying these rules. (If you are using Visio or tools that do not have this capability, just describe the event as best as possible to describe when an exception is triggered.) For the activity, if a message, signal, timer, or conditional event is attached to the boundary, the activity may or may not be canceled. It will depend on the cancelActivity attribute and if it is defined as


LEARNING BPMN 2.0

a true value. This means that even though you have depicted an exception flow in your process, the normal, happy-day process path could continue if the boundary event is not triggered. In the previous book cargo example, how could that be possible? Well, one example is that the shipment arrives and is booked. In that instance, all the cargo arrived, and no exception occurred. We will assume that all event handlers are set to true for the remainder of the boundary event section. Any interrupting boundary events will cancel the activity, and we will examine the exception flow.

4.1.3.2 Noninterrupting Events

Noninterrupting events are unique because they do not disturb the normal process flow. Noninterrupting events can be used to start event subprocesses or be placed on the boundary of an activity. The key point is that they do not interrupt the process; instead, a new token is created in which additional steps are completed. We will cover the basics for the noninterrupting events, but the main focus of this section will be to illustrate how to use the boundary noninterrupting event. In the event subprocess section later in this chapter, we describe the noninterrupting start events in greater detail. As the name implies, noninterrupting events do not interrupt the activity. Instead, when the cancelActivity attribute is set to false, a new token is generated when the event occurs, and we see a new process path. The following model describes noninterrupting boundary events for our manufacturing process. As we begin to manufacture a product, we receive a new inventory item. In this instance, we use the noninterrupting message event attached to the boundary of the activity. A new token is generated when the message event occurs, and we see that a new sequence flow leads to another activity. The main happy-day path continues, but we have an additional step in our process because we received that message.


EXPANDING THE APPLICATION OF BPMN

Figure 158: Noninterrupting Boundary Events with Trisotech

Modeler – Basic Manufacturing Process

If you grasp and understand the interrupting boundary event, modeling with noninterrupting boundary events is a piece of cake-Noninterrupting boundary events.

 Attach a noninterrupting intermediate event to the boundary of an activity

 Use noninterrupting intermediate boundary events when the cancel activity is set to false

 Create a new token and sequence flow path from the boundary event

 Place outbound sequence flow from the event  Noninterrupting events are depicted with double dashed lines
 It can be used to start an event-subprocess  It can be used within the normal process flow

LEARNING BPMN 2.0

SURFER DAVE PRO TIP

Bro, I need to take a break after that last killer wipeout. I guess it’s a good time to discuss noninterrupting boundary events. Remember that when the event occurs, the associated task to which the event is attached continues to be

active. There are different ways how you can model the exception path.

One way to model the exception path is by merging the flow back into the process’s main flow using a parallel gateway (join).

Figure 159: Merging a Noninterrupting Boundary Event Process Path – Loan Process

However, we prefer to end the noninterrupting boundary event path with its end event if we know it does not merge back into the happy-day path, which is shown below.

Figure 160: Preferred Way to Model Noninterrupting Boundary Event Process Path – Loan Process


EXPANDING THE APPLICATION OF BPMN

MEDITATING MIKE

THINKING ABOUT HOW YOU BUILD PROCESS MODELS

After you have reviewed our two ways to model with noninterrupting boundary events and how to merge them, close your eyes and take a few slow deep breaths. Clear your mind. After your mind is clear, reflect on the following.

  1. Now that you have seen two ways to handle the sequence flow and process path for noninterrupting boundary events, do you prefer how you would model this example?
  2. Do you have an alternative way you would model? Thinking about rules and guides for process modeling will help improve your organization’s process for modeling, such as a style guide, modeling rules and guidelines, and a disciplined approach to modeling. When thought out and applied consistently, these simple things will reduce the syntactical errors in your organization’s modeling efforts.
4.1.3.3 Application of Boundary Events

While the previous section described an overview of boundary events, we saved the in-depth application for this section, mainly because we introduced several new notations that you can use for boundary events. This section will introduce you to the error, escalation, cancel, and compensation events and demonstrate how you can apply these notations to your business process models. But first, let’s examine how we can apply boundary events to some of the previous events from chapter 3.

4.1.3.3.1 Boundary Intermediate Timer Events

This section examines how to model intermediate timer events placed on the boundary of an activity. When a timer is used in a normal flow, a boundary event timer retains the same timer event definition. The difference is that when the timer event is attached to the boundary of the activity, a new process path emerges when the timer event occurs. In the following illustration, we describe how, at 2:00 p.m. daily, if the activity complete shipment documents are not completed, a new token is generated, and an exception flow leads us to identify problems.


LEARNING BPMN 2.0

Figure 161: Applying Interrupting Boundary Events for Timers

Now let’s expand on this concept further by describing how noninterrupting timer events work. Imagine the subject matter expert you are interviewing states, “Well, after two hours, we have to create an incident log record while we are identifying the problem.” Using the noninterrupting timer event enables us to create an additional path to create an incident log while we continue to identify the problem.

Figure 162: Illustrating Noninterrupting Boundary Events for Timers


EXPANDING THE APPLICATION OF BPMN

FORUM FELICIA

NONINTERRUPTING TIMER EVENT DISCUSSION

Are you feeling comfortable with timer events and applying them to the boundary of

an activity? If so, there is an excellent discussion on timer events at the link listed.

We highly recommend you read the following forum post. If you want to contribute to the body of BPMN practitioner knowledge, we encourage you to respond if you can share your insight. Communicating with other BPMN practitioners is an effective way to expand upon your understanding and share your understanding with the BPMN community: https://groups.google.com/forum/#!topic/bpmnforum/FoUGwPG1JNc

4.1.3.3.2 Boundary Intermediate Conditional Event

We often see conditional events in our business process models. This observation aligns with the research community and their findings that conditional events are a very commonly used notation out of models surveyed. Conditional events occur in a normal process flow; boundary conditional events occur when a conditional event definition occurs. To illustrate the interrupting boundary conditional event, we use the cargo loading process to show that while loading cargo, if the mission is canceled, a new token emerges that requires us to inventory cargo. The mission canceled occurrence generates a new exception flow. If the mission cancellation never occurs, our loading is complete, and we can transfer cargo ownership.

Figure 163: Applying Interrupting Boundary Events for Conditions


LEARNING BPMN 2.0

When we demonstrate the noninterrupting conditional boundary event, we see that we noticed a damaged item as we inventory the cargo. A new token is generated, and the cargo is identified and isolated (frustrated), along with the inventorying of any remaining cargo.

Figure 164: Examining Non-interrupting Boundary Events for Conditions

FORUM FELICIA

COLLABORATING ON INTERRUPTING EVENT TYPES

I need your insight! There is a forum post regarding interrupting event types. While the practitioner asks several questions, there is one interesting question regarding boundary conditional events. We highly recommend you read the following forum post: https://groups.google.com/forum/#!topic/bpmnforum/ro01DGdA6VM

We encourage you to respond if you can share your experience with modeling interrupting boundary events.


EXPANDING THE APPLICATION OF BPMN

4.1.3.3.3 Boundary Intermediate Signal Event

We expand on the signal event in this section by picking up where we left off with our obsession with social media.The application of signal events placed on the boundary of activity enables the creation of an exception flow from general notifications received during the process. As discussed in the previous section, signal events can be used for general system notifications. There is no specific target, but a general notification is sent for anyone to see. As we review our social media page in the following depiction, a new alert comes across to all users as a trending article. We illustrate that this new, shiny object or news article is an exception to our normal process, and we review the news article.

Figure 165: Applying Interrupting Boundary Vents for Signals

Let’s expand upon this model a little by introducing noninterrupting boundary events using signal notation; as we review the news article, a car ad alert displays across the article’s banner. This time, to illustrate the noninterrupting boundary signal event, we create another process path in which we review the car ad and continue to review the news article. (We can multitask.)


LEARNING BPMN 2.0

Figure 166: Analyzing Noninterrupting Boundary Events for Signals

JOIN STREAMER SETH as he describes how to apply signal events. Follow

along while he creates a model using the signal event. This will allow us to discuss how to apply signal events to the boundary of activity in greater detail. Join us at https://www.bpmpractitioners.com/videos. The videos match the figure names. You can also view our YouTube channel, Joshua Fuehrer.


Figure 167: Expanding our Understanding of Boundary Events using Signals – Video Example


EXPANDING THE APPLICATION OF BPMN

4.1.3.3.4 Compensation Events and the Compensation Task

Compensation events are unique with BPMN. We can illustrate the power of modeling by developing complex process models with compensation. The following two sections will illustrate how you can use compensation events and compensation tasks for process modeling. We will also provide some of our insightful experiences regarding these two notations. The compensation event has several characteristics.

 Used to undo a previously completed task  It can be used as an interrupting boundary event for exception flow
 It can be a start, end, or intermediate event

 Throwing compensation events refer to the process in which they are depicted. The throw event is encapsulated within the process and throws to the catch boundary interrupting compensation event (see the following model).  Use associations (not sequence flows) to attach compensation events attached to the

boundary of activity to connect compensation tasks. The compensation activity has several characteristics.

 It can be a task or subprocess  Shown with a two-triangle marker pointing to the left

 Undoes the previous task Let’s start with the basic concept of compensation events and how to model them. The following model illustrates the basics for compensation events and compensation tasks. The boundary event compensation catch is only triggered by a throw later in the process. When the compensation event is triggered, we use an association to connect the compensation task, reversing the attached activity. In this case, it reverses the effects of the process bonus task-as if the activity transformation for “process bonus” did not occur.


LEARNING BPMN 2.0

Figure 168: Understanding Compensation Events and Tasks

JOIN STREAMER SETH as he builds a business process model using

compensation, since compensations can be daunting to newer BPMN practitioners. Here, the yearly performance process is modeled out.

Join us at https://www.bpmpractitioners.com/videos.


The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.


EXPANDING THE APPLICATION OF BPMN

Figure 169: Examining the Complexity of Compensation – Yearly Performance Process

To illustrate all these moving parts and the concept of compensation events and activities, we depict the human resources department’s yearly pay raise or bonus process. Typically, performance reports are used to determine employee incentives. In the example, we determine an employee can receive two possible incentives. As the process steps are completed, we ignore the intermediate compensation boundary events attached to the process pay raise and the process bonus user tasks. We do so because compensation events attached to the boundary are ignored until the throwing compensation event occurs (if ever). When the task “validate monetary award” is being completed, an exception is triggered if the condition employee violation occurs, which leads to the compensation throwing event that triggers a payment cancellation. The resulting throw compensation event goes to the catch boundary compensation


LEARNING BPMN 2.0

event. We use the association to connect to the boundary event and compensation task (in this instance, cancel bonus or cancel pay raise). The compensation task then reverses the previous activities’ effect.

4.1.3.3.5 Error Events

This section discusses error events and how you can model the error event for your business processes. From a practitioner standpoint, we have observed that the error event can be misunderstood and misused. However, before we dive into its subtlety, let’s discuss some of the error event’s characteristics-intermediate error events.

 Intermediate error events can only be placed on the boundary of the activity  It can be used to end subprocesses
 Always interrupt the activity  Are used to signify a critical problem during the process of completing an activity
 It can be used to start an event subprocess

Figure 170: Examining Error Events for a Reverse Logistics Operations Center

GENERAL PRACTITIONER APPLICATION OF ERROR EVENTS EXPERIENCE

Watch out! Errors will occur through overuse of the error notation.

Let’s explore error events further by building out a phase of a scenario planning process.The following example depicts the project preparation stage of scenario planning. On the boundary of the first activity, “define scenario scope,” we place the error event to identify a discrepancy between what we have and what is needed to complete the task. We use the error event


EXPANDING THE APPLICATION OF BPMN

because some critical piece of information is missing, and the task cannot be completed. We are


signifying through the error event that this is not a common occurrence but a critical problem, mainly when stakeholders’ needs/requirements are not clearly expressed. Now go ahead and practice applying an error event to the following example.

Figure 171: Application of Error Events for Scenario Planning Project Preparation

SURFER DAVE PRO TIP

Whoa. The use of error events is unique in that error events can have an error code, or no error code assigned to the parent process. Remember that error codes only apply if you use a modeling tool that allows you to capture the error, error code, item definition, item nature, and definition type.

The importance of using error events correctly cannot be overstated. We have seen countless models cluttered with error events. It’s not to say that all were right or wrong: error events should be reserved for cases when there is a serious error in the process, not for any ordinary condition.

JOIN STREAMER SETH as he demonstrates how to apply error events

within an expanded subprocess. Join us at www.bpmpractitioners.com/videos. The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.


LEARNING BPMN 2.0

Figure 172: Using Error Events for System Bug Reporting – Video Example

FORUM FELICIA LEVERAGING BPMN TEMPLATES AND EXPERT EXAMPLES

There are different resources available to us BPMN practitioners. Did you know OMG has a BPMN forum page that lists process modeling templates?”

We are a huge fan of what OMG, and its community members are doing. OMG has a great website full of templates provided by other BPMN practitioners. If you want to expand your understanding of how to use error events, the BPMN group under their templates section has an Amazon fulfillment process that does a great job illustrating error events in action: https://www.businessprocessincubator.


com/content/amazon-fulfillment/

ENGINEERING LEAD ERIN’S SCAN CARGO –

BOUNDARY EVENT EXAMPLE

The importance of cross-functional teams cannot be overstated. Effective software delivery teams understand that they are an integral part of the overall business and that they do not work alone.

For example, one of the errors that the team checks for during Scan Cargo is whether the storage bin is empty when the inventory tracking system was expecting it to contain inventory. The CargoStorageEmptyError case must do more than simply handle the error eloquently for the


EXPANDING THE APPLICATION OF BPMN

software delivery team. An empty storage bin that isn’t supposed to be empty is a critical error for the entire system! One of the ramifications could be that customers lose trust in the ordering system entirely. Loyal customers may initiate a phone call to the customer service team to inquire about inventory before making an order, and casual customers might choose to shop elsewhere. Both scenarios would impact the business. The organization must understand why the inventory numbers were off. Did the supplier send the wrong number of items and did our in-processing verification process not detect it? Is there theft in the warehouse? Did the inventory tracking software not update the quantity when another item was shipped out? Does the warehouse not have a way for employees to report when an item was removed from inventory because of breakage? Whenever CargoStorageEmptyError is triggered, a message must alert stakeholders of this so that an audit can uncover the problem. Can you think of other scenarios that would cause wrong inventory numbers? We use our previous cargo picking example and code to explain the BPMN boundary event concept. We can illustrate what “needs” to be engineered by connecting to boundary and message events. We reengineered our scan cargo activity in section 3.1.3.3 (service tasks). It involved updating our process model based on our HFE team’s inputs. The main difference is that we created a subprocess describing the steps of scan cargo. We refrained from showing this in section 3.1.3.3 as we had not covered the sub-process notation in detail. The following is the updated model for the service task example.

Figure 173: Updated Model for Service Task Example

Opening our subprocess reveals the steps of the engineered solution,which automated the bottleneck for scanning cargo. Identifying the atomic level steps as part of our reengineered solution was critical to solving the problem. BPMN enabled us to create this decomposition with those new tasks to explain the complexity to the different teams (BPM, HFE, Engineering). The reengineered process consists of four “automated” service tasks (Remove Cargo, Complete Cargo Identification, Verify Cargo, and Transmit Scan Completion Signal). It also identified possible failures at each stage with


LEARNING BPMN 2.0

our reengineered solution. For simplicity, we will only identify the possible failures for the first task: Remove Cargo. We can present possible failures using the boundary error event (interrupting). Using Trisotech’s animation feature, we see the token (a theoretical concept) and the flow from the error event attached to the boundary of the remove cargo task when an issue is detected.

Figure 174: Scan Cargo – From Model to Code

In our previous code example, we just stated “do something” as a placeholder for the code. However, this presents an opportunity to extend our previous learning experience from model to code and how boundary events can be a gold mine for engineering teams to ensure they do not overdevelop functionality in a proof of concept. The following is an example of how we use the model to develop the scaffolding code for when a cargo storage bin is empty and what needs to occur.


EXPANDING THE APPLICATION OF BPMN

It is that simple. If other notifications or actions must occur in the future, teams can work with functional owners to write the user stories. The teams then can return to this location and abstract the new functionality.

4.1.3.3.6 Cancel Events

Cancel events are a unique notation as they are used in transaction subprocesses. Cancel events are used to end the transaction subprocess because activity within the transaction subprocess could not be completed. The cancel event has several characteristics.

 Can be intermediate boundary events on transaction subprocesses or end events within a

transaction subprocess  Interrupts the activity it’s attached to; the cancelActivity is always true  It can only be used for transaction subprocesses (see Transaction Subprocess section)  This can lead to compensation of the activities in the transaction subprocess

Figure 175: Transaction Subprocess

We will dive deeper into transaction subprocesses later in this chapter.


LEARNING BPMN 2.0

The following example illustrates three activities within our warehouse optimization transaction subprocess. We use the error event (indicating a severe problem) with the activity determining picking strategy-in this case, we don’t have a picking strategy available. That error triggers a new process flow, which cancels the transaction subprocess. We didn’t use compensation in this instance as we did not need to roll back the actions taken. We will cover how the cancel event is applied to the following supply chain management process. We will dive into rolling back process activities in the transaction subprocess section.

Figure 176: Application of Cancel Events on the Parent and Child Process – Supply Chain Management Optimization

The cancellation event results in a “throw” to the parent process. We can then use an intermediate boundary cancel event to cancel the transaction subprocess and generate a sequence flow to the complete

yard management preparation collapsed subprocess.


EXPANDING THE APPLICATION OF BPMN

The yard management folks didn’t have a strategy available for us to complete our process. Typically, the cross-flow of information would occur in your organization, but even the most minor event that can have a considerable impact is accounted for using cancel events. That is where the power for modeling with cancel events resides. We will get into the details of the transaction subprocess and why this allows us as modelers to capture a minor event that could significantly impact our process later in this chapter.

FORUM FELICIA

GROUP DISCUSSION ON CANCEL EVENTS

Join the following BPMN forum group discussion on cancel events if you want to see how other BPMN practitioners interact regarding complex notations.

There is an excellent discussion in which practitioners like yourself discuss the application of cancel events. https://groups.google.com/forum/#!topic/BPMNforum/UIEasgrpfY4


MEDITATING MIKE COLLABORATING WITH BPMN PRACTITIONERS

After reading the forum discussion, take a moment, and think about how you would answer the practitioner’s question? From your experience so far, does it make sense to use a cancel event in the instance described? Additionally, what follow-up questions would you ask the practitioner if you could? With BPMN and building process models, taking a moment to think about what is being said during interview sessions enables us to ask clarifying questions that will determine what type of event is occurring and a proper way to depict it on the model. For us, we would ask what type of subprocess they are trying to depict. We would also ask about the nature of the event they are trying to describe.

4.1.3.3.7 Escalation Events

The escalation event is used to elevate essential information to parent-level processes. It escalates a problem or issue without disrupting the subprocess. When applied, the escalation shows where the event could occur in the process. The BPMN language allows you to surface a business problem that occurs at a lower level but needs to be escalated to the parent process.


LEARNING BPMN 2.0

The escalation event has several characteristics.

 Can be start, intermediate, and end events  Can be noninterrupting start and noninterrupting intermediate events
 Employs throw-and-catch concept  Can have the cancelActivity attribute, but it is not the default
 It can be used to start an event subprocess  Requires word matching for the throw and catch: If I use one word on the throw black

escalation event, I have to use the same word for the catch white escalation event.

We often leverage enterprise architecture with BPM initiatives. The following model depicts the high-level processes for an enterprise architecture project. We use the escalation noninterrupting boundary event to depict that a catch is received, notifying us of a delay in our architecture delivery. A second sequence flow is generated when the escalating event is triggered, and we brief our customers regarding the delay. The processes continue as usual; nothing is canceled or terminated. Executives are just made aware of a delay in the schedule.

Figure 177: Identifying Escalation Boundary Events

for Enterprise Architecture Processes

As we drill down into the subprocess for Develop Architecture, we will see the steps needed for developing an architecture. However, if the subject matter experts are unavailable, we can use the escalation throw event to depict a delay in architecture delivery. Some modelers would use a timer event to model this situation. While the word delay implies the concept of time, it is not the proper modeling construct for this situation. The escalation event throws that delay notification to the parent process to trigger an exception flow. The timer event would not do the throw. The key is


EXPANDING THE APPLICATION OF BPMN

that both the subprocess and the parent process continue. So, as the escalation event occurs in the subprocess, an exception flow leads to another activity in the parent process.

Figure 178: Understand the Escalation Events and the Connection to the Parent Process – Develop Architecture

MEDITATING MIKE REFLECTING ON YOUR ORGANIZATION’S INFLUENCE ON THE NOTATION PATTERNS YOU USE

Are you resigned that you will break some of the BPMN rules? Are you striving for readability and translatability to a layperson’s perspective or syntactically correct models?

Think about how your organization influences the notations you use. How do you strive for syntactically correct models and proper modeling techniques for some of these complex notations?


LEARNING BPMN 2.0

Can you maintain a healthy balance of notations that won’t overwhelm average readers? Let’s illustrate how you can apply escalation events in a way you can reach the layperson.

GENERAL PRACTITIONER

ESCALATING YOUR UNDERSTANDING OF BPMN

Don’t let the concept of escalation prohibit you from modeling syntactically

correct models. When applied effectively, it can be taught to anyone. Online shopping (e-commerce) is all the rage.

We particularly love the quick delivery of goods. But who has ordered something with a two-day delivery only to receive a delay notification? It’s pretty standard for people living in the Midwest. Let’s take a moment and model this situation, applying escalation events to the shipping process. Let’s start by building out the following Transport Cargo subprocess details for when a customer orders something online. Recreate the following model.

Figure 179: Applying Escalation Events to the Delivery Process

Look at the following tactical process describing an organization’s unique steps and apply the escalation event for one-day delay notification. Specifically, apply the escalation event and describe the following steps:

  1. If a delay occurs, additional steps are taken to notify customers of a delay. a. The tracking systems generate an automated notification updating the delivery status sent to the customer via the preferred contact method.
  2. After all monthly status reports are collected, management executes a new set of activities for evaluating shipping delays. We apply these steps to the following tactical process based on your understanding of escalation events.

EXPANDING THE APPLICATION OF BPMN

Figure 180: Process Model for Escalation Exercise

The following shows how we modeled the escalation exercise. We used the noninterrupting escalation boundary event with the one-day delay notification. We used the service task to illustrate how the system updates the delivery status for a delay. Additionally, for context, we added a customer pool, demonstrating how an alert goes out for the updated delivery notification. We apply the conditional event to illustrate that monthly status reports are collected so that we can begin to evaluate shipping delays. We depict “evaluate shipping delays” as a collapsed subprocess because a new set of activities begins with our previous criteria. Since we did not define the steps, we used the collapsed subprocess to hide those process details.

Figure 181: A Solution for the Escalation Exercise


LEARNING BPMN 2.0

The timer event sounds tempting to apply when you hear monthly, right? We did not use the timer event because of the qualifier monthly status report collection. Even though it is the end of the month or the beginning of a new month, our process waits until the event monthly status report collection occurs for monthly reports. In that instance, the conditional event was appropriate.

Hopefully, we have expanded your understanding of events and boundary events throughout this section. More importantly, we hope that your application of these concepts has made a connection with you as you have built and applied these concepts. As with many of these chapters, we struggled to determine what to include and exclude regarding exercises and examples. We had so many real-world experiences when we finished this book that it was impossible to include them all. For instance, we didn’t include examples of multiple and parallel multiple events used on the boundary of an activity. However, for those who want more, you are in luck! Join us at our website as we provide additional training material and examples that will continue your learning experience with BPMN.

4.1.4 Advanced Gateways and Sequence Flows

Are you ready to start examining the complexity of BPMN? If you have made it this far, we think you are. We have pulled back several layers of BPMN through an examination of events and the token concept. Now, in this section, we will examine the remaining sequence flows and gateways. You might be asking yourself, why didn’t they just teach all of the gateways in chapter 3? To be honest, it’s a fair question. Our approach to learning BPMN is that the further you get in modeling complex organizational processes, the more complex the set of notations you’ll need. We believe it is unfair to bombard you with notations you may not need if you are just learning the basic modeling technique. Had we included every gateway at the start, chapter 3 would have been too long, and the new BPMN modeler could have felt overwhelmed. Worse, a new BPMN modeler could have taken an advanced notation and attempted to apply it when it wasn’t required. Let’s discuss inclusive gateways and conditional and default sequence flow notations.

4.1.4.1 Inclusive Gateways and Conditional and Default Sequence Flows

In this section, we discuss the inclusive gateway or the OR gateway. (We will get into the OR shortly.) We will explain the inclusive gateway and provide some key points to help understand how


EXPANDING THE APPLICATION OF BPMN

to model with this gateway. Then we will dive into the conditional and default sequence flows. As practitioners, we felt saving these two sequence flows for the inclusive gateway makes sense, and after our discussion, we hope it makes sense to you. The inclusive gateway has several characteristics.

 Displayed as a gateway with an O in the middle  The process path is taken; this means at least one (or multiple) paths can be taken.
 Data-driven gateway

We will use a simple model to explain the inclusive gateway. The inclusive gateway allows you to model a data-driven decision for one or more paths. In the following model, we evaluate our training material. Depending on the need, we determine whether to update video resources, PowerPoint resources, our lecture transcripts, or a combination of the three. The inclusive gateway allows us to model taking one or more of these paths. We could take one path, two, or three. It depends on the expressions we define as the process path. The inclusive gateways give us that modeling power. But with great power comes the possibility of great complexity.

Figure 182: Explaining the OR for Inclusive Gateways – Manage Training Material


LEARNING BPMN 2.0

As with the parallel and exclusive gateway, the inclusive gateway has merging or synchronizing characteristics. The synchronizing characteristics can be depicted using Trisotech modeler in the following two models. The first illustration shows the first token arriving at the synchronizing inclusive gateway. In this case, we want to model waiting for the second token that is still active.

Figure 183: Synchronizing Inclusive Gateways with Trisotech Modeler – Manage Training Material

After all expected sequence flows arrive, the inclusive gateway synchronizes our process, and we can

move to the next activity and schedule training sessions.

Figure 184: Synchronizing Inclusive Gateways with Trisotech Modeler


EXPANDING THE APPLICATION OF BPMN

GENERAL PRACTITIONER

EXPERIENCE TURNING INTERVIEW NOTES INTO A BUSINESS PROCESS MODEL USING INCLUSIVE GATEWAYS

Build, build, build with those inclusive gateways, or your model will never

get done.

Conducting interviews is an excellent way of capturing the process from the subject matter expert’s (SME) perspective. While we have found that we love to model on the spot with experts, at times, we send an interview questionnaire before the modeling session to get some basic information. Use the following interview response example to build a business process model using inclusive gateways. The following is an excerpt from an interview about transportation movements. For readability, we highlighted key information, like what we would do with any interview response. “Our process begins with a receipt of an order for movement. The planner reviews the order and determines the movement requirement. Depending on the determination, the planner has some options. The planner can select an air carrier, or select a rail carrier, or select a truck carrier, or a combination of these options depending on the shipment. While selecting the mode, the planner verifies transportation account codes in parallel. After the mode selection has been made and the account codes have been verified, the planner books selected options. The process ends with a message being sent to the selected carriers.” Before you move any further or look at the possible solution depicted in the following model, take a moment and try to build a model based on these interview notes. Often, we must rely on our understanding of SME details to create that initial model. After you have completed your model, take a look at our solution. How close were you to our modeling? How was your model different? Join us on our forums to share and discuss.


LEARNING BPMN 2.0

Figure 185: Turning Interview Notes into a Business Process Model Using Inclusive Gateways – Possible Solution

FORUM FELICIA

MULTIPLE GATEWAY TYPE DISCUSSION

Want to help contribute to the BPMN community? Can you help facilitate the transfer of knowledge? Forum groups and discussion boards with questions provide us with that opportunity.

There was a great unanswered question regarding using multiple exclusive gateways following

inclusive gateways when writing this book. Can you answer the BPMN practitioners’ question? Take a moment and review the question at hand. https://groups.google.com/forum/#!topic/BPMNforum/mOpUhv8AplE


Now that you have reflected on the forum question and shed light on modeling challenges with gateways let’s expand on the application of the inclusive gateway by introducing the default sequence flow and conditional sequence flow.

4.1.4.1.1 Default Sequence Flows and Conditional Sequence Flows

We have only been using the normal flow or uncontrolled sequence flow notation until this point while modeling our processes. This section describes the default sequence flow and conditional sequence flow.

Figure 186: Default and Conditional Sequence Flow


EXPANDING THE APPLICATION OF BPMN

The default sequence flow has several characteristics.

 Sequence flow depicted with a slash at the beginning of the sequence flow.

 Default means the path will be taken if the other sequence flow conditions are set to false

 Used for data-driven exclusive or inclusive gateways

 Activities and complex gateways can be the source that defines a default sequence flow  It can be used to show the default process flow  It can be used when multiple sequence flows are directly out of activity (no gateway)

Figure 187: Default Sequence Flow using Trisotech Modeler

The conditional sequence flow must meet specific criteria to activate the sequence flow.The conditional sequence flow has several characteristics.

 Depicted with a diamond at the beginning of the sequence flow

 Used to depict conditional expressions, meaning we can use conditional sequence flows in

place of inclusive gateways


LEARNING BPMN 2.0

Figure 188: Conditional Sequence Flow Example – An Alternative to Inclusive Gateways

We illustrate how one can get stuck in the following model. In this case, we depicted each sequence flow as conditional. If none of the conditions were true, the process would be stuck. Keep in mind that you use default and conditional sequence flows in combination. Using the default sequence flow would prevent your process from being stuck.

Figure 189: Avoid Getting Stuck with Conditional Sequence Flows


EXPANDING THE APPLICATION OF BPMN

FORUM FELICIA

ADDING TO THE BODY OF BPMN PRACTITIONER KNOWLEDGE

There is a great discussion happening right now regarding sequence flows and gateways.

As you read the various BPMN practitioners’ comments, try to add something based on your experience and perspective of sequence flows:

https://groups.google.com/forum/#!topic/BPMNforum/ozGF3-q0uFQ


SURFER DAVE PRO TIP

I hope my surfer jargon has not confused my BPMN expressions. Expressions come in two forms. Hopefully, my expressions based on natural-language text are understandable.

That’s right: expressions come in two forms. The first form is underspecified expressions, meaning they are not executable and are written in a natural-language text. We only use natural-language text during this book for our sequence flow expressions. The second expression form is executable expressions or formal expressions. We need an executable language specified in a Uniform Resource Identifier format to execute formal expressions. Join us on the forums to see our examples of executable formal expressions.

4.1.4.2 Event-Based Gateways

Event-based gateways enable us to model multiple sequence flows based on events that can occur. We have discussed the gateways based mainly on data-driven decisions associated with the activity before the gateways. In this section, we describe the event-based gateway and how a future event determines the flow of the process. The event-based gateway has several characteristics.

 Represented by a diamond and double circle (think multiple intermediate events inside a

gateway)  The process path branching is based on events that occur after the gateway.  A specific event that occurs decides the path taken.


LEARNING BPMN 2.0

 Two or more outbound sequence flows required  Can only use message, signal, timer, conditional, and multiple after an event-based gateway
 Can use receive tasks (discussed in detail in the following section)

So, let’s teach the event-based gateway concept through the development and explanation of the following model.

Figure 190: Teaching the Event-Based Gateway

Let’s dive a little deeper into how to apply the event-based gateway. We have a purchasing department responsible for procuring material within our enterprise operations. It provides an opportunity to show the power of the event-based gateway through the purchasing process. Like most of the processes used in these examples, we simplify it. The following model depicts the application of the event-based gateway.


EXPANDING THE APPLICATION OF BPMN

Figure 191: Analyzing the Event-Based Gateway for the Ordering Process

The purchasing department creates purchase orders (supplies, material, equipment, etc.) for a department in our enterprise. We use the event-based gateway to show that the order should be delivered, but we contact the supplier after three days if it is not received. However, if the order is delivered within three days, we take the top path. Regardless of which path is taken, the order must be received before we can administer the purchase order.

GENERAL PRACTITIONER APPLICATION OF EVENT-BASED GATEWAYS

Remember, it’s all about the events after the event-based gateway. Those

events decide the process path taken based on which one occurs first.

All right. Now that we have described how to model with event-based gateways, let’s create a BPMN model. We use the event-based gateway to depict how two events can determine the next steps in our process. In the following example, we depict a simple shopping process. We depict collaboration with an online retailer using the message catch and throw for starting and ending the process. When the online retailer updates inventory, we can buy more items. We use the signal event to illustrate that we will only buy more items if we see an update from the online retailer. But if we reach our purchase limit of$500 before new items are seen, we purchase the items and complete our process.


LEARNING BPMN 2.0

The key takeaway is that the first conditional event controls the process path we take. The path taken is not based on data-driven decisions from previous steps; instead, it is driven by future events. That is the beauty of event-based gateways.

Figure 192: Applying Event-Based Gateways for Online Shopping

STREAMER SETH has created a video to improve your understanding

of event-based gateways. Join Seth as he describes the application of eventbased gateways: specifically, how to use event-based gateways as a mechanism for modeling complex processes and how you can apply event-based gateways to model out your complex processes. Join us at https://www.bpmpractitioners.com/videos. The videos match the figure name. You can


also view our YouTube channel, Joshua Fuehrer.


EXPANDING THE APPLICATION OF BPMN

Figure 193: Application of Event-Based Gateways for

Selecting Carriers for Transportation

FORUM FELICIA MULTIPLE EXCLUSIVE EVENTS DISCUSSION

What’s that, you say? Are you ready to take your understanding of eventbased gateways further?

Join the conversation on the application of event-based gateways. Here there is discussion on how to use timer events for an event-based gateway: https://groups.google.com/forum/#!topic/BPMNforum/ZLywIozxtrg


an interesting


LEARNING BPMN 2.0

MEDITATING MIKE TEAM REFLECTION FOR EVENT-BASED GATEWAYS

A collective debate within a team construct helps many people understand a notation more. In that environment, everyone can share insights they did not have that other teammate may have and vice versa.

Do you have the concept of the event-based gateway mastered, or are there things you don’t fully understand? We highly encourage you to take the time to discuss it with your team. Taking time to reflect as a team can help improve your understanding of a notation. The following is a narrative reflection exercise that you can apply to any experience. For this reflection exercise, focus on eventbased gateways.

  1. Reflect on a process modeling learning experience in which you felt satisfied.
  2. Answer the following questions (write or type) in a narrative format. a. What experiences did you value while learning the specific notation? b. Describe your learning experience. Specifically, please describe anything that made it easier to learn the specific notation.
  3. After you have responded, take a moment to examine your experience: How can you share those learning experiences with your colleagues? Sharing those reflections and coming to a better understanding will improve the application of event-based gateways for your process models. Talking about what worked for you will enable others to see a new perspective on learning a specific notation. Simply put, sharing your reflection from personal experience helps inform how you can apply BPMN. If you don’t have a team to share, that’s OK. You can join our forum discussion and share.
4.1.4.3 Process Instantiation with Event-Based and Parallel Gateways

Only two gateways can be used to start a process: the event-based instantiation gateway and the parallel instantiation gateway. In this section, we describe both. We saved these gateways for last because both have exceptions to the earlier stated rules. We said gateways must have an inbound sequence flow to keep things simple earlier on. This is typically true; the exception is with process instantiation using event-based or parallel gateways, as there are no inbound sequence flows. We hope that you have modeled enough examples and have grasped the basic rules for sequence flows by now.


EXPANDING THE APPLICATION OF BPMN

Figure 194: Depiction of Process Instantiation Gateways – Event-Based and Parallel

4.1.4.3.1 Instantiating the Process with Event-Based Gateways

Like the event-based gateways described in the previous section, the instantiation of a process with an event-based gateway has similar characteristics. The main difference is that the gateway is used to start a process based on the events after the gateway. The process instantiation event-based gateway has several characteristics.

 Process path branching is based on the events that occur  Specific event governs the path taken

 Represented by a diamond and one circle (think multiple start event) inside a gateway  Two or more outbound sequence flows required  No inbound sequence flow (treat it like a start event)  Can only use message, signal, timer, conditional, and multiple after an event-based gateway

Let’s depict how we can use the event-based gateway to instantiate a process. The following example illustrates the event-based gateway instantiating a process.


LEARNING BPMN 2.0

Figure 195: Teaching Instantiation – Event-Based Gateways

If we were able to make a connection based on your previous experiences with event-based gateways, the aha moment should have occurred. If, after reading this text and looking at the illustration for five minutes, it doesn’t quite make the connection for you, go to the following video link. There we describe process instantiation with event-based gateways a bit further. Want to see event-based gateways in action for starting a process?

JOIN STREAMER SETH as he explains how to model with event-based

gateways and how you can use them to start your process. Join us at https://www.bpmpractitioners.com/videos.


The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.


EXPANDING THE APPLICATION OF BPMN

Figure 196: Process Instantiation with Event-Based Gateways

4.1.4.3.2 Instantiating the Process with Parallel Gateways

Process instantiation can also be depicted using parallel gateways. The main difference between the parallel gateway and event-based gateway when instantiating a process is that all events listed after the parallel gateway must occur. The process instantiation parallel gateway has several characteristics.

 The first event triggered instantiates the process.  Other events listed wait to be triggered before the normal process is completed.  Can only use message, signal, timer, conditional, and multiple after an instantiation parallel

gateway  All events listed after the parallel gateway instantiation must occur (at some point).


LEARNING BPMN 2.0

Figure 197: Examining Process Instantiation with Parallel Gateways

To help illustrate process instantiation, we will use the Trisotech modeler to show the “manage financial records” process. The following model illustrates how to process instantiation occurs. When we receive payment notification, the process begins. You will notice that the timer event waits until 7:00 a.m. daily. Not until 7:00 a.m. do we log in and take the other process path. In the meantime, our system is processing payments, validating charges, and filing expense reports.


EXPANDING THE APPLICATION OF BPMN

Figure 198: Process Instantiation with Parallel Gateway – Manage Financial Records

Like the parallel join, the first token waits until the second token arrives at the synchronizing parallel gateway before moving on to audit records.

Figure 199: Merging a Process Instantiation with Parallel Gateway – Manage Financial Records

GENERAL PRACTITIONER EXPERIENCE EVALUATING PROCESS BEHAVIOR FOR INSTANTIATING YOUR PROCESS WITH PARALLEL GATEWAYS

Going and applying what we just heard is the most significant step for learning, and it is the way we get the most out of the experience. We should have someone review our model and provide meaningful feedback

to validate our understanding. That is very important.


LEARNING BPMN 2.0

Validation is crucial to BPMN, not only from a process model perspective but from a learning perspective. In the following stock management process exercise, let’s explore process instantiation using parallel gateways.

2ND EDITION UPDATE: Validation also can occur with modeling tools; we discussed this in

chapter 5 but thought it was worth mentioning here. We have experience using validation features in tools such as Camunda, Trisotech, Signavio, ITESOFT, Sparx, and MagicDraw. All of these can help validate our application and usage of BPMN. The first event triggered will start the process: in this instance, adverse change in held stocks occurs first. The other two events will wait until those triggering events occur. What would happen if the market crashes and it is only 8:00 a.m.?

Figure 200: Understanding Exceptions of Instantiating with Parallel Gateways

ANSWER: All remaining tokens, events, and activities would be terminated. We know that the

event 14:00 daily hasn’t been triggered because it was only 8:00 a.m. when the market crashed, so that event is terminated. Now, let’s examine a new instance of our process. What would have happened if the event stock tip received was triggered first? What would happen if the market crash occurred later in the day?

ANSWER: We would terminate any remaining tokens, events, and activities since we are waiting

for all the tokens to synchronize at the parallel gateway.


EXPANDING THE APPLICATION OF BPMN

Figure 201: Solution for Exceptions of Instantiating with Parallel Gateways

Did your previous experience and the examples in this book enable you to answer this question correctly? Did the validation we provided help you feel more comfortable instantiating processes with parallel gateways?

4.1.4.4 Complex Gateways

Complex gateways are designed to deal with complicated business rules. Before you pass over this section, because we used the word complex, let’s rephrase the behavior associated with the gateway that some find difficult. Complex gateways are used to model unique processes with complex behaviors.While the other gateways we have covered can handle almost every modeling situation, complex gateways are used to handle what parallel, event-based, and inclusive gateways cannot. This section describes a few ways you can model complex behaviors. The complex gateway has several characteristics:

 Always in one of two states: waiting to start or waiting for reset, meaning when a token

arrives, the process flow may continue  Based on a Boolean instance attribute:

 waitingForStart or waitingForReset  Reminder: Boolean values are usually defined as true or false. So, if our waitingForStart

is set to true, we are waiting for a token to activate the complex gateway.

 Sequence flows must-have expressions that indicate which path is taken and needed to

activate the gateway, meaning not all process paths are required to start the gateway.  The process flow may continue without all of the outstanding tokens at the gateway.


LEARNING BPMN 2.0

Let’s look at how we can model complex gateways in the following shopping example. We begin by completing our shopping list. In parallel, we search online with our mobile devices while visiting our local mall. We want to complete either purchase whenever we are ready to do so. We can model this behavior with a complex gateway; the following model depicts purchasing gifts.

Figure 202: Identify the Complexity of Complex Gateways

Let’s share another example using complex gateways. The following model depicts how we learn BPMN and how one might start building process models after learning BPMN. After identifying sources for learning, our organization has a set of steps for helping new employees learn BPMN. We attend online courses, complete an in-person seminar, read the BPMN specification, and complete a peer review session. While we don’t do all of this at once, we can use the complex gateway to illustrate that once two types of training modes are completed, our process can continue, and we can start developing process models.


EXPANDING THE APPLICATION OF BPMN

Figure 203: Learning BPMN with Complex Gateways

GENERAL PRACTITIONER COMPLEX GATEWAY APPLICATION FOR EMPLOYEE PERFORMANCE EVALUATIONS

I hope they don’t evaluate my complex nature. I just really love dressing in old- fashioned military attire. Modeling the complex gateway can be straightforward when you understand the conditions. Let’s apply the complex gateway to performance reporting-something most of us, either as supervisors or employees, have experienced. Let’s begin by identifying the steps in the process:

  1. As the first activity, the manager evaluates performance reports.
  2. Use the inclusive gateway to depict those two paths that can be taken based on the true conditions. a. In this case, it can be true that there are poorly written assessments and individual issues: Use two sequence flows from the inclusive gateway. b. Both paths are taken, and we execute each activity if both are true.
  3. After poorly written assessments, the first activity is a collapsed subprocess, conduct training.
  4. After individual issues, the first activity is “interview employee” (user task).
  5. We use the complex gateway to illustrate joining our process flow back together. The process continues when data is available (use text annotation).

LEARNING BPMN 2.0

  1. The first activity after the complex gateway is to organize operational data.
  2. We use the conditional intermediate event to depict that our process won’t continue until all the data is organized.
  3. Once all data has been collected, we synthesize our findings. The following figure depicts a complex gateway to illustrate that when the token arrives from the interview employee activity, the process can continue, and we can organize operational data. To prevent us from synthesizing findings before our conduct training is completed, however, we use a conditional intermediate event to illustrate that all data has been organized before we can continue in our process.

Figure 204: Building with the Complex Gateway

MEDITATING MIKE

THE COMPLEX NATURE OF SUSTAINED REFLECTION

Let’s take a moment and reflect on complex gateways: specifically, how your behaviors influence your learning. Let’s take a minute and reflect on the complexity of behaviors that influence learning.

  1. Can you describe any internal driving forces that influenced your learning process?
  2. Can you describe any positive learning experiences that influenced your understanding of BPMN? As you reflect on those questions, take a moment, and write down your answers. We would love to hear from you regarding how you responded.Join us in our forum discussion and share your previous experiences if you have time.

EXPANDING THE APPLICATION OF BPMN

FORUM FELICIA COMPLEX EXPERIENCES FROM A BPMN PRACTITIONER’S LENS

There is an exciting discussion on complex gateways that I highly recommend you check out. As you read through the various responses, ask yourself: Do I face similar challenges in my understanding of the complexity of BPMN?” If you answered yes, you are not alone. BPMN practitioners’ range in experience and knowledge, and that’s OK. You are striving to learn the best ways to leverage the expertise around you and continue to build on your knowledge of BPMN. https://groups.google.com/forum/#!topic/BPMNforum/2hfs5Ft5-\_s


4.1.5 Expanding the Application of BPMN Activities and Subprocesses

Now let’s continue expanding the use of BPMN by applying the remaining BPMN activities. This will allow us to start accounting for very complex or technical process models. This section illustrates how you can apply the remaining subprocesses, task markers, and task types to improve your understanding of BPMN.

4.1.5.1 Event Subprocesses

Have you ever wondered why we are so restricted in the event types we can use for regular subprocesses? This is because of the event subprocess. Event subprocesses are unique in that they are instantiated based on a triggered start event. This section describes the event subprocess and expands on the types of start events we can use. As a reminder, the normal subprocesses we have modeled thus far are instantiated when a normal control flow (sequence flow) triggers the subprocess.


LEARNING BPMN 2.0

Figure 205: Normal Control Flow Triggering a Collapsed Subprocess

The event subprocess has several characteristics.

 Not part of a parent process: encapsulated within subprocesses  No incoming or outgoing sequence flows

 It can occur while a parent process is active, except when used for compensation (See the

bullet statement below concerning compensation.)  Triggered by events, whereas normal subprocesses are triggered via sequence flows.

 To trigger an event subprocess, the event must be defined, meaning only certain types

of events can be used: message, error, escalation, compensation, timer, signal, conditional, parallel multiple, and multiple. (In the following illustration, we depict interrupting and noninterrupting event collapsed subprocesses.)  Compensation events can only be triggered in event subprocesses after the parent

process in which an event subprocess resides is completed.

 Can only have one start event  Depicted with dotted lines  It can be depicted as a collapsed or expanded subprocess

 Collapsed subprocesses depict the start event in the upper left corner.

The following are illustrations of the collapsed and expanded subprocesses using various tools.

Figure 206: Collapsed Event Subprocess with Trisotech Modeler


EXPANDING THE APPLICATION OF BPMN

Figure 207: Collapsed Event Subprocess with Visio

Figure 208: Expanded Event Subprocess

An important note is that event subprocesses can also be started by interrupting start events. That’s right. There are two ways to start event subprocesses and two different outcomes. In the following illustration,we expand our process to illustrate how two different event subprocesses can be initiated within an expanded subprocess. We have depicted a set of activities in the expanded subprocess for processing loan applications. We also depict two different event subprocesses. The first one looks familiar: it’s updating account information. When updated address information is received, a noninterrupting message start event starts the event subprocess for updating your address for your account. After the account information is updated, the event subprocess ends. The second event subprocess is different. We use an interrupting conditional start event to illustrate when the condition account closed triggers the start of the process: we close the customer account. The key thing to highlight is the event type we used to start our event subprocess. The interrupting event subprocess interrupts the parent process for process loan application. We use a boundary message event to express that an exception occurs and a new process, manage customer service, is completed. You will notice that because we are using Visio, we use a gray fill-in for the expanded subprocess so you can see the event subprocess notation.


LEARNING BPMN 2.0

Figure 209: Understanding How to Model the Event Subprocess – Interrupting and Noninterrupting Event Subprocesses


EXPANDING THE APPLICATION OF BPMN

STREAMER SETH has created a video on how you can leverage the event subprocess notation

when modeling.

Join us at https://www.bpmpractitioners.com/videos.


The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.

Figure 210: Creating Business Process Models with Event Subprocesses – Develop System Architecture


LEARNING BPMN 2.0

While Visio doesn’t allow you to illustrate the event in the upper-left corner, other modeling tools enable the proper depiction. The following example shows the event types that trigger event subprocesses. For simplicity, we broke them out between interrupting and noninterrupting.

Figure 211: Event Subprocess – Noninterrupting Event Types with Trisotech Modeler

Figure 212: Event Subprocess – Interrupting Event Types with Trisotech Modeler


EXPANDING THE APPLICATION OF BPMN

GENERAL PRACTITIONER

EXPERIENCE LEVERAGING EVENT SUBPROCESSES TO CREATE DETAILED MODELS

Some notations aren’t used by BPMN practitioners-not because they are challenging, but because there is limited information regarding applying them effectively in your organization’s business process models. Additionally, some are better suited for technical processes such as terminate events. In the following example, we provide a case for how you can apply noninterrupting event type notations. These notations will add to your modeling notation subset. By understanding how to apply them, you are more likely to see where they can be used for modeling initiatives. Let’s try the following exercise as a team and learn with a group. We recommend breaking up into three teams.

  1. The TEAM 1 describes the happy-day path
  2. The TEAM 2 describes an event subprocess that is interrupting
  3. The TEAM 3 describes an event-subprocess that is noninterrupting The following describes an expanded subprocess for Plan To-Be Projects.

TEAM 1. The process begins, and the first activity is allocating project funds. The second activity,

the planner, gathers requirements. After the activity ends, a message is sent to key players. In parallel, the following steps occur:

  1. When additional details are received, the planner will examine the requirement details.
  2. The planner evaluates the project charter.
  3. The planner determines stakeholders.
  4. After all, three activities are complete, the process merges and ends.

TEAM 2. The first expanded event subprocess describes how to manage the fund’s compensation

process. The process begins when a fund rescinded notification is received (a compensation start event). The planner modifies project account information, removing funds tied to the account. The expanded event-subprocess process ends after rescinded funds from the project account (use a compensation “throwing” intermediate event). Use an error event to illustrate no funds.

  1. When funds rescinded notification occurs, the throwing compensation event throws to the catch funds rescinded notification compensation event attached to the boundary of allocate project funds (TEAM 1 HOOK) activity.

LEARNING BPMN 2.0

  1. The association flow from the boundary event leads to a compensation activity, return project funds. The activity undoes the allocation of funds and balances the account to appropriate levels.
  2. Additionally, since our event subprocess is interrupted, we use the intermediate boundary error event to illustrate an exception to our process and document our findings.

TEAM 3. The second expanded event subprocess describes the following situation.

  1. The planner updates stakeholder details in the project system when stakeholder information is received.
  2. The process ends with project details being updated with appropriate stakeholder information.

Figure 213: Possible Solution for Plan To-Be Projects Group Exercise


EXPANDING THE APPLICATION OF BPMN

Let’s examine the event subprocess possible solution. In the first event subprocess, we used the compensation to start the event subprocess because we needed to illustrate how funds are rescinded in our process. As a reminder, compensation is used to undo a previously completed task. In this instance, we can model the return of project funds only after the expanded subprocess is completed and a fund rescinded event occurs in the expanded event subprocess. As the name implies, the interrupting event subprocess interrupts the happy-day process we modeled first, whereas we used the noninterrupting event to start our second expanded event subprocess. We did so because our happy-day process isn’t affected by the update of stakeholder information.

Figure 214: Event Subprocess Solution Explained


LEARNING BPMN 2.0

FORUM FELICIA

ONLINE DISCUSSION FOR EVENT SUBPROCESSES

There are great questions and excellent responses regarding using event subprocesses on the forum. Let’s take a break and check out recent comments from BPMN practitioners. After reading the question and BPMN practitioner responses, ask yourself: Can I see other uses for the event subprocess?” Go to: https://groups.google.com/forum/#!topic/BPMNforum/hlGtLh58Obs


The event subprocess is sometimes overlooked, but when you begin to understand the power it brings to modeling, you can start describing very complex processes. We dive a little more into modeling complex process models in the next chapter and illustrate how you can apply them to your organization.

4.1.5.2 Transaction Subprocesses

This section will describe the unique nature of transaction subprocesses and how you can apply this notation to your organizational process models. The transaction subprocess is unique for BPMN because it has a special behavior controlled by transaction protocols.

Transaction protocols are standards used for communication. Specifically, transaction protocols describe the format of messages to ensure interoperability, security, and reliability for such communication. There are various types of transaction protocols, from multipurpose transaction protocols to web service transaction protocols. The transaction subprocess has several characteristics.

 Must confirm all participants have completed the transaction before the happy-day path

continues to the parent process from the transaction subprocess

 Depicted with double lines  If the process is canceled, all of the activities within the transaction subprocess are canceled.

 Compensation can occur in a transaction subprocess.


EXPANDING THE APPLICATION OF BPMN

 Three ways to illustrate the cancellation of a transaction subprocess:

 Cancel end event at the end of the transaction subprocess  Cancel intermediate event attached to the subprocess boundary that contains a cancel

message  Error intermediate event to represent a hazard, indicating something wrong. Use

the error intermediate event when a cancel event cannot cancel the activities during execution. The error intermediate event is connected to the boundary of the transaction subprocess, which generates a new exception flow.

Figure 215: Depiction of Transaction Subprocess – Collapsed and Expanded

To help illustrate transaction subprocesses, we use a process model called Create BPMN Model and then Simulate Model. We start the process with a collapsed subprocess: Create BPMN Model. We enter a transaction expanded subprocess: Simulate Model upon completing our BPMN model. Now we can simulate our model. The as-is version of the simulation will set our baseline, and after changes are made to the model, a to-be version can be run, and differences analyzed. We added two different events to identify potential problems with our process. The first is an error event that indicates we have syntactical discrepancies. This would result in the transaction subprocess erroring out, and we would be forced to create, or at least modify, the BPMN model (organizational resources required to create or modify). We also added a cancel event for the second hazard that can occur. In this case, simulation failed to produce real outcomes. Simulation can fail for missing steps, incorrect input parameters, or an error in one of the equations. The failure results in a cancel event, which leads to another activity outside of the transaction expanded subprocess to submit a failure report.


LEARNING BPMN 2.0

Figure 216: Transaction Subprocess for Simulating a Model

GENERAL PRACTITIONER

CREATING A TRANSACTION SUBPROCESS EXERCISE

Persistence during the learning process is significant to your success. If, at first, you don’t succeed, try again. Look within and examine the reasons behind why you failed before trying again.

Now that we have covered the basics of the transaction subprocesses, let’s create a BPMN model using the expanded transaction subprocess. The following example provides the overarching process model describing how we handle our clients. The process begins when we receive a contract for a new client. We deliver a welcome package. After the client receives the welcome package, we provide client services and manage client accounts parallel. Both processes consist of multiple activities and must be completed before we end our process. So, fill in and model the following steps within the expanded transaction subprocess.

  1. Manage client account expanded transaction subprocess consists of two activities: a. Process payments and deposit funds

i. Process payments must occur before we can deposit funds

b. If a client is dropped, we cancel the management of client accounts. c. The cancellation leads us to update our company profile.


EXPANDING THE APPLICATION OF BPMN

Figure 217: Transaction Subprocess Fill-in-the-Blank Exercise

  1. Take a moment before looking ahead and fill in the blanks. Recreate the provided model and then apply your understanding of transaction subprocesses. The following is our possible solution for modeling with transaction subprocesses.

Figure 218: Possible Solution for Transaction Subprocess Fill-in-the-Blank Exercise

We cancel the process of managing a client’s account. We used the sequence flow to illustrate that process payments are completed before deposit funds. Additionally, we illustrate that the process is canceled when a transaction protocol is received, indicating a client has been dropped. Typically,


LEARNING BPMN 2.0

several steps would occur after a client was dropped; for simplicity, we only show one-update company profile from the cancellation event. STREAMER SETH created a video to illustrate how you can apply

fundamental concepts of the transaction subprocess. Join us at www.bpmpractitioners.com/videos. The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.

Figure 219: Streamer Seth Transaction Protocol Discussion

We encourage anyone who wants to know more about transaction subprocesses to join us on the forum and discuss your experiences with us. This is a great place to expand your understanding with other BPMN practitioners.

4.1.5.3 Calling the Global Process-Call Activity Expanded

In chapter 3, we described the call activity. Now let’s dive into when call activities are used to call a global process.


EXPANDING THE APPLICATION OF BPMN

Before we go on, let’s discuss call activities again. Call activities are used to depict a point in the process at which a call is executed. A call activity can invoke either a global task or a global process. In either case, the control is transferred to the global task or process, the task is completed, and the transfer of control then resumes in the main process. In this section, we discuss the nature of the global process. When a global task is called, it is only one task. When a global process is called, a process with multiple activities is invoked. The following is an example of the global process collapsed subprocess and expanded subprocess for a global process.

Figure 220: Representation of Callable Subprocesses – Collapsed and Expanded

The call activity to a global process has several characteristics:

 Represented as a bold line around the activity shape with a plus sign  Represented by a bold line around the expanded subprocess notation
 Has unique data requirements it must fulfill  Assumes control when invoked and returns control when the global process is completed

Let’s expand on our earlier discussion regarding the data requirements that call activities must fulfill. In most process models, a transformation occurs through the completion of activities. Inputs are usually required, whether in the information or physical things. Those inputs are then transformed during the process, and an output result represents that transformation. Call activities are great for showing us what we sent to another process and what we get in return, in essence, the output from the transformation of the other process. Let’s examine the following example of launching a new marketing strategy to illustrate. We identify the new strategy and then determine the availability of marketing funds. If we overspent and funds


LEARNING BPMN 2.0

are unavailable, our process transfers control to the finance department with a request for additional funds. We illustrate how the data object fund request and proposal are key data input to the global process. In the example, the global process illustrates the request for organizational resources. The first data output is a working capital approval notification. We also depict a second data output, a denial letter. Each is a unique output from the global process. While we don’t know what steps lead to these outputs, we know that there are two possible outputs. We use that data to complete our process because we cannot continue executing the market strategy without a working capability approval notification or a denial letter.

Figure 221: Understanding Transformation with Global Process

Let’s expand the marketing process. We do this by using the expanded subprocess for a global process notation for the request for organizational resources. Doing so enables us to view another process within our organization. We can see that the process starts by reviewing a request. We use a boundary event to illustrate when the condition funds unavailable occurs, a new process flow is generated, and this process ends. If the conditional event is not set to true, however, or doesn’t occur, the process continues with allocating funds and a notification that funds are approved. Now we can see why we used the conditional intermediate boundary event. It’s because there are two possibilities in the global process.


EXPANDING THE APPLICATION OF BPMN

Each possibility will generate different outputs. We illustrate the global process transformation by showing the data object outputs working capability approval notification and denial letter.

Figure 222: Portrayal of Expanded Subprocesses Executing a Global Process

The more complicated your process model, the more likely using collapsed subprocesses will improve the readability and reduce the canvas size.

GENERAL PRACTITIONER

CALLING GLOBAL PROCESSES EXERCISE

Let’s practice creating a business process using global processes.

The following is an example of a fast-food industry process, specifically, the administrative staff ‘s process for evaluating the performance of various stores within a region.

  1. The process begins with a review of regional sales. a. The following model uses a noninterrupting boundary event to depict when targets are exceeded.
  2. A second new process flow that leads to our benchmark operation is generated, depicted as a collapsed subprocess.
  3. We also assess operational conditions for those stores. a. We use the inclusive gateway to depict three paths from that assessment. i. Workforce morale

LEARNING BPMN 2.0

ii. Training deficiency iii. Scarcity issue b. As a reminder, the inclusive gateway depicts how multiple paths can be taken based on

the true conditions.

  1. We also depict the default sequence flow for scarcity issues, which is typically the case for this process. a. However, if workforce morale and training deficiency are true, our sequence flow leads to two different global processes.
  2. We use the call activity notation and depict them as collapsed subprocesses.

Figure 223: Demonstration of Global Processes in Action

If the two global processes are called, then process control is transferred, and we must wait for those two global processes to be completed before we can continue. That is because modeling with global processes provides an input, so we naturally expect output from those processes. The information created in those processes is important and requires examination within the context of our process.

SURFER DAVE PRO TIP

Bro, I have an excellent idea for all those BPMN practitioners out there not using a fancy modeling tool. Text annotations can display critical information

vital to understanding and connecting your organization’s process models.

They help orient leadership to specific areas on your model and

minimize cognitive overload.


EXPANDING THE APPLICATION OF BPMN

Let’s model out Surfer Dave’s Pro-tip. In the following example, we use text annotation to identify the resource role for the global process. Specifically, we identify the resource role for the activity that receives the data input. We also identify the resource role for the activity that sends us the data output.

Figure 224: Surfer Dave Pro Tip – Identify Resource Roles for Global Processes

4.1.5.4 Ad-Hoc Subprocess

Ad-hoc subprocesses are unique; there is no specific process structure. The activities depicted do not proceed in any specific order unless specified through sequence flows. As we will see, ad-hoc subprocesses can be used to model human-driven processes. What that means is when determining which activities will be executed, a person is usually in charge of determining which activities will be completed and when to end the ad-hoc subprocess. The ad-hoc subprocesses have several characteristics:

 Depicted with a tilde symbol  It can be used in a collapsed subprocess or expanded subprocess
 Used to illustrate no sequential relationships  The activities executed are determined by the performer (think person, role, etc.)

 The ad-hoc subprocess can complete without executing all the activities.  Can use sequence flows and data flows to identify dependencies  May not use start event or end event


LEARNING BPMN 2.0

Figure 225: Ad-Hoc Collapsed and Expanded Subprocesses

A great personal example for us is how we try to provide a meaningful learning experience.We don’t just


want to teach something. We want to create an experience that a student embraces and from which they walk away with more motivation, improved learning capabilities, and a passion for seeking out knowledge. To do that, we have to prepare for the experience because it is not just about teaching. In the following example, we use the ad-hoc subprocess to describe how we can prepare for the student experience. We can use the ad-hoc subprocess to illustrate four activities that we can do to prepare for that student experience. Ideally, we would want to complete all four activities. Using an ad-hoc subprocess, however, our process can continue after completing one. The activities executed will be determined by the human performer- in this case, by us.

Figure 226: An Examination of Using Ad-Hoc – Prepare for Student Experience


EXPANDING THE APPLICATION OF BPMN

There are other great uses for ad-hoc subprocesses. We see a significant use for ad-hoc subprocesses when multiple iterations can be executed, particularly in the IT world. In the following example, we add an optional modeling technique that can be used for the ad-hoc expanded subprocess. While we depict four activities, we use a sequence flow between the first and second activities to represent a sequential process. We use data associations and data objects to represent data dependencies. The 32-bit version code and 64-bit version code are required to test the software code. We can implicitly model this for clarity. So, depending on which activity the software developer executes (32 bits, 64 bits, or both), the subprocess begins. After producing the software version, the performer must test the software code. If the 32 bits are produced and tested, the subprocess could end using the ad-hoc notation. We are not required to test the 64-bit code; it is what occurs for that specific instantiation.

Figure 227: Alternative Modeling Technique for Ad-Hoc Subprocess – Create Software Version


LEARNING BPMN 2.0

GENERAL PRACTITIONER

USING AD HOC SUBPROCESSES FOR BUSINESS PROCESS IMPROVEMENT

The biggest thing that helps with understanding is to practice modeling a fairly simple process using specific notations to make sure you can apply a principle.

For performing process improvement analysis, let’s apply your ad-hoc knowledge to the following business process model. Let’s take the ad hoc expanded subprocess and practice modeling a simple process. Use the following information to create an ad-hoc expanded subprocess. There are two activities within the ad-hoc subprocess.

  1. The first produces multiple versions of business process models from a single business process model. a. We capture the as-is process as a baseline (the input to our ad-hoc expanded subprocess). We then create multiple versions of business process models to conduct what-if or if-what processes to analyze.
  2. Each iteration of the to-be process model development creates slightly different versions of the to-be state of the business process. a. Create three versions. i. A business process model to automate a process. ii. A business process model for outsourcing the current process. iii. A business process model to improve our process.
  3. The second activity tests the output of the first activity. In this instance, simulate the model. a. The iterations of the second activity are performed sequentially.
  4. The second activity, the simulation, starts as soon as each iteration of the first activity is completed. a. Each version can be tested once a version of the to-be business process model is created.

EXPANDING THE APPLICATION OF BPMN

Figure 228: Perform Process Improvement Analysis – Ad-Hoc Solution

How did you model? Did you derive a different solution? If so, we would love it if you shared it with us. Join our online discussion regarding ad hoc subprocesses. We love seeing different modeling perspectives. While this is just one solution, there are many solutions. When building this model, we discussed alternative ways to present the ad-hoc expanded subprocess solution.

MEDITATING MIKE

CHALLENGING HOW YOU THINK IN ACTION

Reflecting on previous experiences, imagining yourself in the third person, or watching yourself through a camera lens can be a powerful tool for examining how you act and react. Let’s examine how negative influences can alter our behavior.


LEARNING BPMN 2.0

For this reflection exercise:

  1. Recall a previous modeling experience where you had a negative experience (it can be a learning experience with BPMN or a practitioner’s experience when modeling with BPMN).
  2. As you think about the specific negative experience, recall the following. a. Who else was there? b. What was the nature of the modeling experience? i. Were you modeling with SMEs and fellow BPMN practitioners, or were you learning?
  3. Now think about the specific instance that harmed you. a. Recall how you reacted physically. Did your heart rate rise? Did it increase your anxiety? b. Recall how it made you feel. Sad? Angered? Confused? Embarrassed?
  4. As you think about this experience, identify, and isolate what influence it had on the actions you took next. a. Did you want to interact or become confrontational? b. Did you break down and not react and not engage? Were you clear-headed?
  5. Now think about your action. How can you mitigate negative experiences that influence your actions?
4.1.5.5 BPMN Task Markers

In this section, we describe the remaining task markers. We have already seen one type of BPMN task marker in the previous section in the form of compensation. BPMN has three other types: the loop task marker, parallel multi-instance marker, and sequential multi-instance marker. This section will dive into how you can effectively use these notations to bring a greater level of clarity to your business process models.

Figure 229: Illustration of Task Markers – Loop, Parallel, and Sequential


EXPANDING THE APPLICATION OF BPMN

4.1.5.5.1 Loop Task Marker

The loop task marker is a great way to add context and illustrate when the same activity is completed multiple times. In essence, it saves us the trouble of creating the same activity over and over in our process model.

Figure 230: The Same Activity Over and Over

The loop task marker has several characteristics.

 Activity continues to occur while the loop condition is true, meaning the activity will be

executed multiple times.  The loop task instance attribute is called a loop counter, meaning the activity executes

the number of times (integer) the loop counter is set for.

 Depicted with a looped arrow.  It can be depicted with a subprocess icon, which can be applied to call, transaction, event, or

normal subprocesses.  It can be depicted with the compensation marker.  It can be depicted with an ad-hoc subprocess. In the following examples, we depict the loop activity in action. The first example highlights how we create invoices until all the orders are processed. We then validate those invoices until there are no more invoices to validate.


LEARNING BPMN 2.0

Figure 231: Loop Tasks

Sometimes you are creating process models outside of a modeling tool capable of capturing the specific instances of the activity that will be run. Using text annotations is an alternative method for depicting that additional information. The following example illustrates how we can apply text annotation to add context to the loop activity.

Figure 232: Using Text Annotations to Illustrate the Number of Times a Loop Task is Completed


EXPANDING THE APPLICATION OF BPMN

STREAMER SETH has created a video illustrating how we can use looping tasks for our system

administrator’s process.

Join us at https://www.bpmpractitioners.com/videos.


The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.

Figure 233: Streamer Seth Loop Task Video

4.1.5.5.2 Multi-Instance Markers

If you are like us, you have probably asked yourself, “What is the difference between the task loop markers and multi-instance markers?” The critical difference is that task loop markers represent activities that continue to occur, whereas multi-instance markers represent multiple instances of the same activity completed in parallel or sequentially. The parallel multi-instance task marker has several characteristics.


LEARNING BPMN 2.0

 Activity is performed in parallel, meaning multiple instances of the activity are executed and

completed at the same time  Depicted with three vertical lines  It can be depicted with subprocess icon, which means it can be applied to call, transaction,

event, or normal subprocesses  Can be depicted with the compensation marker

Figure 234: Using Multi-Instance Parallel Tasks – Shipment Processing

BPMN also allows multi-instanced tasks to be completed sequentially. The sequential multiinstanced task marker has several characteristics.

 The activity is performed sequentially, meaning multiple activity instances are executed and

completed in a specific order.  Depicted with three horizontal lines.

 It can be depicted with the subprocess icon, which can be applied to call, transaction, event,

or normal subprocesses.  It can be depicted with the compensation marker.


EXPANDING THE APPLICATION OF BPMN

Figure 235: Death by PowerPoint Training – An Example of Multi-Instanced Sequential Activities

Yes and no. Yes, it is similar in that there is a sequential order in the task completion. Multi-instance tasks also have the loop counter attribute, meaning the activity executes the number of times (defined integer) the loop counter is set to. However, the big difference between loop tasks and multi-instance tasks is that there are multiple instances of the task being completed simultaneously or in parallel, meaning that the data input affects how the transformation of a multi-instanced task occurs. For instance, each data input could affect how activity transformation occurs by looking at the previous example for processing inbound shipments, one data input could be general cargo, and another input could be hazardous cargo. While processing inbound shipments is completed in parallel, the data input would generate differences in the time it would take to process the inbound shipment. It takes longer, and there are more requirements for processing hazardous cargo.


LEARNING BPMN 2.0

STREAMER SETH created a video to discuss how you can model with parallel multi-instance

tasks. In this video, several characteristics of parallel multi-instance tasks are

discussed to demonstrate how you can apply them to your BPMN models. Join us at www.bpmpractitioners.com/videos. The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer

Figure 236: Using Multi-Instance Parallel Tasks – Shipment Processing – Video Example

GENERAL PRACTITIONER APPLICATION OF MULTI-INSTANCES ACTIVITIES

Don’t be afraid of failure: embrace it and use failure as a motivation to achieve anything.

Let’s practice building a simple model using multi- instanced activities and explore how you could apply this notation when building business process models. In the following model, we describe tracking the movement of shipments. This is a common step in the logistics and transportation processes.

  1. A performer comes to work and, throughout the day, monitors the status of multiple shipments. a. We show this as a parallel because we are monitoring several shipments.

EXPANDING THE APPLICATION OF BPMN

  1. We utilize the multiple event to highlight how various events can be the byproduct of the completion of each monitor shipment status (e.g., shipment delay, shipment arrival notification, shipment alerts)
  2. As each event “occurs,” we can record shipment status, but we do this sequentially because we need to record the time of each event. a. We use the sequential multi-instanced activity to depict that we record the shipment status sequentially.
  3. We use a signal event to send a general system update notification.

Figure 237: Developing a Basic Process Model with Multi-Instance Tasks

SURFER DAVE PRO TIP

Whoa, dude. Do you think task markers mean I will keep shredding waves forever? It could, but in reality, the shredding would eventually end. That is some complex behavior there. The key to remember is that multiple events

can occur from generating multiple activities.

For instance, each time I shred waves, various events could occur. Multiple events are thrown from the boundary of the activity, demonstrating that different states can occur during the execution of multi-instanced activities.

MEDITATING MIKE EXAMINING HOW YOU CAN APPLY KNOWLEDGE IN YOUR ORGANIZATION

Take a moment and think about the processes within your organization. Can you think of where you could apply these notations to previously built models? But more importantly, can you think about why updating those models using the multi-instance task markers is essential?


LEARNING BPMN 2.0

We find that the loop task marker and the multi-instance markers are helpful when analyzing processes to streamline them. When we are trying to reduce process cycle time, understanding activities that have multi-instances or looping is critical for ensuring we depict resources used and the cycle’s time. Because nothing would be worse than modeling out a process, capturing the metrics and resources, only to find out tasks are looping or multi-instanced. Imagine the differences you would see.

4.1.5.6 Modeling with the Remaining Task Types

This section will define and then demonstrate how to apply the remaining task types. While some say we saved the best for last, we would say we saved the most technical or most unused for last. Before you ask, we consider the business rule task and script task as the most complex but valuable of the four remaining task types, whereas we typically don’t see many applications for the send and receive tasks.

4.1.5.6.1 Business Rule Tasks

Business rule tasks are used to describe the business rules of our organizational processes. Business processes are filled with business rules. Rules govern how we operate and how our process works. Sometimes rules are explicitly defined and articulated through publications, operating manuals, or federal government regulations. Other times, business rules collect working knowledge or tacit knowledge that employees use to optimize processes. These unspoken rules are not written down but guide the actions taken. In a way, employees’ tacit knowledge can govern your organization’s processes. To know how tacit knowledge governs your processes, you must surface employees’ mental models. Surfacing employee mental models can occur during the interview process when creating process models. During the interview process, well-trained BPMN practitioners can uncover employee assumptions about how the process works, why employees react a certain way when an event occurs, or why, when, and how activities are completed. The business rule task has several characteristics.

 Enables input and output to and from a business rules engine  Depicted with a spreadsheet in the upper-left corner
 Same attributes as an activity  When the task is executed, the business rules associated with the task are called.
 It can be depicted as a global business rule task

EXPANDING THE APPLICATION OF BPMN

Figure 238: Understanding Business Rule Tasks for Cargo Placement on a Conveyance

Figure 239: Call Activity – Business Rule Task

GENERAL PRACTITIONER

APPLICATION OF BUSINESS RULES

I think as a matter of practice; people need to learn and continue to relearn. Looking at the problem from different viewpoints enables us to see previously unsurfaced patterns-the rules governing science, truth, and how we are connected.

Let’s analyze the following business process model and create a version of your own. Current cars don’t just automatically start driving (yet). Something “occurs” to engage autopilot or driverless features. In the following example, we describe the self-driving car.

  1. The autopilot feature is engaged. a. As we continue down the road, sensors, cameras, and the software evaluate the road conditions.

LEARNING BPMN 2.0

  1. Depending on the business rules (or written assumptions), one, two, or all three paths can be taken based on the data input and out from the business rule engine.
  2. For instance, the data input to the business rule engine could be the car’s speed, the position of the car, current road conditions, the amount of traffic, the distance of the car in front or behind, and so on.
  3. The output from the rule’s engine calculates (via a neural network in this instance) information to adjust the car’s position, speed, or continuous monitoring of the situation. Now that we have presented the process, we want you to recreate this model. But this time, we want you to create another process path for a business rule task and inclusive gateway.
  4. Identify another possible adjustment an autonomous car could make.

Figure 240: Analyzing the Technical Use of Business Tasks –

Self-Driving Car Example

After you complete your model, join our business rule discussion on the forums and share your model.

4.1.5.6.1.1 Introduction to Decision Model and Notation (DMN) and the BPMN Relationship

While this book focuses on learning BPMN, let’s learn how DMN is connected. DMN is a language used for describing business decision logic. OMG developed DMN.


EXPANDING THE APPLICATION OF BPMN

SURFER DAVE PRO TIP

Woah, the decisions in life we need to make can get complicated quickly. Fortunately, Decision Model and Notation (DMN) is an excellent connector to BPMN’s business rule task that enables us to explore the details of complex human-centered or automated decisions. At the most basic level, DMN is used to:

 Model human decision making  Model automated decision making

There are other uses for DMN, and it gets complex quickly. We highly encourage you to check out the OMG’s DMN specification to learn more about this modeling language. Let’s examine a BPMN process and how DMN is connected. We can see our business process for capability investment. Using Trisotech, we can build our business rule task, “Select Capability Based on Optimal Costs.” At first, the business rule task looks like our previous representation.

Figure 241: Connecting BPMN to DMN – Capability Investment Process

However, the difference this time, we can integrate our DMN model with our BPMN process (represented with a little lock icon-a Trisotech feature). By clicking on the task, we can reveal a simplistic decision model with some of the notations of DMN. The details of your decisions can be complex and can require multiple sources and previous decisions to inform the ultimate decision. In the following DMN example, we represent the decision, input data, knowledge sources, information requirement, and authority requirement notations (a subset of DMN).


LEARNING BPMN 2.0

Figure 242: Capability Investment with DMN

There are a couple of great resources if you are interested in DMN. One resource is Bruce Silver and Edson Tirelli’s DMN Cookbook, which can take you on the DMN learning journey with some great examples. The purpose here was to explain that other modeling languages are connected to BPMN that enable you to extend your models should you need to explain complex decisions of your process model.

A CONVERSATION ON BPMN, DMN, AND CMMN

The Trisotech team discusses BPMN, DMN, and CMMN. This is a great video that provides an overview of each notation. https://www.youtube.com/watch?v=PKJ-8oib68I

4.1.5.6.2 Script Tasks

Ok, back to BPMN.

In this section, we dive into the technical nature of BPMN tasks with the introduction of script tasks. While we covered service tasks in chapter 3, script tasks are an alternative for modeling out technical tasks. Script tasks are used by a process engine, so as you think about how you can use script tasks, think about things like reporting tasks or automatic email processing tasks. Another example


EXPANDING THE APPLICATION OF BPMN

of a script task in action is when a script accesses and invokes a pull of usernames from an active directory service. The pattern between all three descriptions here is that script tasks invoke scripts. The script task has several characteristics.

 Executed by a business process engine.

 When the task is started, the engine will execute the script.

 Depicted as a wavy paper in the upper-left corner.  Upon activation, the script is invoked.  Same attributes as an activity.

Figure 243: Script Task

Figure 244: Call Activity – Script Task


LEARNING BPMN 2.0

GENERAL PRACTITIONER SCRIPT TASK PRACTICE SESSION

Did you guess that many of my quotes about action came from transcripts of interviews with previous participants and peer review sessions?This was a method for sharing other BPMN practitioners’ views in a fun and engaging way. I hope you have enjoyed them. The following model describes a business model for receiving an email. While we don’t expect everyone to start modeling script tasks, we do imagine at some point, when modeling in your organization, you will come across script tasks. For this example, we just want you to recreate the model.

Figure 245: Applying Script Tasks

We used a text annotation to illustrate the script name running for the submit help ticket task. We chose not to use any modeling tool in our example, so using text annotation adds context to the model. The context can be valuable to technical experts as we call out the specific script name. If we moved into a modeling tool environment, we would have specific details associated with the script task (represented in the text annotation) to enable successful simulation because we could invoke the correct script.


EXPANDING THE APPLICATION OF BPMN

FORUM FELICIA

MAKING MEANINGFUL CONNECTIONS WITH BPMN PRACTITIONERS

Join the discussion on business rule tasks and script tasks. The following discussion provides some other practitioners’ views on the application of script, business rules, and service tasks. https://groups.google.com/forum/#!topic/BPMNforum/kcRJhKafw9s


Connecting with colleagues makes excellent connections in the BPMN community and facilitates the transfer of BPMN knowledge. We encourage you to try to add a response to the user forum post based on your understanding of any one of these notations. It is always good to share your interpretation and collaborate with other practitioners to form a shared understanding of the notations. Who knows? By building connections, you may form lasting BPMN connections and expand your professional network.

ENGINEERING LEAD ERIN’S SCRIPT TASK EXAMPLE

Let’s take a look at script tasks from an Engineering perspective. The script below takes three large image files and rescales them to a default value of 1920×1080. The three files have three aspect ratios, tall, wide, and square to show how a simple algorithm can account for all three resizing challenges easily. The script starts by

assuming that the three image files are present in the directory /images for simplicity. The rescaled images are output into the /images/rescaled folder. In a real-world application, the file names would be passed in from another call, or as part of a user interface. In the following example, let’s look at how a script task can be used to describe the resizing of a batch of images to fit within a specific size and retain its original aspect ratio for our application. Let’s look at the process model provided by the business analyst team.


LEARNING BPMN 2.0

Figure 246: Rescale Image – Script Task and Coding Example

The code and image files are in https://github.com/TeraTech/LearningBPMN/tree/main/rescale.


Try this script yourself to see the results and how you might improve it. If you make improvements to the code, ask yourself, how might this change the design of my BPMN diagram? If there are changes, don’t forget to update the BPMN diagram once you’re done!



EXPANDING THE APPLICATION OF BPMN



LEARNING BPMN 2.0



EXPANDING THE APPLICATION OF BPMN

After running the script above, you should see this output in your console.

Figure 247: Console Output for Script Rescaling

4.1.5.6.3 Receive Task and Receive Instantiating Task

The receive task is just as it sounds: It receives messages. To be more specific, it receives messages from participants. We will discuss two variations of the receive task. The first is the typical receive task; the second is the receive task that can instantiate a process. The receive task has several characteristics.

 Requires a message to complete the task  Depicted with an envelope in the upper-left corner  Received from an external participant
 Can use message flow to connect the receive task  It can be used as an event-based gateway

Figure 248: Receive Task


LEARNING BPMN 2.0

The receive task that instantiates a process has the following characteristics.

 Instantiate attribute set to true  Depicted with a message start event in the upper-left corner
 Do not use a start event or incoming sequence flows

Figure 249: Receive Task that Instantiates a Process

There are a few examples worth mentioning regarding receive tasks and receive tasks that instantiate a process. We use one of our favorite processes for this: the invoicing and payment process. The following examples illustrate how and when you would apply them. In the following example, we must submit an invoice when an order is received. Here is where we can expand our understanding of receive tasks and event-based gateways-specifically, the application of receive tasks after an event-based gateway. We use the receive task to illustrate that the processing path is taken when a payment is received. (As a reminder, event-based gateways only allow for one path to be taken, so the first triggered event, or in this case, receive task, continues the process. In this instance, the process doesn’t wait for the timer event 72 hours.) Another important concept with the receive task is how it handles data. Specifically, when data is received, the receive task assigns a data output available to the process.


EXPANDING THE APPLICATION OF BPMN

Figure 250: Interpretation of Receive Task and Event-based Gateway Application

MEDITATING MIKE

OBSERVING BPMN PATTERNS

Wait a minute. Take a moment and look at the start event order receipt in the previous model. Didn’t you tell us that a receive task can instantiate a process when a message is received?

That is a very keen observation. An alternative way to model the previous example is illustrated in the following figure. The key change is replacing the message start event with a receive task that instantiates a process. The other fundamental change is that no inbound sequence flows into the task.


LEARNING BPMN 2.0

Figure 251: Instantiating the Process with a Receive Task

We have seen various receive task use, specifically their naming conventions. We stick with the verb-subject style but have found exciting ways to illustrate the message received. For example, we can receive all kinds of messages to see all kinds of messages for receiving tasks. The following are a few examples we have seen.

Figure 252: Receive Task Naming Conventions from other BPMN Practitioners

4.1.5.6.4 Send Tasks

The previous section described the receive tasks. As you probably guessed from the title of this section, here we describe the send tasks. Specifically, we will illustrate how you can use send tasks when developing your business process models.


EXPANDING THE APPLICATION OF BPMN

Let’s describe send task characteristics first.

 Requires a message to be sent to complete the task  Depicted with a dark-filled envelope in the upper-left corner
 Sent to an external participant

Figure 253: Send Task

The send task is essentially just the opposite of the receive task. Instead of receiving messages and providing data to the process, the send task takes data from the process and sends that data out of the process to external participants. Let’s demonstrate this in action in the following example.

Figure 254: Review of the Send Task


LEARNING BPMN 2.0

That is correct. We can deduce that pattern by looking at the message throw and catch concept. We

typically use message throw and catch events to depict this. However, some BPMN practitioners like to use the send and receive tasks, as they allow for exceptions and enable boundary events to be placed on the activity.

Figure 255: Relating Throw and Catch to the Send and Receive Task Concepts

GENERAL PRACTITIONER

EXPERIENCE WITH SEND AND RECEIVE TASKS

Let’s practice building with send and receive tasks. Sometimes it just takes practice and reflection to determine the applicability of the notation for your organization.


EXPANDING THE APPLICATION OF BPMN

In the following investigation process, let’s experiment with modeling with send and receive tasks. (For the sake of simplicity for the book, we excluded the participant pool.)

Figure 256: Experiment Modeling with Send and Receive Tasks

MEDITATING MIKE

USING PREVIOUS EXPERIENCE TO DO IT DIFFERENTLY

Building one way may seem significant. Take a moment and think about how you would model the previous example differently. How do you determine what notations to use? Is there a method to your approach?

How many of you thought about using message throws and catches as you built out the model? In the following example, we thought about how we could model the process differently and updated our model.


LEARNING BPMN 2.0

Figure 257: Reflection is the Key – Example of Simplifying a Model

SURFER DAVE PRO TIP

OK. To simplify, use message tasks only when the message can be interrupted.

This pro tip will save you time and energy when deciding, “Should I or should I not use message tasks?”

4.1.6 Learning BPMN as a Team

This section engages those looking for a challenge in a thought experiment. This challenge is not for the faint of heart. It is for those committed to expanding their understanding of BPMN and applying it. Don’t worry; no one can know everything. No matter what our spouses,co-workers,or family members think. The main point of the thought experiment is to get you to challenge your understanding and see things from another team member’s perspective. This book is written from the authors’ unique viewpoints and comprehension of BPMN. The interpretation of BPMN is by and large from our viewpoints. Meaning, that as we learn and apply the specification based on our comprehension of the modeling language syntax and semantics, we form individual viewpoints, which are subjective. We had lengthy discussions about how best to teach concepts based on our understanding of a notation as a team. We hope those who genuinely excel in learning BPMN see better ways to model and teach certain concepts and provide that feedback, and we are ready and willing to listen to your viewpoints.


EXPANDING THE APPLICATION OF BPMN

The critical point is that viewpoints based on ambiguous or unclear guidance only add to the complexity of learning and modeling with BPMN. Ambiguous examples or ambiguous situations require teams to solve complex modeling problems to avoid costly mistakes for an organization. Let’s examine the following thought experiment.

THOUGHT EXPERIMENT INTRODUCTION

Take a moment and imagine you are allowed to work with a famous colleague, theorist,or practitioner. Corporate leadership brought you in for a meeting at 4:00 p.m. and introduced you to this famous individual. They notify you that you will be working together to solve a complex problem in the field. The leadership team determined that BPMN can help explain the processes of studying this complex problem. They believe that by working together, you can solve this complex problem and apply the methodology to solve complex organizational problems and bring a new level of competitive advantage previously unrealized in your company. The famous colleague, theorist, or practitioner is excited to be working with you and very eager to learn about BPMN so that person can understand your work. However, corporate leadership states that you will only have three hours together before a 7:00 p.m. flight. Now sit back and think about this situation. What would you teach if you had someone primed for learning and eager to learn as much as possible in three hours? Specifically, identify:

  1. The process you would lay out to teach the person
  2. What do you think is critical to share with the person for learning BPMN? We want you to find a group of colleagues to complete this thought experiment to achieve this goal. There are several ways to do this. If you are process modeling in an organization, seek out colleagues who are using or learning BPMN, or go to our BPMN thought experiment forum page and post that you are looking to collaborate on this experience. Once you have your group (at least three people), share this exercise with them. You can download this thought experiment from our thought experiment resource page or share this book with group members. After reflection, as a group, complete the following:
  3. Create a model of the notations you would use as a legend.

LEARNING BPMN 2.0

  1. Create a slide describing your team’s collective knowledge regarding how you would teach the person in three hours. a. Where would you start? b. What concepts would you include? c. How would you make those three hours meaningful? As individuals share their views on why they think a specific notation should be covered, they try to add meaningfully to their comments. For example, when someone states the importance of exclusive gateways, the following is an example of how you could respond.

 Initial response: “I concur,”or,”I have not thought of that description from that perspective/

viewpoint before.”  Add-on: “I wonder, have you thought about the nature of data-based gateways and that the

data generated from the previous activity determines the token transverses path?”

The best part of this thought experiment is that we don’t expect everyone to be an expert or to have a complex understanding of each notation. That’s OK. The idea is that when you are unfamiliar or unsure of a notation, and someone else states they don’t know or don’t fully understand, you can discuss it further and expand your understanding. Post it on the forums when you finish your team’s model and slide. We would love to hear from BPMN practitioners like yourself.

4.2 New Learning Experiences for Advanced Modeling Concepts

In Chapter 4, we provided you an opportunity to create knowledge through the transformation of experiences of an expanded set of notations and modeling patterns (learning process). If we were successful, you were able to build on previous knowledge and form a greater understanding of BPMN. As practitioners, we find that more time between publications and projects enables us to communicate with practitioners like you. We dedicate this section to those we have engaged with over the last three years. This section intends to provide additional learning experiences and video examples by demonstrating advanced modeling concepts and patterns you can hopefully leverage as you expand your application of BPMN.


EXPANDING THE APPLICATION OF BPMN

The three modeling patterns and advanced concepts covered are:

  1. Message Throw and Catch, Event-Based Gateways, and Service Task Modeling Pattern
  2. BPMN Models using Event-Based Gateways & Boundary Events
  3. Interrupting and Non-Interrupting Conditional Boundary Events and an Introduction to Business Intelligence
4.2.1 Message Throw and Catch, Event-Based Gateways, and Service Task Design Pattern

The learning experience we wanted to share is how to use several advanced modeling concepts and notations in a hospital’s new patient process.

STREAMER SETH has created a video on using message throw and catch,

event-based gateways, and service task design patterns in a hospital’s new patient process.

Join us at https://www.bpmpractitioners.com/videos. The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.

Figure 258: Message Throw & Catch, Event-Based Gateways, and Service Tasks Design Pattern – Hospital Example


LEARNING BPMN 2.0

4.2.2 Engineering Erin’s Balance Between Two Worlds View
ENGINEERING LEAD ERIN’S BALANCE BETWEEN WORLDS

Communicating between two worlds can be challenging and daunting as a new lead. However, by understanding the requirement, and the problems with the current process, you can quickly work through issues and communicate a direction for your team. Loop activities are great candidates for creating solutions to solve a business need through collaborative partnerships and bridging the gap between IT and Business. Identifying loop activities can be critical to automating or improving operations. A business analyst/modeler and developer team can work together to analyze a problem and create solutions that can be implemented to improve process performance. We recently worked with a company that dealt with selling cards online. A catalog specialist charged with staying on top of new cards for release came to us with a problem. After modeling their process, we generated the following model describing steps for cataloging new cards that eventually enter the inventory system. Overall, most of their processes were filled with repetitive activities and manually intensive. The following is one example.

Figure 259: Identified Process Problem – Loop Activity Example


EXPANDING THE APPLICATION OF BPMN

Let’s look at how we solved this problem. The solution to this problem can be solved in several ways. We took a direct approach to tackle this problem (direct to my understanding). Here you can use various computer languages. For this example, we used python.

  1. After reviewing their website, we created an API request and pulled the data automatically. Alternatively, we could have subscribed to get a response.

  1. Then, we created a function to save time in pulling the cards in the future.

  1. The last thing was to create a spreadsheet with the card data. For this, we use pandas to create a dataframe. We can then get an excel file with all the cards for the functions.

If we run this, we will get the cards spreadsheet and see the date of the newest cards, their names, etc. This was just one step in automating the processes for the company. https://github.com/TeraTech/ LearningBPMN/blob/main/loops/loops.py.


LEARNING BPMN 2.0

Our new process is depicted in the following model and is run daily and take seconds. For the sake of simplicity, we do not cover the intermediate timer event attached to the boundary of the “run card pull” in our coding example.

Figure 260: New Automated Process – Loop Activity Example

4.2.3 Peer Reviewing BPMN Models using Event-Based Gateways & Boundary Events

For us, engaging with practitioners is the highlight of any day. Whether sharing ideas, asking, answering questions, or discussing current projects, we enjoy the discourse. A thread within that engagement has come in the source of peer reviews. We enjoy it when practitioners like you reach out with a modeling problem or request for peer review of your process model. It provides us an opportunity to demonstrate our understanding and question how we have applied our understanding of BPMN to design a process model. In the following example, we share a recent peer review and how we provided meaningful feedback.

STREAMER SETH has created a video to discuss how we perform a peer

review of a GIG economy business process model. Join us at https://www.bpmpractitioners.com/videos.


EXPANDING THE APPLICATION OF BPMN

The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.

Part 1

Part 2

Figure 261: Event-Based Gateways & Boundary Events – Peer Reviewing BPMN models

4.2.4 Creating Business Intelligence Reports Using Interrupting and Non-Interrupting Conditional Boundary Events

If only BPMN were our full-time job…But alas, we do this as a passion, and this is not our full-time job. We are charged with solving complex problems that extend past internal organizations to a broader ecosystem with forces often unseen when solving a problem. The creation of business intelligence reports is an activity we engage in to solve complex problems. Often extending over several months, the process requires a set of sub-processes and tasks to deliver value to a customer.


LEARNING BPMN 2.0

The following is a example of how we can create a business intelligence report to create a competitive advantage for a customer using open-source data. Specifically, we demonstrate how to use BPMN conditional events and how interrupting and non-interrupting events “create” new sequences and a set of activities based on when something “occurs” when creating business intelligence reports. Those who have experience in this field will probably attest that every organization would have this core capability competency if it were simple. But alas, nothing with intelligence is “simple.”

STREAMER SETH has created a video to discuss creating our business

intelligence report process, explain some advanced modeling concepts such as collaboration, and introduce how to leverage open-source data. Join us at https://www.bpmpractitioners.com/videos.


The videos match the figure name. You can also view our YouTube channel, Joshua Fuehrer.

Figure 262: BPMN Conditional Events – How to Use Interrupting and Non-Interrupting Boundary Events


EXPANDING THE APPLICATION OF BPMN

4.2.5 Engineering Erin’s Build Process

ENGINEERING LEAD ERIN’S BUILD PROCESS EXAMPLE

The build processes are unique to the product the development team produces but don’t forget that the risk decision about what to deploy belongs to the needs of the business. Minor errors on business-critical updates might be acceptable especially if it means being first to market on a feature. This is not a decision for a development

team to make! A strong development team works directly with the functional community to identify guidelines about what is in scope for the development team to decide, and when to elevate decisions to functional owners. This partnership should be developed and cultured as long as the product exists. To keep this to simple examples, let’s expand on the other two issues presented in Chapter 3, Handle Failed UI Test and Handle Failed API Test. The first example describes how Engineer Erin’s team decided to handle the issue of Failed UI Test.

 The UI development team must review UI issues to determine the severity of the problem.

Based on collaboration with the functional community, the team defined the criteria for differentiating between low-priority issues and critical UI failures. The UI development team can determine if the deployment can continue even with the UI problem present with these definitions. This process kicks off as soon as the UI development team receives a notification in the UI channel of their internal messaging tool.  Low-priority UI problems will automatically populate the backlog, and the build is permitted to deploy. The team will deploy a hot-fix as soon as the new code build is ready. The following examples define low-priority issues:  UI issues on static pages of the website, such as FAQs, disclaimers, and blog/

articles  Cosmetic UI issues such as button colors, wrong fonts, or supplementary text

such as tooltips  UX issues related to animations and transitions  However, critical UI issues must not deploy, and the build is prevented from continuing

past this gate. These include problems such as:  Problems prevent users from performing their desired functions, completing a

purchase, or accessing support.  Problems with the header, sidebar, or footer navigation


LEARNING BPMN 2.0

In the following example, we developed a process model describing Handle Failed UI Test.

Figure 263: Handle Failed UI Test

The second example describes how Engineer Erin’s team handles the issues of Failed API Test.

 A notification is sent to the backend team in the dev channel of their internal messaging

tool. The backend team must review API issues. The backend team will determine who wrote the code that caused the error and issue a bugfix story to that developer. Unlike UI/ UX problems, backend failures always stop the build process. The process tries to identify


the following things:  Did the problem code exist in a prior release? For Erin’s team, this happens sometimes,

and it is important to learn why an error passed a test during a previous build so they can minimize the chances of it happening again.


EXPANDING THE APPLICATION OF BPMN

Figure 264: Handle Failed API Test

Since we just described two additional processes within our build process. This “discovery” has implications for our previously built models. Let’s take a moment and discuss how we updated our models to account for this “discovery”, something common with modeling complex processes in an organization. Let’s start with our build process subprocess.

 For non-critical issues (depicted in Handle Failed UI Test), we give the green light to

deploy the code. The intermediate conditional event is placed on the boundary of”Examine Build Issue” and a sequence flow to connect to the “Merge Branch to Master” user task.  For critical issues (depicted in Handle Failed UI Test and Handle Failed API Test), we use an intermediate message event (catch) placed on the boundary of “Examine Build Issue” and a sequence flow to connect to a message end event.

Figure 265: Build Process – Updated


LEARNING BPMN 2.0

But how does this affect our DevOps parent process? Since we kept these examples relatively simple, we can create a feedback loop to the Develop Code subprocess using an intermediate message event placed on the boundary of the Build Process. Doing so enables us to communicate that for critical issues, we do not push to testing, rather, we must go back and address the critical issue and develop code. The following is our updated model.

Figure 266: DevOps – Updated

Astute practitioners might ask “what about the case model, do we update that model?” The short answer

is yes, there is an update to that model since these models are connected. However, at this point, the

case model “Examine Build Issue” becomes a bit unwieldy to try to explain all of the updates. Since this book is really about BPMN, we forgo that discourse. The key takeaway for business and engineering teams is that the risk decisions for deploying code can be documented and shared with the entire product community. As Engineer Erin stated before, the reason a product exists is to meet a business need. Therefore, it is important to share risk decisions with stakeholders, functionals, the engineering team, and any other part of the organization that influences risk. These groups communicate in different ways, but with BPMN you can relay processes in a standard consumable format to everyone equally.

4.3 Closing View

This chapter expanded on BPMN to include the remaining notations and how you can apply these to your business process models. This chapter intended to establish a framework for modeling syntactically correct models firmly. The next chapter would enable you to take on a practitioner mindset if we were successful. We will share our experiences with BPMN in a real-world enterprise, illustrate how we used BPMN models to inform BPM initiatives and highlight how BPMN models can be used with other methodologies and frameworks.


EXPANDING THE APPLICATION OF BPMN

Lastly, take time to reflect on the goals you set when going through chapter 4. Ask yourself, did you see benefits from setting specific learning goals? Was your goal well-formulated, so you were able to plan and see the impact of your goal as it relates to understanding BPMN? More importantly, did your goal increase/improve the desired outcome that you set? Please join our goal-setting group in our forum section, and let’s discuss your journey.


Real-World BPMN for the Practitioner

5.1 Areas for Application

We


hope we have provided a learning experience that you have valued and has been meaningful. This chapter will share how you can go from process documentation with BPMN to the application of BPMN through various approaches. With our unique backgrounds and consulting experiences, we have been exposed to multiple organizations that have applied different frameworks or approaches using BPMN to achieve specific outcomes. This chapter allows us to share strategies for applying BPMN to various BPM initiatives.

5.1.1 Leveraging BPMN Models for Organization Initiatives

Many of you are a part of organizations that have started or are in the middle of BPM initiatives and are already using BPMN to model organizational processes. Many of you probably have 50 percent or more of your organizational business processes modeled out if you have been underway for a while. Getting to that 50 percent mark, you probably began to see the light at the end of the tunnel. As you see the light, questions probably surfaced regarding your process modeling efforts. As advisors, we have heard a common question: “How do we move from process models into practical application and process improvement?” It’s a great question, and in this section, we dive into the practical application of BPMN.


REAL-WORLD BPMN FOR PRACTITIONERS

5.1.1.1 Application of BPMN with Lean Six Sigma and the Define, Measure, Analyze, Improve, and Control (DMAIC) Quality Improvement Process

We hear a lot from BPMN practitioners, “How can BPMN be used to complement process improvement techniques such as Lean Six Sigma?” We would like to share our experiences regarding how your business process modeling efforts can link directly into the Lean Six Sigma Define, Measure, Analyze, Improve, and Control (DMAIC) quality improvement process. An organization modeling effort can tie directly into many areas of DMAIC. For instance, in organizations that already have their as-is processes modeled, those same BPMN models can be:

  1. Used to help define customers and their requirements
  2. Used to help identify opportunities for improvement Business process models provide a framework for extracting pertinent details required to help define the problem and develop your project charter. Specifically, when BPMN models capture process details and the tacit knowledge of an organization’s workforce, you can leverage previous modeling efforts to define known problems. In the following example, we lay out a process for dry cleaning, specifically, a service that some dry cleaners provide,which is the delivery and pickup of dry-cleaned goods. We captured key information based on feedback from delivery drivers during our previous modeling of the operational process. Two key problem areas they identified were that, while all customers receive a phone call reminding them to set out their dry cleaning, customers do not always have dry cleaning to pick up. Likewise, while some customers aren’t receiving any dry cleaning, the driver still arrives at the customer’s location.

LEARNING BPMN 2.0

Figure 267: Analyzing BPMN Models to Define a Problem

Analyzing already-developed business process models enables you to create a framework for defining a problem statement. The following is a framework for crafting the problem statement answering the five Ws based on the previous dry-cleaning business process model: Dry cleaning delivery drivers are spending two unnecessary hours out on delivery routes each week due to customers not having a dry-cleaning requirement. The dry-cleaning business failed to implement a robocall program to improve the delivery service. The company is spending resources on gas, maintenance of the fleet, and employee salaries for services that are not always required. Now that we have used our BPMN to help define the problem, we can use the BPMN model to identify benchmarked process times and metrics relevant to your organization. Measuring baselines is essential for determining priorities to improve the quality of your processes or the quality of the service your organization provides. Measuring requires establishing current baselines as the basis for improvement. Therefore, business process models that captured activities’ metrics and benchmarked processing time will have a considerable advantage when moving into the measuring phase of the DMIAC process. Let’s expand on the previous example a bit. In the following example, we look at the captured metrics in which 25 percent of the time, no customers have a weekly pickup or delivery. From that data, we can quantify the drive time, costs related to that extra driving, wasted opportunity costs, etc. It’s all about the level of detail you capture when developing business process models. Models must


REAL-WORLD BPMN FOR PRACTITIONERS

capture processing time for activities, any lag time, and specific metrics related to the process, such as 25 percent of the customers do not have a pickup or delivery every week. Doing so enables BPMN practitioners to measure the baselines and perform additional analyses. We have found that analyzing business process models can pull critical pieces of data required for the third step of the DMIAC process-analysis. Analyzing business processes will enable you to quickly organize the business and system process opportunities and prioritize known problems. Specifically, when your business processes highlight known issues, gaps, and opportunities, you will have a jump start for root cause analysis. In the following example, we pinpoint a potential problem area and start analyzing known datasets within the process and within the organization.

Figure 268: Extracting Metrics, Baselines, and Opportunities from BPMN Models

Improving organizational business process problems is something we do as business process experts and engineers. We love to see positive change. We love that we can be the catalyst for promoting positive change. Developing to-be BPMN models enables testing of to-be solutions before we execute change. It’s doing the what-if or if-what drill. Doing to-be BPMN models is a practice we encourage when developing organizational business process models with known gaps, problem areas, or opportunities identified by SMEs. We examined why the robocall system failed and used that analysis to create to-be processes to improve our processes’ effectiveness and create a strategy to ensure success while mitigating costs. In the following example, we describe a to-be solution by developing an application that customers can use to confirm pickup with the press of a button. We also describe how GPS route profiles are updated when customers confirm they require no pickup; if customers do not have a drop-off or pick-up scheduled, the driver’s route profile is updated, and the route is updated.


LEARNING BPMN 2.0

Figure 269: To-Be or Not To-Be – What-If Business Process Model

One thing not listed on the BPMN model but considered in the analysis of the to-be model was a modification to the customer agreement. When customers use the app to notify for delivery or nondelivery, they receive a discounted rate on their monthly statement. The resources saved in salaries, maintenance, and fuel costs offset that discounted rate. By thinking of the what-ifs, we identified that we needed to update the customer agreement, incentivizing the use of the application. While we don’t create to-be models for every organizational process, we find it highly beneficial when to-be BPMN models are readily available DMAIC quality improvement process begins. However, if you don’t have the to-be modeled, don’t fret. Using the as-is BPMN model as a baseline provides a steppingstone into the to-be development phase for improving the business process.

5.1.1.2 Applying BPMN to the Internet of Things (IoT)

The Internet of Things (IoT) is another exciting area for applying BPMN models. IoT has exploded in recent years and can have a tremendous impact on organizational processes, mainly when developing the to-be state of your organizational processes.


REAL-WORLD BPMN FOR PRACTITIONERS

Hospital processes have been a keen area of interest for applying BPMN efforts, particularly as they relate to the IoT. Static as-is processes of tomorrow offer a glut of opportunities for business and technical analysts as they begin to extract up-to-date information. Take, for example, the process of the Emergency Management System (EMS) Dispatch Call Center. On the surface, it seems like a straightforward process, with phone calls, radios, computers, and network devices to support those enabling the success of the process.

Figure 270: Dispatch Center Example – IoT Use-Case

Several hospitals have embraced process improvement by adopting technological implementations through IoT. Before we dive into some reflection questions, for those unaware, leveraging BPMN process models is fundamental for IoT architectures. IoT and BPMN go hand in hand because embedded within the processes are technologies that, when harnessed, are very important to an IoT architecture. The following is a small subset of IoT devices for the EMS Dispatch Center process.


LEARNING BPMN 2.0

LEARNING BPMN 2.0

Figure 271: IoT Example for Hospital Scenario

Figure 271: IoT

Also, within the realm of the IoT architecture are all the networks required to support these devices. While we don’t capture those specific networks in the process models, we capture one fundamental concept needed for building out your IoT architecture: the data. Take, for example, the previous EMS Dispatch Center process. Take a minute and ask yourself what type of data could be documented for analysis in the process model. Notably, as a business analyst or modeler, what can you identify that would help provide decision support for hospital leadership in their complex business processes? The following is an example of how you can use BPMN with your IoT architecture to identify critical components for analysis. For instance, we use the EMS system database and GPS database, two as-is systems that enable the transformation of the depicted business process. The GPS database provides real-time traffic reports and the quickest routes for the dispatcher and ambulance support team. For instance, if a traffic jam occurs, the GPS database will provide updated routes for the ambulance driver. When documenting these IoT business processes, it is crucial to note what technology and data are already in place and what are not. Doing so will enable you to identify opportunities when developing your to-be processes.

304 280


REAL-WORLD BPMN FOR PRACTITIONERS

Figure 272: Using BPMN to Identify IoT Devices and Data

Let us show you an example of capturing opportunities for our to-be process. In the previous example, we identified an opportunity to capture cell phone voice data within our as-is process. In the IoT, voice data, camera data, satellite data, system data, and so on are all important considerations when analyzing and improving business processes. For instance, patient vitals (system data) provide an opportunity for change in our to-be process if the equipment used to monitor the patient can upload the data via the system and transmit it via satellite to the hospital directly. This what-if change could significantly impact the start of the following process at the hospital. Things we usually wouldn’t think of as connected are now connected or have the potential to be connected. Think of it this way: These devices produce data and, when connected to the internet, can reside in the cloud, thus enabling you to perform analytics. As these connections become more explicit, you will see patterns similar to process modeling.


LEARNING BPMN 2.0

5.1.1.3 Shaping To-Be System Requirements

As enterprise architects, we are constantly expanding the application of EA knowledge. Creating actionable knowledge with our enterprise assets (EA artifacts, primitives, and captured tacit knowledge) is essential for linking operational processes and capability with IT solutions. If we had to focus on one area of this book, it would be the modernization of legacy systems. Today, many organizations are still filled with legacy systems or legacy processes that rely heavily on manual actions and aging systems. These legacy systems significantly reduce the competitive advantage potential of an organization, which to us, provides the biggest opportunity to capture the as-is state and the steps organization members complete to help shape the to-be system requirements to modernize an organization’s aging systems and legacy processes. Let’s examine the following process model,in which we examine a legacy process using a combination of commercial tools and a legacy system. For this as-is, you will notice we use the account manager in the pool. The key focus is the account manager perspective, as we identified vital problem areas during our high-level analysis. We created a drill-down perspective using BPMN. So, this is a little different than you might be used to seeing. In the example, we represent two lanes as tools: the commercial tool user interface and the account module user interface. We are doing so to illustrate a significant problem in our legacy process. This technique allows us to describe each tool’s unique steps and highlight our reliance on the commercial tool and existing issues. As you will see, to get a report, we must request it in the commercial tool. Additionally, we must wait for the commercial tool automation to provide the report. Once the account manager receives the report, they must manually review its accuracy. The organization needs to identify these manual steps in the legacy process because, in an earlier company study, it was determined that the account manager spends twenty hours a month manually reviewing reports and completing them outside of any known system. Even though the account manager has access to the report in the legacy system, determining the report’s accuracy occurs outside of the system.


REAL-WORLD BPMN FOR PRACTITIONERS

Figure 273: As-Is Legacy Process and Legacy System Business Process Model

We are in luck, however, with BPMN. We can use this as-is model as our baseline to create a to-be version to help identify new system requirements. While the BPMN model won’t provide all the details needed to hire a vendor or put software developers to work, it will provide the necessary information to illustrate what we expect our to-be state to look like and how it will reduce our process time by eliminating current manual actions. We removed the commercial tool in the following model and updated our application to account for key features and automation. We now need to improve our processes and the accuracy of our reports. Ask yourself this: What else could we have added to our to-be model? Our answers: We could have added data requirements to give it that extra detail or text annotations to shape our expected runtime or activity processing time. Did you think of something else? Join our discussion on the forums and share your insights.


LEARNING BPMN 2.0

Figure 274: To-Be Automation System Requirement

Like many of you, we love to be able to leverage our BPMN models for various efforts. While the list we presented is not all-encompassing, it does provide some insights you may find useful in a few areas.

5.2 Your Organization’s Role in Applying Success Factors for BPM Initiatives

We wanted to conclude this section with a discussion of essential considerations for modeling with BPMN. Specifically, we wanted to identify critical steps required for successful BPM initiatives using BPMN. Many organizations that have implemented BPMN have various levels of commitment and support. We have identified some key success factors you can use and help instill in your organization during our research and customer engagement. Business process modeling notation key success factors reflect: (1) a set of organizational functions, (2) learning mode activities that influence the creation of knowledge, and (3) best practices for the application of business process modeling activities that affect the development of business process models. We group key success factors into three categories: management support, support for learning, and practical approaches for BPMN acceptance.


REAL-WORLD BPMN FOR PRACTITIONERS

5.2.1 Management Support

Let’s start with an important consideration that will make or break successful BPM initiatives, learning BPMN, and any practical approach to encouraging BPMN acceptance. That consideration is support from management. Management support is vital.Through management support, modeling efforts can occur and flourish. Why? Because you will have access to the organizational processes and members in those processes you are trying to model out. Those who share the leadership vision for BPM initiatives will see the power of business process improvement, redesign, or reengineering. We have seen how management support improves collaborative modeling efforts and the peer-review process for developing business process models. Additionally, when leaders promote an environment for training at all levels, the development of business process models is more successful. It is also essential for management to provide the resources to purchase modeling tools for learning BPMN and supporting BPM initiatives. Good modeling tools with built-in syntax checkers, animation features, and simulation capabilities positively influence learning BPMN. They help reinforce good modeling practices. These tools also reinforce what BPMN practitioners learn. We are not saying that good modeling tools will teach you BPMN, but they help. This is especially true as you are learning BPMN, applying those learned concepts, and using a good modeling tool’s capabilities to have rule validations that help provide “on-demand” learning experience feedback. For us, that is one of the best mechanisms for triggering the double-looped learning cycle for BPMN. Conversely, a lack of management support is detrimental to learning and the application of BPMN for modeling efforts. Take, for example, when management does not perceive the value of business process modeling. When management lacks such perception, you are less likely to access SMEs and less likely to get feedback to validate the process models you are developing.Worse yet, when you get feedback, you tend to get a hand wave from leadership saying, “Yep, that looks good.”

5.2.2 Support for Learning

The most critical aspect of learning BPMN is avoiding learning by yourself. Just as management support for BPM initiatives is essential, management that embraces a learning organization mindset is vital. Let’s take a moment and take a more in-depth look at the learning support. Organizations that support learning through trainers, coaches, and mentors who are practitioners of BPMN will influence the understanding and application of BPMN. When bringing in trainers, they are practitioners of BPMN, not just teachers. Trainers who are practitioners influence the


LEARNING BPMN 2.0

understanding of BPMN through in-depth training. They can answer questions on the fly. They also provide learning experiences related to the organization’s processes because they know the value of making meaningful connections. Because in the end, if you are a supply chain company, and you try to teach BPMN using a cookie-cutter approach, chances are learning just won’t be as effective. The essential interactions among experts in the organization are crucial components for developing BPMN understanding and applying it effectively to modeling efforts. The peer-review process influences the understanding of BPMN and affects the model development process through interactions with experts. The peer-review process is an aspect often overlooked in organizations. As in scientific or business journals, peer review is a cornerstone for publishing high-quality papers. The same concept applies to BPMN. By having a peer-review process, you can improve the learning of BPMN, and the quality of your business process models.

5.2.3 Effective Approaches for Teaching BPMN and Applying it to Organizational Modeling Efforts

At this point, we’re sure that many of you will attest to the complexity of BPMN, and non-technical users will find it even more complex. In our experience, the more complex or technical something is, the more likely nontechnical users avoid it like the plague. They may look and say, “Yep, that’s my process,” without trying to understand what you have modeled. They may just avoid you. But by using your knowledge about your organization’s processes and what you have learned in this book, you can apply some techniques to improve the acceptability of BPMN while enhancing the understanding of BPMN for non-technical users. The first approach you can apply is looking at the modeling notation subset you are using. Using every notation is not helpful, as nontechnical users will become quickly overwhelmed (cognitive overload). But take the time to develop a simple legend explaining the basic notations in a way that relates to your organization’s processes. You can remove the fear of not knowing or mitigate the overloading cognitive performance of those reviewers. This means taking time in your organization with other BPMN practitioners, examining what that BPMN legend would look like, and thinking about how you can describe the notations to resonate with readers. Doing so will enable you to connect with those readers and build up their basic understanding of BPMN over time. Additionally, it will also allow those nontechnical experts to see themselves in the business process models you are developing. If those non-technical users become advocates of your work, you will have a higher chance of success as you continue modeling your organizational processes.


REAL-WORLD BPMN FOR PRACTITIONERS

We created a legend for clients in the past and posted a copy on our website; feel free to use this as your baseline and modify it as fits your organizational process needs). We moved away from some BPMN languages and tailored it to a specific business audience. The second approach we have found helpful is keeping it simple. Not just in the notations we use for the first round of modeling but also in how we model. We focus on keeping it simple by capturing the happy-day process. We can keep the client or expert engaged in what occurs and teach them the basics of a typical business process flow. Expanding after that first modeling session is critical to ensure you don’t fall into the trap of misusing BPMN for the sake of always keeping it simple.

5.3 New Insights, Experiences, and Reflections

In Chapter 5, we shared some of our real-world practitioner examples with BPMN, software delivery, and our views on the organization. This section provides another real-world example using BPMN and simulation. We have found process simulation useful as a practical approach for solving a wide range of complex problems. In some cases, simulation makes it possible to present results by examining large data sets. Those results are critical in helping organizations make funding decisions that enable them to achieve their objectives. Later, in section 5.3.2, we present our views on the various personas within your organization. These personas bring with them perspectives that are unique to their organizational purpose. Understanding these perspectives allows teams to convert what appears to be conflicting goals into collaboration and teamwork. As a software engineer or an engineering lead, you are a member of the Engineering Persona, for example. As such you should understand why your guiding principle is “Be Clever”, and what principles guide the other personas with which you will interact. We hope that this understanding will reduce miscommunications and maximize trust.

5.3.1 Process Simulation – How to Extend Your BPMN Models

This section explains how you can extend your BPMN modeling work with process simulation. In our current roles, as lead enterprise engineer (Josh) and lead enterprise systems engineer (Wes), we commonly face complex problems. As many of you know, there is no one way to solve a problem… there are many ways. The new insights we share in this section do not tackle all the possible solutions to problems (that would take multiple books to cover in sufficient detail). This section provides an example of process simulation with BPMN.


LEARNING BPMN 2.0

5.3.1.1 Introduction to Process Simulation

Business process management can be used to support organizations as they transform their business; from both an efficiency and effectiveness perspective and improve enterprise agility and customer experience. How do you know you are making the right decisions when executing business process management initiatives? How do you test assumptions? We have observed the costs to organizations that do not adequately invest in studying to-be changes before procuring software or implementing process changes. Let’s explore a real-world example and how you can extend your BPMN models with process simulation to solve a customer problem.

5.3.1.2 Identify Stakeholder Objectives

Let’s look at a scenario where the leadership team comes out with new strategic objectives.They want to optimize and standardize business processes to improve customer satisfaction (new project). The leadership states: “Customer dissatisfaction is at an all-time high at 95% when it comes to our company when getting contractors deployed out to repair rental units”. Having a measurable problem is a great starting point as you engage with stakeholders to determine their objectives for a project or initiative. As analysts, engineers, and project leads, you will need to engage in discovery sessions with leadership teams and ask questions to understand their objectives. We will keep it simple and focus on only two stakeholder objectives: to “improve customer satisfaction rate” and “reduce cycle times of core processes.” With stakeholder objectives, we can shape the use case and begin the journey for process simulation.

5.3.1.3 Create the Use Case

A common question for new practitioners is how do we shape our use case? There are multiple approaches for the development of your use case. The following is a straightforward approach we take:

  1. Scope the use case based on stakeholders’ input
  2. Develop research questions concerning a problem
  3. Identify a goal for the use-case Using this simple approach, we created the following.

REAL-WORLD BPMN FOR PRACTITIONERS

Figure 275: Use Case Example

5.3.1.4 Understand the Differences Between Process Models and Process Details

Before diving in, let’s review our previous statement from chapter 2. “In general, business process modeling is an abstract activity. We model business process models to surface details (e.g., who, what, when, where, and why) of complex domains, thereby engaging in this abstract activity. We create a structured model that can be studied and re-engineered.” In chapter 2, when we described the abstract activity of modeling, we described business process modeling in the literal sense. Can we reengineer based on a business process model alone? No, not really. We need something more… we need process details! Let’s spend a moment distinguishing the differences between a process model using BPMN (which has been the focus throughout this book) and process details using BPMN, which we spent less time on as this is easier to model. The following model we will use for our hire contractor process. To keep it simple, we only use a few notations here to describe the hire contractor process’s activities, decisions, and events. In your learning process, we hope this model does not trigger BPMN Information Overload. There are two reasons why we think it shouldn’t.  First, through meaningful learning experiences, you have created knowledge on how to

understand and apply each notation  Second, we created a process model that is highly intuitive to read and easy to understand


LEARNING BPMN 2.0

Of course, if it does, join us on the forums and let us know. We are always interested in learning when something isn’t effective. This model was highly effective when presenting our initial analysis to our customers, as it helped communicate our diagnosis of business user pain points.

Figure 276: Process Model for Hire Contractor Process

Now let’s drill down into the process model. Trisotech makes it easy and convenient to capture process details. In the following business process model, we describe the details of our process

model by focusing on the 5-Ws (Who, What, When, Where, and Why). Trisotech also enables you

to capture other things like Time, Cost, Value, Quality, and Gaps. Each modeling tool is different, but we could generally capture this level of detail when using other tools. Populating the process model with details lets, you examine the outputs and capacity information. With a bit of work, you are essentially completing a digital transformation of your business process library.


REAL-WORLD BPMN FOR PRACTITIONERS

Figure 277: Process Details for Hire Contractor Process

Have you ever asked what we can do with all of this data? I know early on in our career and first using BPMN, we did. By populating our business process model with process details, we can:

 Use simulation to support procurement or modernization through a cost-benefit analysis.  Compare the current state of operations with some future or desired state.  Identify obvious process challenges, such as excessive handoffs, rework, limitations in the

capacity that cause bottlenecks.  Assess the expected financial impact of improvements resulting from new technology or

process change.

 Provide solid decision support for the changes to processes.

To utilize these process details, we will need some capability for simulation. Depending on the tool you are using, this could be a discrete event simulation (such as Monte Carlo) capability, business process simulation (such as BPSim) capability, and agent-based simulation (such as Multi-Agent System). There are books, articles, and videos on a wide range of simulation capabilities. The intent here is to provide a high-level introduction.

SURFER DAVE PRO TIP

Bro, just like in surfing, if you oversimplify the risk when teaching advanced concepts, it could have disastrous results in practice. It is easy to construct a simple process model and load every detail possible. However, your simulation results undoubtedly lead to poor decision-making and unnecessary risk through that oversimplification.


LEARNING BPMN 2.0

If you are a new business analyst, architect, or engineer, you may be asking, “I understand how to build and read process models, but where do I get the information for process details?” We focus on our methodology for finding process details for our use case. How to get the process data for your baseline? There are several ways to get this data if it is not readily available. The following was how we bucketed our data for the use case and our techniques.

Table 10: Data Collection Approach for Use Case

5.3.1.5 Setting Up Simulation Parameters

Now that we have our data, it is time to set up simulation parameters, a critical step. We use the business process simulation capability BPSim, an additional capability that Trisotech enables to set up our simulation parameters through their tool (at a cost). Since we are focused on teaching realworld examples and not necessarily Trisotech BPSim capabilities, we focus on the basics for this book. The BPSim plugin enabled us to capture additional process details that are critical for setting up simulation parameters, such as:

 The duration of an activity or process  Length of each activity
 Model the probability distribution for the amount it takes for each activity  Transactions entering the process
 Model the probably of the decisions  Resource cost

Ok, now we move from abstract activities and describe setting up simulation parameters and running the simulation in more concrete descriptions. The flow changes slightly and reads more like instructions. With that, let’s begin.


REAL-WORLD BPMN FOR PRACTITIONERS

We start by setting up the scenario simulation parameters, including a set of assumptions we make.

 Simulated to model a single working week  Set office hours to 8 hours per day, so a 40-hour duration.

 Each replication simulates different random seeds. The more variation in the process, the

more replication we run to improve the confidence of the results.  We also indicate that the results are in minutes, and the currency is dollars. Setting up simulation parameters is that simple. The tool does offer additional features such as specific working hours for resources, yearly simulation, and so forth. But for our example, let’s keep it simple.

Figure 278: Example of Scenario Parameters

By capturing the process details and populating the business process model with data, you can extend your capability for simulation quickly. For learning purposes, we focused only on identifying the cause of customer dissatisfaction.


LEARNING BPMN 2.0

Figure 279: Example of Processing Time and Truncated Normal Distribution

We identified a specific problem with reviewing estimates and evaluating contractor bids through interviews. The following steps are how we began studying the problems through simulation.

  1. Input the time it takes for the review of estimates. a) The data of our as-is model ranges from 2-4 hours per estimate. i) We use a truncated normal distribution with an average of 3 hours. It just means that this is how long it takes to review each contract estimate in most cases. b) For some activities, we model the activity durations, break down the durations and insert multiple parameters such as queue time, wait time, processing time, etc.
  2. Insert historical data. Set up the simulation parameters at which the housing managers receive the rate contractor estimates. a) We enter this use case that contract estimates are received every 5 minutes during an 8-hour shift. Which equates to roughly 487 estimates in a 40-hour workweek.
  3. Input resource costs. a) Housing managers, on average, make 40 dollars an hour, and, on the team, there are 20 housing managers.

REAL-WORLD BPMN FOR PRACTITIONERS

5.3.1.6 Study Complex Problems with Simulation

Running the simulation revealed three profound findings: what will the running simulation tell you of the as-is state? And more importantly, how can you use the results for the use case?

  1. The housing team only can handle 194 of 487 contractor estimates received in a timely fashion. a) Which means that 293 are not processed quickly on average and are a potential source of customer dissatisfaction.
  2. The results point to a bottleneck during the review estimates activity, with average process times taking 3 hours. a) Extending this further with our real-world example, we ranked all activity times from longest to shortest and by activity costs.
  3. The results also tell us that the source of the bottleneck contributes to roughly $25,600 of the $32,000 salary for reviewing estimates per week. For readability, we also present a snapshot of critical results.

Figure 280: Simulation Results


LEARNING BPMN 2.0

5.3.1.7 Explore the “To-Be” with Data-Driven Simulation

Using the as-is process baseline, we can create a set of to-be processes to determine if different process changes or technology insertions decrease the processing time and improve customer satisfaction. We insert a new technology and explore how a reengineered process achieves a company’s outcome. That is the power of a digital environment. Based on the architecture and capabilities, we can look at technology and calculate new execution times and resources required before procuring a solution. You can run as many Alternative of Analysis or (AoA) scenarios as you want in Trisotech, all within one simulation. We use one technology solution for this use case and calculate estimated processing times based on the notional capabilities. The solution we targeted for procurement automates and optimizes two critical activities for this use case. So, we update the simulation parameters and reengineer the process model describing the to-be changes.

Figure 281: Process Reengineering and Establishing To-Be Simulation


REAL-WORLD BPMN FOR PRACTITIONERS

Playing in this digital environment and exploring simulation of the to-be revealed the following results:

 The average time to review contract estimates would be 1.5 minutes

 A decrease of 2 hours and 58 minutes

 The average processing time before the contractor selection process begins at 11 and a half

minutes  Decrease of 3 hours and 18 minutes

 The organization now has the capacity for completing 489 estimates with only three

resources required—or a 150% capacity increase

Figure 282: Power of Process Simulation

We calculated headcount reduction with cost savings of $1,414,400 per year or $27,200 per week in our use case. As productivity increases from automating one task and optimizing another task, staff functions can be moved to other areas that require more critical thinking skills while increasing the review estimate capacity.


LEARNING BPMN 2.0

A common question when it comes to automation. What happens to the 17 housing managers that are no longer required to do those tasks? It’s a paradigm shift for some. It is a paradigm shift that needs to occur (already occurring in many industries/organizations) in how we think about our workforce of tomorrow. With automation and specific machine learning applications, organizational leaders must focus on shifting resources to high-value activities within their business model requiring critical thinking skills. The challenge for leaders is to harness their knowledge and experiences in those critical activities that cannot be automated. That answer is for another book.

5.3.2 Personas

It is difficult to talk about software development without also talking about the various personas that drive the product. Even when a single person builds software products for personal use, this person switches between several personas without possibly realizing it. For example, when developing code, the single developer takes on an engineering persona. Later, this single developer will take on a management persona when she looks at the clock and realizes that she needs to cut features if she is going to finish the code before starting her vacation next week. She will need to weigh which features are more important to the customer persona who imagined and the grandiose final product that the sales persona promised. Of course, in a larger team, several people fill the roles of these personas. You can see how whether you are developing software alone, or as part of an enterprise development team, personas are as integral to the final product as the code itself. After all, the software is made to enable a human purpose. This is true even if the software is only an interface between two machines. It is important to understand these personas for the single purpose of building empathy and understanding between persona groups. This empathy is critical to breaking down organizational barriers that occur because of natural and desirable friction between groups. The Sales Persona might want a solution delivered yesterday, the Management Persona might want the solution delivered without scalable code, and the Engineering Persona might want to reduce technical debt before working on a solution. Understanding each other helps with a compromise which ultimately enables the delivery of a final product with greater value than if the various groups were at odds. The personas we want to cover in this section are some examples. The personas are the Sales Persona, the Engineering Persona, the Compliance Persona, the Management Persona, and the Stakeholder Persona. Below are the guiding principles for each persona group.

  1. To the Sale Persona: Be Empathetic
  2. To the Engineering Persona: Be Clever

REAL-WORLD BPMN FOR PRACTITIONERS

  1. To the Compliance Persona: Be Invested
  2. To the Management Persona: Be a Servant
  3. To the Stakeholder Persona: Be Involved
  4. Bonus – To the Customer Group: Be Needy We hope that you can think of other personas from your experience, or alter the ones listed here to fit your situation and imagine a single guiding principle for that persona to embody. Keep in mind that although every persona should embody one principle, all personas share in some part of each guiding principle.
5.3.2.1 To the Sales Persona: Be Empathetic

The Sales Persona is the one who faces and interacts with the customer the most. The reality is that anyone who engages with the customer group should embody the Sales Persona. Sales have the unique role of understanding what a customer wants and describing those customer wants to the other Personas to transform those wants into a product. This applies equally to profit or non-profit endeavors. For example, a soup kitchen feeding the homeless must convey the needs and wants of its customer group to the financiers and volunteers who will deliver the food. Which begs the question: Who is the customer of a soup kitchen? The easy answer might be that the customer is homeless. An insightful Sales Persona would also consider the local politician looking for a photo-op or philanthropists who feel good when helping others. It is the Sales Persona who must identify and empathize with these groups to deliver targeted value to every external persona. What are other customers of a soup kitchen? What do they want? It is easy to make the assumption about who the customer is like the statement “the customer of a soup kitchen is someone down on their luck”, but when the Sales Persona looks beyond the obvious it can make a difference between a good product and a product that becomes a new benchmark for the industry. A software product is no different than a soup kitchen to an empathetic Sales Persona. The customer group might not just be the user clicking on controls on a screen. Customers of software products could also be consumers of your API, other developers who may use your open-source libraries on personal projects, or students who receive free licenses of your enterprise software for learning purposes. The Sales Persona must understand how to bring the customer’s needs and wants to the product development team by using empathy as their vehicle. To drive the point about empathy and the role of the Sales Persona, I’ll quote investor Mark Cuban who in a 2015 Facebook post wrote: “Learn to sell. In business, you’re always selling: to your prospects, investors, and employees. To be the best salesperson put yourself in the shoes of the person to whom you’re selling. Don’t sell your product. Solve their problems.”


LEARNING BPMN 2.0

5.3.2.2 To the Engineering Persona: Be Clever

So many times, we see engineers in discussion with customer groups attempt to talk to customers about their desired features. Engineers have a technical understanding of a domain that allows them to make something out of nothing. To be an engineer is to have superpowers! That’s why when engineers discuss the difficulty of an ask with a customer group to discourage them from the request can be so disheartening. Good engineers thrive on constraints and showing off their ingenuity. Being clever is their guiding principle. One fantastic exercise for a group of engineers is to give them a problem with a ridiculous constraint. For example, ask your engineers to design a coffee maker using a cow. Give them 15 minutes to draw something and at the end, have them share it with the group. You will be surprised at how something you thought was not possible 15 minutes ago, is quite viable with a bit of effort! But what happens when a customer asks for something seemingly impossible, shouldn’t engineers alert the customer of the viability of their request? No. Engineers should not judge the validity of a request, but they should either build prototypes or use experience, to describe alternatives. Generally, engineers should provide at least three options. Below are some examples.

 Option 1 Expensive and slow: “It will take many years to land a man on the moon, but the

costs will be high”

 Option 2 Fast and incomplete: “We can build a payment system, but only for U.S. customers”  Option 3 Minimal and iterative: “We can make the algorithm for an autonomous vehicle,

but it will only work in a simulator for now” What other options can you think of?

5.3.2.3 To the Compliance Persona: Be Invested

If you work in an environment that is heavily regulated by compliance constraints, you likely face a compliance department or compliance stakeholders. You will see this persona most often in health care, financial, and government systems, however, your particular organization will likely have a policy department that constrains your engineering solutions in some way. From the Engineering Persona perspective, the Compliance Persona can feel to have the opposite contributions to that of the Engineering Persona. The Compliance Persona’s main focus is to enforce adherence to policy and to report that compliance to a governing body. This means that many times compliance is directly at odds with engineering decisions because policymakers do not understand technical matters and do not write a policy with second-and third-order effects of the policy in mind.


REAL-WORLD BPMN FOR PRACTITIONERS

For example, we once witnessed an exchange between a cloud engineering team and a compliance team. The cloud engineering team was using serverless technology to deploy an application, but the compliance team was threatening to pull the solution from production because of a policy requiring the use of complex passwords on each server. The engineering team was frustrated because there were no servers to apply passwords to and there was no one in the management staff capable of deciding on the matter. The engineers, using their cleverness, devised a plan to stand up a virtual server in the cloud as part of their automation scripts. This server would require a password for login which met the intent of the policy, and once the policy was verified as checked off, the engineering team would destroy the virtual machine. The sad-but-funny part of this story is that this solution wasn’t something that the engineers kept from the policy team. The policy team was in complete agreement with this approach and documented it as “compliant”. It is critical to the success of a product that the Compliance Persona be invested in the overall success of the product. Engineering Leads should spend time educating the Compliance Persona when possible, and elevating cultural barriers that prevent a compliance officer from overriding policies that don’t apply or produce no risk to the business. The Compliance Persona must also be invested with the other personas much like the Engineering Persona must be. Individuals with Compliance Persona duties must go out of their way to be matrixed in with Engineers, Stakeholders, and Management Persona teams so that compliance challenges are identified early in the production process.

5.3.2.4 To the Management Persona: Be a Servant

The Management Persona provides leadership, decision-making, mentoring, and other services to a product team. In addition to their staff, this persona interfaces with the Stakeholder Persona, and the Management Personas from other teams. The title of “manager” is not a requirement of the Management Persona. Engineering Leads behave as part of the Management Persona, for example, because they have a team of people who look to them for guidance, mentorship, and conflict resolution. This is why it is so important for members of the Management Persona to be servant-leaders. Servant-leaders earn the respect of the team and the respect of others because they do not put their own needs first. Asking “what can I do to make someone’s workday easier?” is a question that the Management Persona should ask frequently. This question is so fundamental that the Management Persona should carry the title of “Blocker Remover” on their business cards. Why? Because the Management Persona is incentivized by results. The best way to achieve positive results as a Management Persona is to enable the people on your team to work without friction. This also means that the Management Persona will address personnel issues immediately, directly, and with


LEARNING BPMN 2.0

firmness. If members of a team do not have confidence that personality issues will be resolved fairly, they might try to resolve the problems themselves. This can lead to a lack of productivity, unhealthy cliques, and low morale. Here are some ways to exercise your servant-leadership today:

 Make your team’s coffee in the morning  Spend time learning about each person’s hobbies, family, and background

 Learn everyone’s name, pronunciation, and spelling; you can earn a lot of favor by learning

how to spell a difficult name!  Be first to propose an unpopular opinion that someone on your team may have  Clean the snow off of your team’s cars before they leave for work These are just some ideas, of course, and we hope you have others to share with your team!

5.3.2.5 To the Stakeholder Persona: Be Involved

The Stakeholder Persona is the most influential persona of the others. The Stakeholder Persona can represent the financial interests of the product, represent customer needs and wants that drive product features and trade-offs, the internal political interests of various influential people in an organization, and many others. This Persona is the one that all other Personas work for. It can be easy for someone in the Stakeholder Persona to demand that the Management Persona deliver results, and then not engage again until the next status meeting. This can work and can deliver results, but if the desire is to build a product that delights the customer, then the Stakeholder Persona can add value to the delivery of the product by becoming involved in the activities of the product. However, it is important not to confuse involvement with micro-managing or dictating solutions to anyone in the team. Do you remember how earlier we talked about how each persona shares multiple guiding principles? This is one of those examples because much like the Management Persona, the Stakeholder Persona must also be a servant-leader because both personas are about relationships with other people. The Stakeholder Persona should not become a blocker but should remove. How can the Stakeholder Persona be involved as servant-leaders? There are many answers to this question, but one way is to unite other Stakeholder Personas towards a decision. It breeds confusion amongst the other personas when Stakeholder Personas appear to be divided on a key issue. Stakeholder Personas should be educated about topics when discussing controversial decisions with their counterparts. When Stakeholder Personas decide on a way forward, dissenting members of the group must not deviate from the decision. This collaboration breeds a culture of teamwork that every member of the product team can sense.


REAL-WORLD BPMN FOR PRACTITIONERS

One of our favorite use of Stakeholder Persona involvement is when they relay the dreams and aspirations of the product to everyone in the product team. The enthusiasm must be contagious and encouraging. Many times teams are working on a product that has an uncertain future. Perhaps it is the first time that anyone attempted to deliver the product’s solution, or the product is trying to unseat an enduring industry leader from the throne. During difficult times, it can be easy for individuals and teams to think of all the reasons why a product might fail. The Stakeholder Persona is the best place to create the motivation to keep everyone focused on the “what-if ” they get right. You might have seen the following quote from Antoine de Saint-Exupéry paraphrased differently elsewhere, but contemplate how this applies to the Stakeholder Persona’s involvement: “One will weave the canvas; another will fell a tree by the light of his ax. Yet another will forge nails, and there will be others who observe the stars to learn how to navigate. And yet all will be as one. Building a boat isn’t about weaving canvas, forging nails, or reading the sky. It’s about giving a shared taste for the sea, by the light of which you will see nothing contradictory but rather a community of love.” [21].

5.3.2.6 Bonus: To the Customer Persona: Be Needy

This is a bonus section because the Customer Persona is an external entity to the product team. However, it is important to understand the Customer Persona and appreciate their guiding principle of being relentlessly needy. The Customer Persona is the one that your product is trying to court. They do not have to be loyal to you, your team, or your product. The Customer Persona is the most fickle of them all. They can praise your cleverness and insight one day, and the next day forget about your existence because of another product on the shelf. This fickleness is especially true with intangible products like software. If you have the attention of the Customer Persona, do not betray their short attention span by telling them they cannot have what they want. We covered this in the Engineering Persona section earlier. Your team can approach a needy Customer Persona in two ways. The first is to think that because no one has been able to satisfy their needs, then those needs must be unreasonable or impossible. The second way is to realize that the more needy and difficult the Customer Persona is, the greater the opportunity to delight them with a solution. We prefer to approach the needy Customer Persona with the second outlook. Ultimately, if no one else can deliver to this need, then you will have a tremendous head start before your competitors begin to copy your solution. There are countless books, articles, and blogs about ways to satiate the neverending hunger of the Customer Persona. One of the foundational books on the topic that we strongly recommend is Don Norman’s “Design of Everyday Things – Revised and expanded edition”.


Conclusion

As

with the first book, it was hard to decide when to stop writing and end it. With the addition of Wes to the team, this was doubly hard as there were so many examples to write about. Hopefully, the 2nd edition provided learning experiences to enhance your skills further. For us, learning never ends. For you, learning never ends. If you have been engaging in practice and reflection, you are well on your way, but don’t stop with this book. We hope that you are ready to continue your journey with BPMN. There are pockets of great resources out there. The key for you,just like other BPMN practitioners, is to harness those resources to learn and apply BPMN effectively. To help you continue your adult learning journey with BPMN, we have created a one-stop shop for training material, videos, and interactive discussions. We encourage you and those in your organization to join us and share your experiences. Together, we can learn BPMN and think of new and exciting ways to depict our organizational process models. Join us at www.bpmpractitioners.com


References

[1] O. M. Group, Object Management Group Business Process Model and Notation, OMG, Accessed

May 14, 2020. [2] H.J. M. a. O. G. Leopold, “What We Can Learn from Quality Issues of BPMN Models from

Industry,” IEEE Software, March 2015. [3] J. Recker, “Opportunities and constraints: The current struggle with BPMN,” Business Process

Management Journal, pp. 181-201, 2010. [4] S. Roy, A. S. M. Sajeev, S. Bihary and A. Ranjan, “An empirical study of error patterns in

industrial business process models,” IEEE Transactions on Services Computing, pp. 140-153, 2014. [5] J. G. Fuehrer, “Learning Approaches That Influence Business Process Modeling and Notation:

A Generic Qualitative Inquiry.,” Ph.D. diss., Cappella University, 2017. [6] J. F. Davis and B. N. Bag, “Customer-oriented competitive advantage in the airline industry,”

Journal of Applied Business and Economics, vol. 22, no. 3, pp. 102-115, 2020. [7] T. Anning-Dorson,”Innovation and competitive advantage creation: The role of organisational

leadership in service firms from emerging markets,” International Marketing Review, vol. 35, no. 4, pp. 580-600, 2018. [8] C. S. Silveira, M. O. R. d. Oliveira, R. Heldt and F. B. Luce, “Trade-off between value creation

and value appropriation?,” Marketing Intelligence and Planning, vol. 39, no. 1, pp. 1-16, 2021. [9] M. E. Porter, “Competitive Strategy,” Measuring Business Excellence, vol. 1, no. 2, pp. 12-17,

  1. [10] D. A. Kolb, Experiential Learning: Experience as the Source of Learning and Development,

Upper Saddle River, NJ: Pearson Education, 2015. [11] P. M. Senge, The Fifth Discipline: The Art and Practice of the Learning Organization, New

York: Doubleday: Doubleday, 1990. [12] J. B. J. L. C. a. G. C. M. Boggs, “The Effects of Doodling on Recall Ability,” Psychological

Thought., March 31, 2017. [13] P. Bera, “Does cognitive overload matter in understanding BPMN models?,” Journal of


[14] J. Sweller, “Cognitive load during problem solving: Effects on learning,” Cognitive Science, vol. [15] R. J.Y.&. J. H.K.&. D.H.Mathalon,”Working Memory Overload: Fronto-Limbic Interactions

and Effects on Subsequent Working Memory Function,” Brain Imaging and Behavior, vol. 4, pp. 96-108, 2010. [16] M. Arbib, “The elements of brain theory and neural networks,” in The handbook of brain theory

and neural networks, Cambridge, The MIT Press, 2003, pp. 2-23. [17] F. Paas and J. Sweller, “An evolutionary upgrade of cognitive load theory: using the human

motor system and collaboration to support the learning of complex cognitive tasks,” Educational Psychology Review, vol. 24, pp. 27-45, 2012. [18] H.-h. Choi, J. J. van Merriënboer, G and F. Paas, “Effects of the Physical Environment on Cognitive Load and Learning: Towards a New Model of Cognitive Load,” Educational Psychology Review, vol. 26, no. 2, pp. 225-244, 2014. [19] J. M. M. Mendling, “Cognitive diagram understanding and task performance in systems

analysis and design,” MS Quarterly, vol. 45, no. 4, pp. 2101-2157, 2021. [20] J. M. M. Mendling, “Experimental Evidence on the Cognitive Effectiveness of Diagram,”

Procedia Computer Science, vol. 197, pp. 10-15, 2022. [21] A. de Saint-Exupéry, Oeuvres, Paris: Gallimard, 1959. [22] L. E. R. a. J. H. Ryan K Jessup, “Hurry up and decide: Empirical tests of the choice overload

effect using cognitive process models,”American Pyschological Association, vol. 7, no. 2, pp. 137- 152, 2020. [23] Z. Yu, W. Chen, Y. Kong, X. L. Sun and J. Zheng, “The Impact of Clickers Instruction on

Cognitive Loads and Listening and Speaking Skills in College English Class,” PLoS One, vol. 9, no. 9, pp. 1-8, 2014. [24] J. Recker, M. Rosemann, P. Green and M. Indulska, “Do ontological deficiencies in modeling

grammars matter?,” MIS Quarterly, vol. 35, no. 1, pp. 57-79, 2011. [25] D. Kalaitzi, A. Matopoulos, M. Bourlakis and W. Tate,”Supply chains under resource pressure:

Strategies for improving resource efficiency and competitive advantage,” International Journal of Operations and Production Management, vol. 39, no. 12, pp. 1323-1354, 2019. [26] M. Winter, R. Pryss, T. Probst and M. Reichert, “Learning to read by learning to write:

Evaluation of a serious game to foster business process model comprehension.,”JMIR Serious Games, vol. 8, no. 1, pp. 1-13, 2020.