Pascal On BPMS

BPMN, BPEL, SOAP and all those things

Pascal On BPMS header image 4

Business Process Simulation versus Emulation

July 18th, 2007 · 2 Comments

Most process modeling tools and some BPM products provide “process simulation”. This is most often presented as a way to determine the business benefits that one might expect from implementing a given business process before having to actually do any implementation work. To a minimum, it simply allows to step through the business process diagram by injecting some sample conditions every time the flow needs to select a branch. More sophisticated tools provide the ability to inject different scenarios and verify the outcome or support “Monte Carlo” simulation.

Intalio|BPMS Designer does not provide such capability today. In this document, let’s describe what Intalio|BPMS can do today in this area, how it differentiates from traditional simulation and what more it could do in the future.

Today, Intalio|BPMS provides the ability to do what we call “process emulation”. This is taking advantage of the unique advantage that Intalio provides by generating executable processes directly from a BPMN diagram. No other product can do this today. Either they provide a BPMN modeler that cannot generate fully executable processes, or they generate code but they don’t support BPMN. Emulation consists in taking advantage of the BPMN “pools” that represent different types of participant by implementing people and system participants as “emulating processes”. The process participatns remain the same as if the process was to be deployed in a test or production environment, but here the people and external system that are involved in the process model are also processes. Then we leverage Intalio|BPMS Designer code generation capabilities to generate all the code and deploy the process in an “emulation environment”. This environment simply consists in Intalio|BPMS Server, where we deploy the processes together with the emulation processes that emulate people and system participant. This provides the ability to run the business processes in a fully automated environment, without having to integrate with any external system nor requiring any user interaction. In such an environment, processes can be tested to provide business information about how they should perform, should they eventually get fully implemented and deployed in a production system. With the Intalio|BPMS Console and Intalio|BAM, it is possible to get realistic, graphical, business information about the performance of such processes as they are emulated. Again, no other product provides such capabilities today.

So how is this different from typical process simulation as other tools do it? Process modeling and simulation tools do not provide the ability to generate, deploy and run executable processes. They therefore only target business analysts and enforces them not to consider any technical details. They model processes to meet certain business objectives and requirements, abstract from any technical consideration. Most process modeling tool vendors would argue that this is a better methodology to focus on the business independently from the technical constraints first, and later have other people in the IT to figure out what to do with it. BPM tries to change this by enabling collaboration between the 2 views. This is important, because when a process needs to be implemented, technical constraints can no longer be ignored, and it may require process modeling changes. As a result, the processes that are implemented end up being different than those that were modeled by the business analysts, and this breaks the assumptions upon which simulation was performed! In other words, process simulation provides business analysis of “theorical processes” that may very well have nothing to do with “real processes”.

If process simulation fails to provide information about the business performance one can expect from their processes before implementing them, then what is it worth? Is process simulation useless? No, there is still value in process simulation, but not for what it is typically presented. There is indeed a challenge in getting from busioness processes that business analysts can model to fully designed processes that can be deployed and executed. Now that business analysts and IT Engineers can use the same Intalio|BPMS Designer tool, how can they collaborate more efficiently and not just use the same tool but in two different worlds? Here, the biggest challenge is for the Business Analyst to understand whether or not their process models actually express what they wanted, and whether or not they are good enough to be implemented by the technical team. This is where process simulation can really help. With process simulation in Intalio|BPMS Designer, business analysts could test their process models against several scenarios and adapt their models until they feel confident they’re ready to be shared with the technical team.

To summarize, here is how simulation and emulation can be envisonned to be used in order to indeed provide valuable business information before deploying processes in a production environment:

  1. Business Analysts create new process models in Intalio|BPMS Designer
  2. Business Analysts use Intalio|BPMS Designer simulation capabilities to ensure their process models meet their objectives and requirements as far as they can tell.
  3. IT Engineers add emulation processes and deploy them in the emulation environment.
  4. Business Analysts analize the business reports they get from the emulation environment.
  5. Based on the reports, Business Analysts may revisit their models and go back to step #2. Once they are happy with the business outcome they can truly expect to get, it’s time to actually implement those processes.
  6. IT Engineers now fully implement processes by integrating external systems and users. The next steps are the traditional steps to deploy an application in a production system (test, acceptance, production)

Today, Intalio|BPMS Designer unfortunately does not provide such simulation capabilities. However, no other products do and products that offer simulation today do not help addressing the challenge of gettting from business process model to executable processes. In fact, they tend to justify the isolation of business analysts from the IT department, which goes against all the premises of BPM 2.0. It is therefore highly recommended not to let users adopt such tools and instead learn from Intalio partners about best practices that will help business analysts and IT engineers collaborating.

See also:

This post was written by Jacques-Alexandre Gerber at Intalio.  Published with his permission.

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

Tags:

2 responses so far ↓

  • 1 neville bradbury // Nov 24, 2007 at 8:05 pm

    As we know Intalio, and have a great relationship with the company, the ability of a company, organisation to make rapid and accurate changes to a business’s core processes and workflows, it seems to make sense that a BPM platform (such as Intalio) that offers organisations/business a way to enable the rapid change and development practices of attaching business processes to a business channel such as web, mobile, mail or any other channel with a more “collaborative” way for Business and IT to think and act as one.

    The problem with some of todays software business approaches (especially adopting SOA), is the issue of how a business can visualise an ROI via saving costs, time, resource skills, communication and collaboration, while building a new culture in a changing world of economics and people.

    Intalio BPMs platform enables both the business and IT to join forces to achieve a more rapid and effective product. This can only auger well for any company , organisation or business that is willing to look at how Intalio can work effectively in joining the most important resource of all, people from both Business and IT.

  • 2 David French // Dec 5, 2007 at 8:37 pm

    I suggest that step 3 in most cases should not need a propeller-head ‘IT Engineer’ but a sandpit and toolset for the BA to work with ideas about what the service should look like at that point. Generally, a simple database will do the job for a business process emulation but more exotic plug-ins may evolve in this space (for example instant-messenger presence behavior).

    The world does not stand still so the effectiveness of the business process should be measured in production. This is where the BPMS really pays off, as the throughput and utilisation of every activity is automatically gathered and available for analysis. The cycle then resumes at step 2 with improvement in process.

    Somewhere in the development cycle, some human-factor engineering needs to take place. If the enterprise has a particular style of working with information “the way we work here”, then the BA tool-set could include some helpers here. For example, if the culture is to manage personal tasks through Outlook task lists then providing the task management user interface through an OBA.

Leave a Comment