• The MicroGuide to Process and Decision Modeling in BPMN/DMN: Building More Effective Processes by Integrating Process Modeling with Decision Modeling
    The MicroGuide to Process and Decision Modeling in BPMN/DMN: Building More Effective Processes by Integrating Process Modeling with Decision Modeling

Entries in BPM (9)


Process Interactions in Orchestrations and Choreography  

We have common definitions for process, business rules, operational decisions, business events and other things that are important to process modeling. And, I have mentioned my favorite ones (here). But we frequently ignore one of the very important aspects of process modeling: interactions. Fingar and Smith mentions in ‘Business Process Management, the Third Wave' that an interaction is the use of process desktops that allows people or participants to interact with the process. This includes workflow emphasizing assignment, task management and form-based data entry.  So, interactions gave rise to the idea of task oriented process instances that are started by a form. We see this in today’s process monitor and task list in most BPM suites. A form is a completed interaction that spawns an instance. This was, arguably, a new concept in 2002.

The BPMN 2.0 specification (here) also delves into the concept of interactions. Section 10.1 says that a public process represents the interaction between a private business processes and another processes or participants. The interaction is the glue. In the specification, human interactions are a type of task with human involvement. Manual and human tasks have particular icons in BPMN that indicate that human involvement is required to complete the task. See the two figures below.


The Human Task &  Manual Task

Remember: a manual task is a task that is expected to be performed without the aid of any digitized business process. An example might be the nurse delivering medication to a patient. This is contrasted with a user task which is performed with the assistance of a software application or is scheduled through a task list manager. An example would be the approval of a request or deciding a proposition.

Interactions are critical to the concept of choreography. A key characteristic of choreography is that it is an activity representing an interaction between two parties rather than a unit of work. According to Dumas, "The Fundamentals of Business Process Management”, the interaction can be one-way, where a message is exchanged or two-way, where messages exchanged bring a return message. Each message has an initiator and a recipient. Indeed, the BPMN spec states that "choreographies formalize way business participants coordinate interactions. This gives rise to the 'conversation' shape center defined in the spec.

In Wikipedia the interaction is defined as ‘a kind of action that occurs as two or more objects have effects upon one another’. This is fundamental in the concept of the business process.


White Space in the Standards: Business Rules, Data and Process Modeling in BPMN

According to the Specification (here), BPMN is constrained to support only the concepts of modeling that are applicable to Business Processes. This means that other types of modeling done by organizations for business purposes is out of scope  for BPMN. Therefore, the following are out of the scope of the BPMN specification:

  • Definition of organizational models and resources
  • Modeling of functional breakdowns
  • Data and information models
  • Modeling of strategy
  • Business rules models

Since these subjects are critical to Business Processes, the relationships BPMN is supposed to be evolving. We also know that operational decisions need data to decide, so at this point BPMN is incomplete with respect to creating executable business processes. An executable BPMN diagram might be more complex — it is inadequate to create an executable specification.

BPMN has a data shape, the data object. A data object is a rectangle with the upper right corner folded over, as shown here:

The text label for a data object can be found underneath the shape.  Often the current state of the data object is shown as an attribute shown in brackets under the text label.  As the diagram progresses, the state of the data object can easily be read, as displayed in the Figure below.

Figure: Use of data artifact shapes.

As with the text annotation, the association line attaches the data artifact to another shape. Data Class shapes can be associated with tasks, gateways, events, sequence lines, or message lines.  In message flow, data objects portray the “payload” or content of messages.  

The use of data objects is optional.  Some diagrams may concentrate on flow, while others show the complete details Data artifacts do not directly affect the sequence flow or message flows.  Data objects provide additional information, some of it reflected in the XML schema, without changing the basic behavior of the process.  For instance, the Data Object elements can optionally reference a DataState element, which is the state of the data contained in the Data Object. The data object can detail the metamodel’s XML particularly with a ‘callableElement’. Uses the following additional elements:

  • ioSpecification,
  • inputSet,  
  • Data Input,

The data input and output are detailed in the purchase order approval example above. When a BPMN editor draws a Data Association to an Activity or Event it should generate this supporting invisible substructure.

As mentioned, the specifications are naive with respect to the origin mutation and alteration of data attributes. I've always maintained that this is the realm of business rules (mostly). That business rules through examination of data in order to decide Bolivian conditions controls specific aspects of operational decisions. Some of that data exploration includes analytics such as regressions, projections, and other techniques.

I believe the BPM industry needs to progress on standards with respect to business rules: the representation how they use things like Business Objects expressed in UM, and other expressions of the operational aspects of the business process. The BPMN specification pretty much admits weakness in this. So, even with the data input and output elements of BPMN, more needs to be done in order to specify a business process in a way that does not very important code aspects. The OMG spec on business rules (PRR) seems to be moving very slowly and it doesn't offer a clear connection to the process modeled by BPMN.


