Tuesday, February 24, 2009

Abstract = Public? => Non executable

I am trying to understand what an abstract BPMN process means. Honestly, I think this is a much overused of not abused term. It could mean an abstraction of the process definition, or it could mean a parent process which is detailed out in a child process, or an externally visible process interface or may be a combination of these. e.g. an abstract process might be EMployee onboarding process which inturn may be actually be subdivided into multiple smaller processes.
A public process is one that is visible to external world. It may call internal processes and services but is shared with the external world. e.g. the process of buying an item on ebay is very much an example of public process.
So does public process have to be non -executable? If I see the example of buying items on ebay - it is executed by a system - thus it is executable. In my opinion public vs private is orthogonal to executable vs non executable.
Going back to abstract processes - well since different backgrounds lead to different interpretations of abstract process, I would rather break this monolith into two specific terms Public/Private and Executable / Non executable. Now executable does not mean ready to execute. Every tool vendor will have a set of vaidations to run besides the standard XSD validations. Today's business user is not in an ivory tower to make that decision without consulting with process analysts / IT experts. Before the process goes into production, it will go thru its lifecycle of dev - test - stage - production and may move from a ready to execute to a non ready state multiple times during this lifecycle.
Let me know what you the people in real world see these types of processes as and feel free to correct me!

Tuesday, February 03, 2009

Interesting Research - Michele Chinosi

I normally do not discuss individual efforts on my blog but found this one compelling. I met Michele last year at the BPM 2008 conference and subsequently we interacted over email and phone several times. Since then he completed his PhD and I find some very interesting areas that he has touched upon. There is one caveat that a large part of his work started with BPMN 1.0 & BPMN 1.1 as the starting point. The highlights are:
a model for BPs;
an XML serialization of such model;
a BP design methodology and business process diagrams views.

The model is labeled 'conceptual' because it was not sufficiently formalized to be considered a complete meta-model. The need to formalize the model is rudimentary because of the forthcoming BPMN 2.0 standard. One of the strengths of this approach is that it is a self-validating XML serialization of BPMN1.1. This means that it is possible to natively check the syntax of a diagram, all the BPMN 1.1 structural semantics rules and most of the behavioral semantics rules. That is, we can check quite all the rules provided by BPMN 1.1 specifications which could be checked without a simulation or an execution of the process (for instance, we can check if a process has loops, but we can not check whether those loops are infinite loops). So, it is a simple but powerful enough model to describe all the relevant features of BPs. The concept of views applied to BPs is another outcome which is a first preliminary result. Views permit the users also to investigate several applications, in particular to define end users policies.

For more information about his research please visit the URL : http://www.dicom.uninsubria.it/~michele.chinosi/"