You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 19 Next »

Table of contents

Introduction

Today's business processes have to address many, complex requirements. Mass customization leads to personalized, contextual products being offered by governments and enterprises. As a result, the business processes for selling and offering these products are divers and contextual as well. At the same time, regulations in the area of compliance and a growing rate of change introduce additional complexity. These developments pose major challenges to the field of business process modeling (BPM). Conventional process modeling, in terms of activities and the flow they are executed in, has proven to lead to complex and often rigid business processes. Dynamic processes, as part of dynamic case management, are an answer to the problems and challenges that conventional business processes face.

Dynamic processes

Dynamic processes are processes in which not all possible scenarios are completely delineated upfront. In dynamic processes there is no diagram, model or code available that tells us which possible scenarios can occur and what to do when. In stead of meticulously connecting activities to establish completeness in flow, in dynamic processes all activities can attribute to the process. For each activity that is part of the process, a precondition simply states when the activity can be performed. Such a precondition is a boolean statement that makes use of available data, artifacts and the state the process is in. A dynamic process engine (like Blueriq) will decide at runtime which activities must be performed at any given moment in the process. In Blueriq, dynamic preconditioned activities are modeled as ad/hoc tasks.

From a Blueriq-point-of-view, it is not mandatory to use preconditions and ad-hoc tasks exclusively, nor is it mandatory to use flow exclusively. One of the unique aspects of Blueriq is that both approaches are available and can be intertwined to get the best of both worlds. So whenever there is an activity that may only be performed when another activity is completed, it can be modeled with flow.

Design

Many people are concerned that - when using ad-hoc tasks - the business process model becomes more difficult to understand and maintain than when flow was used. In situations where no good design is made, they might very well be right! If a process with 20 activities was modeled by simply piling all up all these activities and creating preconditions for all of these activities, this will have no benefit over a flowchart.

In business processes however, it is very uncommon that all activities can be applicable throughout the entire process. At a certain point (in dynamic case managment terms: when a certain milestone is reached), some activities are simply not part of the process anymore. Or not part of the process yet. This is why business processes can be dissected into phases. Using phases, milestones, ad-hoc tasks and preconditions will result in really dynamic and flexible business processes, without the downside of delineating all scenarios upfront and connecting the activities with all possible paths.

Below a schematic outline of such a process is shown.

It is not really necessary to understand every tiny detail of the process diagram shown above. It is more important to understand the different dynamic case management concepts behind it: Phase, Task/Activity, Milestone, Precondition. These concepts are discussed below.

One of the aspects of the process design shown here, is that on the highest level, we speak of phases rather than processes. A phase resembles a period of time within the entire process when you are free to perform a lot of tasks that are applicable in that phase and contribute to the goal of the phase. The goal of the phase is called a milestone (in this diagram depicted by a diamond ). Whether a milestone is reached or not is merely a decision, based on availability of data and artifacts.

The tasks within a phase are mostly ad-hoc or automated, but this is not necessary. Blueriq has the ability to mix ad-hoc and automated tasks with flow-oriented tasks. The most important aspect of this process design is that it the availability and necessity of the tasks depends on the availability of data and artifacts, and not on the completion of other tasks. 

As mentioned before, phases consist of tasks. These tasks produce data, which is entered into the system, for instance about an applicant or about a desired product. Tasks also produce artifacts, such as uploaded documents, pictures etc. and generated documents. Preconditions are decisions that tell when the tasks can be (or even must be) performed. These decisions are all based on data and artifacts.

In the design shown above, a row is reserved for the roles that participate in each phase. Although absolutely necessary in business process modeling, it is left out of scope in this article.

An example of a process with four phases is given below.

The process above shows different dynamic case management concepts, such as different types of tasks and phases.

Sequential phases

Most processes are - from a high point of view - very linear. So is our example: it consists of the sequential phases Apply, Pay, Decide, Register. In the vast majority of business processes, all phases are singular and linear, meaning a case or process will always be in one phase and after that phase, another phase will follow.

Skipped phase