Do you have a process for business process management?

During business process modeling, a BPM technical/management team creates or tunes a business process model that supports the project’s objectives.  What are the mental processes of the team members modeling and developing business processes and connecting business events and rules? They use workshops and communication. They interview the best-performing and the worst-performing actors in the processes. They review financial reports, documentation and the notes of the managers of the current process. They identify triggering events, business rules and the process needs for policies. They design the proper flow control. They create pictorial representations.

There are institutional or traditional ways of gathering information about a process. However, few organizations know when it is time to add process thinking and business process management to formalize activities—there is no process to create new topics.

Legacy efforts create reams of paper, cabinets full of files, and databases overflowing with useful information—from management directives to marketing papers to MIS memorandums. Much important information exists here. Yet, business process modeling is different from knowledge management, quality reviews or even data modeling. The purpose of data modeling is to develop a model of what is. The purpose of business process modeling is to develop a model of what should be. Yet, how does an organization decide it is time to gather ad-hoc and undocumented activities and add the structure of business process management?

It is self-apparent to look at a factory production line and know that there is a process present; how do we discover the need for a process? Symptoms of missing process needs include:

  • Poor business or financial performance in a rapid, surprised way
  • Low morale and high employee turnover
  • Management overwhelm, (many decisions, little data)
  • Poor communications

There are other symptoms; however, deciding and clarifying when to create a process can liberate these conditions and improve business results. A well designed process has these characteristics

  • Clear goals
  • Well defined roles
  • Improved clarity
  • Increased visibility

We have identified a series of steps to deciding and delineating a ‘green fields’ or occult process in the enterprise business process framework.


Does Your Modeling Capture the 'Swiveling Chair?'

The OMG’s Business Maturity Model (BMM) (link) suggests that organizations should rely on a system of strategic business initiatives from senior management whose implementation is delegated to subordinates (roles).  The delegation acts through processes and business rules and responds to events. However, when a bottom-up process discovery is conducted, the actual process varies widely from the way management has proscribed business operations to function.  Sometimes this is because of legacy process and antiquated technology; sometimes it is due to habit.  Sometimes the need for efficiency created the misaligned processes, and employees, under pressure use creative on-the-spot (ad-hoc, undocumented) solutions. 

Modeling Run away, Manual and Ad Hoc Processes

We often encounter organizations that spend months (or years) analyzing the daily, manual work of individuals.  At the work unit, they might find workers that do not know the business’s basic strategy; let alone the rules.  For example, data entry personnel might copy data into a green screen on another system from a flat file or printout. Often they do not know why.  Frequently there was no solution available to solve the problem.  Until it becomes documented, standard practice, management might not know this. As the business grows and more technology is added, what were 2 persons become 10.  Eventually, with 20 similar processes, 200 people are doing uniformed, manual labor. 

For instance look at the process fragment  below:

Figure 1: A Consumer Credit Check

Process modelers often mistakenly identify the ‘consumer check’ task as an ordinary task with a message flowing to the credit agency. This can be misleading. Often the process is actually manual and the sales personnel are utilizing an extramural application (swivel chair activity) to gather the data. If this is the case, the process below would be more correct.

Figure 2: The Credit Check as a Manual Process

The second BMPN fragment uses the ‘manual task’ to correctly identify the use of the extra mural activity. Perhaps the use of the ratings agency’s web service would be a good ‘to-be’ process.

Seeking Solutions

Organizations need a method which:

  • Creates Models that are easy to understand; higher levels models should clearly parallel management objectives
  • Accommodates improvements and optimizations without necessitating wholesale revisions, be the structure of the models should parallel the structure of the organization, and promote process reuse or federation
  • Easily models complex processes with core patterns and templates
  • Promotes rapid modeling of processes.
  • Defines a scope and context to every process discussion

Once managers have verifed the objectives, business analysts and experts should create scenarios that achieve enterprise goals. Moreover, because process should be linked to the structure of the organizations, its goals and objectives are directly linked to roles. Until 'swivel chair' processes  are properly documented, management might not know their existence. We describe better approaches to process modeling in our second edition of the Microguide to Process modeling.

Tom Debevoise


Ten Business Rules Usage Patterns in BPM and Business Events

In my opinion, Progress Software's acquisition of Corticon marks the beginning of the end of the monolithic ‘rules-engine’. The idea that there is a business rules engine that is ‘called’ by a ‘program’ is past and there is a more nuanced understanding of the role of business. By my estimate there are at least 10 separate usages of business rules within business processes and business events.

