Navigation
  • 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
Friday
Mar232012

A BPMN Pattern that Avoids Complex Merges

Arun Pareek In a blog post (here), described a solution to a process problem where three parallel tasks are executing. When one of the tasks completes with a particular condition, he uses a complex gateway merge to halt the execution of the other tasks. He called this ‘dead path’ cleanup. The original paper on dead-path elimination is here.

For you convenience, I will show Arun’s bpmn use case here:

 

The use case is for a security check that verifies Citizenship, Credit and Criminal checks. The topic of the dead path was the termination of one of the tasks Citizenship or Credit, when the criminal check had passed and one of the two activities, in pink, had completed.

In the Microguide to Process Modeling in BPMN, Rick and I do not support the use of the complex merge shape because they are confusing, and hide the logic that we are trying to build with our process modeling. All the logic from a complex merge shape can be defined in a subprocess. This example is a perfect demonstration of this. The fact that the ‘criminal background check’ result will cancel the citizenship and credit is hidden in Arun’s solution. Also hidden in the solution is the fact that the 'dead-path' elimination is an Oracle specific extension.

The recommended solution, with thanks for the help to Gilles Rabaud and Thomas Allweyer, shown here in an inubit (link) process modeler:

 

 

This BPMN:

  • Places the criminal check in a subprocess and the other activities in an enclosing subprocess
  • Starts these in parallel
  • Raises an exception to the border of the outer subprocess if there is a failure in the criminal check
  • For the credit and citizen check, the first activity to return a valid check escallates the inner subproces

 

 escallation and errors manage the threads in the same manner. The BPMN 2.0 spec explicitly provides for thread termination with the error event plus (conditionally) the escalation event.  

In my original post on this topic, several reviewers noted that I did not cover the exact use case described by Arun's post. The point of the complex merge was to cover the case where the Criminal Check passed and either the Citizenship or the Credit check passed (activities in Pink, here). In this case, you can place the Citizen Check and the Credit Check in a subprocess and when one passes then use the raise escalate the edge of the subprocess.

This shows the power of the escalate shape and makes it very clear what is happening.

While this approach requires more canvas, it is clearer what is happening and why. This said, I understand that Arun was merely demonstrating how to use a complex merge in the Oracle Tool.

Monday
Mar192012

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.

Sunday
Mar042012

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

Sunday
Dec112011

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

 

Friday
Nov252011

Process, Rules & Events: Critical Business Modeling Methods

Business process modeling, decisions, and business events describe the business, not the technical details. These are evolving, strategic management methods that meet today’s challenges. They work together to make it simple for an organization to update underlying rules or processes activities without complicated redeployments of production systems.

 

Figure for business rule pattern 3, the sequence or path of the process is controlled by the decision graph.

Over the last 5 years, BPM/BR represented a change in the language and symbols that we use to describe business models systems—these methods have become more business-centered and less tied to the technical details of systems. In the past, the IT industry has moved first from information engineering (IE), to object-oriented software engineering (OOSE), to use case analysis. Along the way, commercial off-the-shelf ERP software such as SAP and Oracle Financials became an important part of commonly used technology. The latest methods changed the focus from mathematical theories of data and functions into graphical notations of what the business does. For instance, IE uses an entity relationship diagram (ERD). The ERD depicts relational calculus formulas. A business process diagram, in BPMN, looks and acts like a white board, and business rules have similar graphical descriptions such as decision graphs and decision tables for the rules.

With older methods, data modeling and use case analysis created an immediately outdated technical snapshot of how the organization does business. Businesses always need to change their events, processes and rules to remain competitive. Data modeling and use case analysis do not easily help with these changes in applications. So, in some ways, software based on the metaphors of Process, Event and Decisions is the next step in modern software. Instead of writing programs in Java or C#, these organizations model what the business does in words and diagrams. To update the process or rule, you update the diagrams.