Archive

Posts Tagged ‘Process Instance’

Realignment of Process Instances

[ad#imagead]

If there are many process instances in a system, it is also a lot of work to realign them, if necessary.

What do I mean by realignment of process instances?

For example, if there is a process instance – which is a simple example – that needs a one step approval in case of an order of below 1000€ and a two step approval in case of an order of 1000€ or above.

Now if there is an order of 900€ then there exists a process instance for a one step approval. If later the order is changed to have a value of 1500€, then the process instance needs to be realigned to have two steps of the approval.

The realignment can typically not be done from within the process instance itself.There is some logic needed, that does such a realignment and works in all cases. Furthermore as of my knowledge there is no generic algorithm to describe all needed realignments based on such changes. So the rule do assign one and two step approval to the values of below and above 1000€ is not enough. It is further necessary to describe the realignment logic.

This is especially challenging as it depends on the state of the process instance itself.For example if the one step approval is the manager approval and the two step approval is the revision department approval which has to take place before the manager approval. Then it may challenging to realign a process instance in the case of a value change, if the manager approval is already in progress, because a different step has to be inserted before.

So the process instance realignment problem is not simple, but a solution is needed, as soon as there are process instances in the system.

Process Instances and a Business Process Platform

March 30th, 2009 Frank Michael Kraft No comments

If there is an architecture with a Business Process Platform, then there is the question, which role do the process instances play in such a system.

The business processes are reflected by business objects themselves, which are linked with each other. Events are correlated to the business objects. This makes sense, because the business objects are clearly identifiable, because they are related to a concrete business transaction. There are concrete customers related with it, suppliers, products, dates – the things that make them easy to identify and find.

In contrast, if there are process instances, which have only an anonymous ID, like a Globally Unique Identifier (GUID), then the relationship to a concrete business transaction is rather loosely. Therefore it is hard to manage them. Furthermore if there are business attributes inside of the process instance, typically they are in generic containers (not always) and therefore difficult to use in queries.

So which process instances are needed within a Business Process Platform beside the business objects themselves? Probably some for approval. Some for ad-hoc processes. Not much more comes to my mind.

Monitoring a business process itself is a different story. For this not process instances are needed, but chains of business objects that are actually process objects and some process instances – that I already mentioned.