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

Compare with Current View Page History

« Previous Version 9 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 and, 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 in, 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 (such as Blueriq) will decide at runtime which activities must be performed at any given moment in 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 (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.

(Diagram will be replaced with actual phases and tasks)

Process design

One of the aspects of the process design shown here is that at the highest level, we speak of phases rather than processes. A phase is a moment 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 (depicted by a diamond ). Whether a milestone is reached or not is merely a decision, based on availability of data and artifacts, not on the completion of tasks.

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 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, it is left out of scope in this article.

Main process

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

(Diagram will be replaced with English version, without precondition on RegisteringContact)

The process above shows different types of tasks and phases.

Sequential phases

The phases in this process are quite linear; Apply, Pay, Decide, Register. In the vast majority of business processes, 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 circumstances where registration is rejected on grounds of inadmissibility, the phase registering is skipped right after deciding. 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

Throughout the process, 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.

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)

Phases

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

(Diagram will be replaced with English version)

Hybrid process

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 task ReadDataFromCivilRegister 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

Bla

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 in How to use Decision Requirements Graphs to visualize ad-hoc tasks in business process modeling) a Decision Requirements Graph will tell what the precondition is, as shown below for the task RequestProduct.

Milestones

Bla

Maintainability

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