http://stackoverflow.com/questions/3521250/is-jbpm-dying-what-is-the-future-of-jbpm-and-activity-bpmn-jbpm-vs-bpmn
Thursday, July 26, 2012
Questions about jBPM 5 vs jBPM 4
http://stackoverflow.com/questions/3521250/is-jbpm-dying-what-is-the-future-of-jbpm-and-activity-bpmn-jbpm-vs-bpmn
Monday, July 23, 2012
BPM 2012 Demos
Saturday, July 07, 2012
Crossing the chasm
The ability to deliver a quality product (goods / services) efficiently and consistently. The reason why Walmart is such a phenomenal success as a business is because it can deliver a specific product efficiently, hence at a cheaper price, than any other competitor. Success in business means being efficient and have economies of scale. And I can speak some more here but lets desist the temptation:
Why did I start with the above because a business is a business so that it can deliver "
At the same time, there are professionals who have to deal with unique problems everyday - a doctor tending to a patient in ER, a lawyer dealing with a criminal case, a golf player on Pebble beach golf course with El Nino winds for a change...most of these examples are unique and being able to document each of these processes might :
1. Defeat the purpose (the patient might die) while the process is being documented.
2. Wont be cost effective - a doctor documenting the case (not patient history notes) and how he arrived at the differential diagnosis and then choose a specific antibiotic over another will not be cost effective as this decision making intellect has been honed over at least 10 years of med school and practice thereafter. It would be impractical to design for every permutation and combination.
3. It would not be repeated - I dont think the speed and direction of the wind at pebble beach is going to be the same again.
4. Each of these is unpredictable, you never know what to expect.
I think that the reality of businesses lies somewhere in the middle of these two. There may be certain processes which are so mundane that any investment would be a kill (and I wont give an example on purpose); there are certain processes critical and core strength of the organization, the procurement process for an automotive manufacturer, or order to cash come to mind immediately, which can benefit from a BPM approach. Even within these critical processes, 60-80 percent of instances follow a well defined path ,depending on maturity model of the organization, certain instances may need adaptive processes or segments thereof, or processlets as I would call them, and then again there are cases which happen in rare instances.
As a CIO where should I put my money in -
a) in those 60-80% process instances which can be automated, done faster better and cheaper;
b) in those 20-15% instances where parts of the process are defined but not the whole process,
c) or in those capabilities which are rare and in between - wherein even after the investment I might find that it was insufficient.
I think the choice is really between 1 and 2. But what if, <...pause>, there is a software that can do both. One that can execute my 60-80% process instances, support cheaper operational models for these, continuously measure performance of key tasks, improve the process based on feed back ....
AND with the turn of a switch, take those specific 20-15% instances and create an adaptive process model, modify them on the fly and execute segments of process as and when needed.
Time for my sales hat - please feel free to ignore
Fortunately, such a system exists and that is called Roubroo. It lets you model your business processes using BPMN 2.0 - executes them as per the semantics defined and alo lets you modify specific instances as and when needed. Please reach out to intro@roubroo.com for details.
Friday, June 08, 2012
The BPM pattern challenge?
I have been doing some deep thinking about the value proposition of BPM. The modeling environment, the execution engine, the admin console, the user tasks engine, the reporting and the list goes on...
In this laundry list of features, users may often overlook the very reason why they needed a BPM tool in the first place. The reason people decide to do BPM is to run their business - with accuracy, promptness and absolute fidelity; and they want the ability to change their business based on new market conditions "VERY" rapidly.
If this is the reason why you are doing BPM - to run your business process with absolute fidelity - then dont be fooled by the laundry list of features - go for the kill. Can the BPM tool in Question run your business process with "ABSOLUTE FIDELITY" - can it "CHANGE RAPIDLY"?
I argue that most tools cannot. And I am doing so with the experience and conviction that I have.
And the reason we started building Roubroo was exactly the above - to be able to execute what your business process is with absolute fidelity, sometihng that we call "WYDIWYE" for the past couple of years. Sometimes, it is difficult to articulate the value of process fidelity and WYDIWYE - but probably it is easier to articulate the value of not having it. Ask the following Questions:
1. Does your tool let you model the process you want to draw? Or does it draw extra gateways etc as you model, trying to "help" the modeler?
2. Does your tool execute the process as is?
3. Do you have to call in your IT folks to code wait conditions or other checks to work around the limitations or as they say "features" of the said tool?
4. How rapidly are you able to add or remove steps?
5. How easily can you change the order and dependency of the steps - change the flow logic of your process?
I think if the answer to any one of these questions is No or the estimate of change is more than a matter of day (I wanted to estimate minutes but to be more benevolent, or couple of days) - chances are you are dealing with the wrong tool.
And the reason is not that someone made a mistake, its simply that these tools were built without the correct execution semantics. This basic and fundamental power is buried under layers of tooling and feature lists which is hard to argue around - every vendor claims they have all of these items in their feature list. What they dont tell you is what is at the core of the engine. What are the mathematical fundamentals around which they built the process engine?
I will leave today with a few examples and I will ask you friends to enlighten me if your BPM tool can build these patterns in a matter of minutes or not?
Take a look at these patterns - I have built only 4 for now, to see if the tool you have chosen can support your business process with "ABSOLUTE FIDELITY". And mind it these are the simplest of examples with no more than 4-5 steps required to demonstrate the BPMN 2.0 pattern. When we start modeling the real business processes there will be combinations of these patterns at play.
http://roubroo.com/resources/process-patterns
Sunday, April 01, 2012
Activiti - PVM - a closer look
Maturing BPMS to Case management
Learn to walk before you can run
Monday, January 24, 2011
Some BPMN patterns
Control Flow Patterns
For more interesting patterns please visit Process Patterns here
Sequence
Parallel Split
Example: Dinner Plan