Sometimes a phase can be skipped. In this particular example, when registration is rejected on grounds of inadmissibility, the phase registering is skipped right after deciding. The rejection because of inadmissibility is done when the application is not complete or documents are not valid and the applicant is not able to provide the necessary information. When the application is complete and all documents are valid, registration could still be denied. This is because the application is not eligible, although complete and valid. Non-eligible applications are registered as well as eligible applications, but with a negative decision. Rejections, as mentioned before, are not registered at all.

Always available tasks

Sometimes there are activities/tasks that are always available. In this example, it is always possible to register some sort of contact between applicant and the back office, for instance by mail or telephone or in person. This is done using a repeatable task (), without a precondition throughout the process.

Life events

Events such as relocation or death of the applicant or, in other cases divorce or unemployment, will trigger the process from outside. For these life events, message events are used.

Process end

After the final phase, this particular process may not end. In this design, a conditional node (that will never ever become true) has been added to keep the process from actually ending.
(In Blueriq, ending a process will end the Blueriq-application).

Shown below is one particular phase of our example process (Apply), containing five tasks.

The process above shows another set of dynamic case management concepts.

Hybrid process: Automated tasks, Manual tasks, Ad-hoc tasks

In the process diagram of the first phase (Apply), we see a hybrid process, containing automated tasks () as well as manual tasks. Furthermore, we see flow-oriented orchestration of these tasks by means of arrows and ad-hoc () orchestration by means of preconditions (). This is a very strong feature of this process design; with Blueriq it is possible to design processes that contain the best of both worlds. The automated task LoadPersonalDataFromBaseRegister must always be performed first, this is why the task is connected to the start event of this phase by means of a flow-arrow.

Repeatable tasks

Some of the tasks of the phase Apply are repeatable (), such as UploadDocuments. It is always possible to upload documents within the Apply-phase, even after documents have already been uploaded. There is no precondition on this task, so it can always be performed.

Mandatory task

In this phase, there is one mandatory () task, RequestProduct. A precondition will determine whether the task may be performed or not, but the phase Apply will not end unless the task is performed.

Preconditions

All other tasks can be performed in the phase as well, but the order is not set in stone, neither is the applicability of these tasks. Preconditions tell us when the tasks may be performed and (as mentioned here) a Decision Requirements Graph will tell what the precondition is, as shown below for the task RequestRegistration.

Milestones

Milestones (in the process diagram depicted by a diamond ) are used as goal for each phase. A milestone is merely a decision and is based on data and artifacts. The milestone for the phase Apply for instance is only true (and therefor reached) when the application is complete, meaning all mandatory data is provided and necessary documents are uploaded. Milestones are used to steer the phases at a high level. In theory each phase has one milestone that ends the phase and each phase (except the first one) will only be opened when the milestone of the previous phase is reached. It is very uncommon and nt advisable to design a process that can be in two phases at once or no phase at all.

Benefits of the design

The main question one might ask is why the design described here should be used. What are the benefits?

First of all, this design is really flexible. When an activity is added to the process, all that needs to be done is add it to the proper phase and determine its precondition. That's it. In conventional business modeling with activities and flow, adding an activity is much more complex. Most likely the activity can or must be added in more than one part of the flow.

Secondly, this design is much easier to read for business users. Flowcharts tend to be seen as 'technical' or 'IT-like', although that was never the intention of BPM. A process diagram containing phases with activities is much easier to read by business users. In stead of being responsible and accountable for dozens or even hundreds of process diagrams containing complex flow, business users are delighted to see their processes narrowed down to a few simple designs, where the complxity is not in the process itself, but in the activities. 

Of course there are some concerns regarding this approach. The main concern regards insight. In a previous article (How to use Decision Requirements Graphs to visualize ad-hoc tasks in business process modeling), we discussed how Decision Requirements Graphs help visualize ad-hoc tasks. This article was written as a response to often heard comments on ad-hoc task modeling regarding insight and overview when modeling business processes with ad-hoc tasks rather than (work)flow oriented tasks. Using the strategy described in this article, combined with the design as outlined here, will result in dynamic processes which are not only really flexible, but also maintainable.

 

 

  • No labels