Firstly, business rules play an important role in the rules-driven process pattern. The common monolithic conception of business rules is that it is only an element of a decision that affects the gateways of one process.
There are various opinions about this and certainly I have mine. Yet, it as the BPM industry matures it is probably wise to use more standard research methods to develop an approach. Researchers at Georgia State University and Utrecht University have identified five categories of business rules that have a behavioral influence on the business process in terms of mitigating operational risk or achieving compliance to regulation.
The five usage categories are:

  1. Rules for task sequencing
  2. Rules for actor inclusion or task assignment
  3. Rules for effect sequencing or gateway conditions
  4. Rules for data / information registration
  5. Rules for detection control or event reponses

Briefly, these five usage categories are described:

Task Sequencing: these rules influence the position of one or multiple activities/events/decision (hence process elements) within a business process.  Most often, to create a process that is compliant with the business rules, process elements are simply added, re-ordered or removed. That is, the existing process model is updated to reflect the new rules.

Actor Inclusion/Interaction or Task Assignment: These are rules that influence the assignment of tasks or decision to specific actors. There are several approaches to creating a complaint process. Firstly, defined actors, in the form of participants, can be removed/added or appointed to different elements inside the process. In addition, a processes can call business rules to delegate the activity to the correct actor.

Effect Sequencing or Gateway Conditions: These rules influence the paths chosen by gateways or conditional sequences inside the process. This is the classic pattern of the values, created by the rules, setting the conditions at gateways and directing the flow of the process. That is: the path chosen is directed by an evaluation of business rules associated with individual transaction. This is more dynamic than task sequencing where rules influence the arrangement of the paths.  An example of effect sequencing is a shipping process where, depending on the needs of the shipment, different transportation process activities need to be executed. This is the most common perception of processes and rules. To make the process compliant, business rules need to be enforced during runtime.

Data / Information Registration or Event Responses: These rules influence the recording and viewing of data and information, and the authorization to access it. Most often, to create a process that is compliant with the business rules, internal controls govern timing: how long must the recorded data be kept accurate and the predefined format of complete or registered data. That is: the registered data must contain the following information and authorization, restricting access to predefined user and roles.

Detection Control or Event Reponses: These rules influence how a process responds to events. Events can be external or internal. External events might include weather, or financial events. Internal events arise from the direct or audited results of an activity or processes.  Most often, to create a process that is compliant with the business rules multiple solutions can be used: process elements can be added, reordered or removed, we can have the process respond to an ‘event channel’ or, a new business process can be created to perform the event control.

The last type can be expanded further. Business Events open another set of 5 patterns for business rules. In the Microguide we defined several classes of decision for event processing. These usually occur in the following order: 

  1. Detection, 
  2. Distribution, 
  3. Aggregation 
  4. Correlation 
  5. Assignment

Not every event processor includes all of these steps. Also, after detection, it is not required for these steps to be executed in this order. The list shown is ideal, in theory, for all event processing situations.

Detection: In event detection, logic is applied to data monitored by the event detector. A business-relevant or ‘event-of interest’ is discovered when the event process matches the logic with the data.

Distribution: In event distribution, the detected event is immediately alerted to the affected process or systems, according the logic and levels of participation. Rules logic decides the level of involvement and the destination of the distributed event. Distribution logic can simplistic, as in a burglar alarm during irregular hours. Complex distribution logic might deliver the event based on the scale of the data within the event.
Events are distributed through two distinct patterns; either through a message, or a broadcast. The message corresponds to the BPMN message. Event processing targets the event activated messages at a process instance. The broadcast distribution method is denoted as a signal event in BPMN, and is analogous to a radio signal.  While a message persists after it is sent, a broadcast is only relevant for a short period of time.

Aggregation: Many business events are only meaningful in combination with other events of a similar or related nature. Logical significance might arise from the timing or temporal nature of the other events. In aggregation, event processing uses business rules logic to identify significant events from a group of events.
Correlation: Event processing includes a correlation step. Event processing can play a role, by detecting internal or external events and correlating these with concurrent processes or data in the enterprise. Active business processes might be identified as intended recipients. Business rules define what data or process states are included in the correlations and the logic of the match.

Assignment: At the conclusion of the cycle, in assignment, the event is assigned to one or more processes. Business rules can choose which process is assigned the event for action. As with all rules, the assignment can be as straightforward as the unconditional assignment to a single process or it can be a time, capability and dependent assignment.

An example of this is shown in the figure below:

Process modelers and business decision modelers use the three metaphors of business processes, business rule and business events these to model solutions. In early incarnation of the business rules engine, the BRMS was built as a separate engine to be included in a batch or separate process. Our understanding of the use of business rules has become more nuanced and more focused on the intended usages. If you model your processes with these rules your rules will be more focused and more compact.

Tom Debevoise