Saturday, July 17, 2010
Updates after a break
Wednesday, May 06, 2009
BPMN 2.0 Execution Semantics - multiple sequence flows - Opinion Poll
My sincere apologies as I have been away from my blog for the past 6 weeks due to a fracture in my right arm. I love to play cricket and if I get a chance to try the same catch again - I will probably go for it, unless my body has built in a subconscious reflex to not attempt it, hopefully not. Feeling much better now, even though I still need physiotherapy sessions that I hate...
The topic of todays post is really urgent and of utmost important. I seek opinion from BPMN modelers out there as to what they think of the following diagram, tool vendors are also welcome to chime in but please identify yourself to maintain the objectivity of this poll . I can assure you that it is synatctically correct as per BPMN 1.x and upcoming 2.x specification. The question I have is - ok first take a look:
The question is : How many times do you expect the activity B to execute? Further how many times to you expect X, Y, Z, C1, C2 and D to execute.The options are:
Option1: - B should wait for both A1 & A2 to finish and then execute once. Thus B, X, Y, Z, C1, C2 and D all execute only once.
Option2: - B should NOT wait for both A1 & A2 to finish and execute everytime A1 / A2 finish. Thus B, X, Y, Z, C1, C2 all execute only twice and D will execute four times. Further if there were three branches from start event going to A1, A2 and A3 then B, X, Y, Z, C1, C2 all execute thrice and D will execute six times.
So pl go ahead and choose which option do you think is better and more usable.
I do have an opinion but I dont want to share it now to prevent any prejudice. Please express your viewpoint here.
Tuesday, March 17, 2009
Three cups of tea
Now what is it that has offset this chant of worship. Well - go to http://www.threecupsoftea.com or http://www.penniesforpeace.org to see what mountains Greg has moved in the past decade or so. His sole mission is to educate the kids of farway Pakistan and Afghanistan. He believes education is the only way to end the violence, mistrust and hatered that has been built into our very pysche.
Personally, I have decided one thing - I will donate my time, money and energy to support Greg and other projects similar to his. I hope to see him and his work acknowledged with a noble peace prize within the next 3 years.
Tuesday, February 24, 2009
Abstract = Public? => Non executable
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
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/"
Thursday, January 08, 2009
BPMN and BPEL
If I rephrase Manoj's response, currently i.e. until OMG ratifies the BPMN 2.0 spec, BPMN is a modeling standard and BPEL is an execution standard. Both are complementary in that regard and many BPMN models may be executed as BPEL processes. As BPMN 2.0 defines sufficient execution semantics, the implementation engines may start executing BPMN 2.0 natively, creating an overlap with BPEL 2.0. There will be significant consistency between the two from this perspective. Further, there will be different use cases for which the two approaches - BPMN models executed as BPEL and native BPMN execution - will be better suited.
PS: Standard disclaimer: The views expressed on this blog are my own and do not necessarily reflect the views of Oracle.
Tuesday, December 09, 2008
Whats happening with BPMN 2.0 @ OMG
So whats been happening in the BPMN world while I was away. There has been ongoing work around the BPMN 2.0 specification. A lot of ground has been covered on the various topics that were identified as week in the previous draft e.g. Choreography. The updated version is available on the OMG website. At the Monday OMG meeting, the team did a presentation on the progress made on the specification. Further, it was agreed to extend the deadline for the submission to Feb 23, 2009 - one month before the next OMG meeting. The motion was passed with a "white ballot". I sign off with the promise to be more regular!
Monday, October 06, 2008
More on Variants
May be you want to create geography / nation specific variants of this base process, or your customers in turn are changing these processes and now you wants to import them into the same DB. I am assuming you have more than one such variations.
Steps1. Create a variant(s) of the original process (MyProcess) that customer is sharing with outside world. This will create a model "(MyProcessModel(1)")
2. Rename the variant to a more meaningful name "(MyProcessModelForX")
3. Now provide the outside world with an export of the variant MyProcessModelForX.
Sunday, October 05, 2008
Session by session details of BPM 2008
Wednesday, October 01, 2008
Panel - Future of BPMN - Technology and Industry @ BPM 2008
BPMN has seen huge adoption over the past four years. It has become very popular with business analysts, tool vendors, practitioners and end users. BPMN brings business and IT together in a collabrative environment where as designed and as implemented are the same. In this panel, we discuss the two major forces that will shape up the future of BPMN. On the one side are technology trends like Web 2.0, SaaS, Semantic web and Cloud Computing which will impact the way people define and execute their business processes, and at the same time there are the needs identified by industry practitioners to facilitate meaningful adoption like closer alignment with organizational models, facilitating process discovery and monitoring. We believe that these two forces will define the future of the BPM industry and therefore we have invited a slew of BPMN and technology practitioners to this panel to discuss the future path for BPMN.
The panelists:
Marlon Dumas, University of Tartu, Estonia
Paul Harmon, Business Process Trends, USA
Jana Koehler, IBM Switzerland
Sebastian Stein, IDS Scheer, Germany
Alexander Grosskopf, Hasso-Plattner-Institute, Potsdam, Germany
We were lucky to have Peter Dadam and Professor Wil van der Aalst in the audience and they took on the panel. we delved into the current state of BPMN adoption thanks to wonderful insights from Paul Harmon. There was a quick tour of the history thanks to Jana. Sebastian gave his thoughts on how they see BPMN requests from time to time. Alex gave a few updates on the current work he is doing around BPMN at HPI. There was also a discussion on the execution semantics of BPMN and how close / different it is from BPEL execution semantics. An interesting discussion overall. Although I wish we had more time to look at the future trends of technology impacting BPMN. Nevertheless, next time!
BPM 2008
Friends - Sincere apologies for not being active on my blog in the past few weeks. There was the BPM 2008 conference and the Oracle open world - more about it in the next post. This one is about BPM 2008!
* BPM community is abuzz with innovation and very active in coordinating efforts across geographies and locations. Most of the research represented at the conference is around process modeling in some way — patterns, modularity, tree structures, process mining — but there were quite a few, interesting ones, focused on process simulation and execution issues as well. Some very intriguing choreo research from friends in Australia. Peter Dadam in his keynote gave a demo of ARISTASoft, a BPM software built by Univ of Ulm and is very dynamic and flexible even at runtime. You can change instances and even percolate that change to definition - very interesting. BPMN Boundary analysis - my personal favorite subject, paper won the best paper award. BPMN process differentiation and merge was another interesting presentation, we do this for BPEL processes. Managing Process Variability and Compliance in the Enterprise was another discussion and the conclusion was "it depends". Instantiation Semantics for Process Models - this is a very important technique of how to start the process instance.
My panel - Future of BPMN - Technology and Industry - a separate blog post for that tonight.
Tuesday, August 12, 2008
Bruce's comment on Process Variance
glad you are posting on this topic, but I have some questions. On first one "inheritance", I don't understand how your item differs from embedded and reusable subprocess (renamed call activity) in the current spec. Are you proposing new semantics, new notation, or new level of mandatory support?
Answer / Clarification:
Bruce - my idea is whether processes can inherit properties from parent process. e.g. parent process may say credit check and approve loan. The child process will go into details of credit check, elaboratre the steps involved and then move to a set of steps required to execute approve loan.
The same question applies to the process variance feature, what some BPMSs call "dynamic subprocess." Do you require that the interface of all variants be the same or not? The focus of BPMN 2.0 seems to be more on the formalism and less on the issue you raise: what features need to be added to make the notation more useful to practitioners? I plan to blog about this one myself.
Answer / Clarification:
Variance - is the geographic, political, legal path that a process needs to take for the same business process definition. e.g Credit Check - my favorite, in US may be just a service call, but in Asia, it wil lbe a human task, or a series thereof approved by managers.