Archive

Posts Tagged ‘Business Process Execution Language’

First reaction to the most asked BPM questions

March 26th, 2010 Frank Michael Kraft No comments

Thank you for your votes in the Most asked Business Process Management Questions. Very interesting.

To my surprise Why do Process Modeling Projects fail? made it quite high in the ranks. But if I think about it – yes – I understand the question very well.

I had my own share of failed projects, especially when I was novice in the area. And each failed project taught me something that I did not know before. After a while trying again and again I discovered stunning facts that were the foundation for succeeding success.

In my eyes this is absolutely natural in the area of knowledge work. And modeling is knowledge work. Therefore it is inevitable to try, to fail, to learn and finally to succeed.

If somebody promises: “I have the silverbullet method.” something is wrong. Either the task is too simple and therefore mainly irrelevant, or it is a lie. Business Processes are far from being simple, and if they are, then they are not worth modeling them, because they describe an area where only commodity business is done.

It looks so simple on the first glance. But it isn’t. For example take the other question: How to model one process with different variations at once? It is not so simple to answer this question. In my experience what is necessary to succeed in business process modeling is a deeper understanding about the laws of the business processes domain. Otherwise the result will be too complex to be used in practical terms. For example a car can be engineered, if the engineer understands the underlying laws of physics. Even if the car modeling tools look simple in the first place, they alone are not sufficient, nor are “methods” to model. Tools can help, methods can help. But they are not sufficient. Many training classes teach tools or methods. But to achieve a deeper understanding of the laws of the business processes domain in general, and the laws of the business processes from the special domain that I am modeling, they do not suffice.

The need for methods and tools is also expressed in the questions What are the 5 golden rules of process design? And Which business process management tool and notation suit my needs best? Given what I said I would answer this:

  1. We need to find out the laws of business processes domain and the special domain that I am modeling.
  2. We need to find 5 rules that respect these domain laws.
  3. We need to identify the notation, that best fits to these domain laws and
  4. We need to build or select a tool that supports this notation and is convenient to use.

Of course this has been tried many times. BPMN 2.0 and BPMN in general is just another attempt towards this goal. But still one of the most asked questions is: Why do Process Modeling Projects fail? I have my own opinion about the natural laws of business processes. I have modeled many hundreds Business Processes with 1000+ models from the areas of Customer Relationship Management, Supplier Relationship Management, Logistics, Supply Chain Planning, Financial Accounting, Project Management, Human Resources and others. I think BPMN respects some of the laws of business processes, but not all. For example Flexibility and Extensibility is not respected enough. It is not respected enough, that the result of a process is more important than the steps within the process, because the result is needed for another process, but the steps are irrelevant. Therefore there are too many variations of the processes, which are actually not needed, if the results of processes are modeled instead of the steps leading to the result. Another opinion about BPMN type of modeling I have is that most processes are over specified. This means the model is much less flexible than the reality.

In these days the Workflow Coalition will publish a book “Mastering the Unpredictable”. There we – process thought leaders from industry – argue that today’s process technology does not yet reflect the laws of unpredictable business processes and that there exist many of those.

Two recent Gartner key Predictions give insight in this very interesting and emerging part of process technology:

By 2012, 20 per cent of customer-facing processes will be knowledge-adaptable and assembled just in time to meet the demands and preferences of each customer, assisted by BPM technologies.

By 2013, dynamic BPM will be an imperative for companies seeking process efficiencies in increasingly chaotic environments.

So the whole process technology topic is still making very necessary progress. New domain specific languages will emerge, of which BPMN is but one. These new languages will respect the now known laws of the business process domain in a better way than today.

This all is nice and good. But what should I do today? Wait for a better future? Certainly not.

What are practical findings from using BPMN? is a very clear question and it is the most asked question. And in my opinion this is the best question. Because it is possible to use BPMN in a way, that respects the domain laws of business processes, even if they are not yet built into the notation. And this knowledge is exchanged by practical tips solving practical problems. Yes, there is a need to better understand the theory as the question What is new in BPMN 2.0? indicates. But even more there is the need for practical tips.

In my experience this can be achieved by coaching and governance. This is supported by the question What is required for BPMN coaching and governance? which is also quite high in the ranks. The answer is another question: Why you need a center of excellence BPM? The answer is: To provide the necessary coaching and governance. Of course there is much more to know about what is required for BPMN coaching and governance.

In some weeks I will start a coaching program. You are invited to it. You should have theoretical background already and you should have some practical experience already as well. The number of participants is limited to 7 for one year. It includes a Kick off meeting, weekly Web-Meetings as well as monthly meetings in a city somewhere in the middle of all participants. I addition to this coaching program I will offer training classes for the public as need arises. One training class will certainly address BPMN 2.0, another probably about how to organize coaching and governance inside your company- all with a very pragmatic approach. Of course the blog also will continue and I may publish another book or articles once in a while. I am looking forward to meet many of you in person who are reading this blog now for a while.

ERP / BPM / SOA

January 22nd, 2010 Frank Michael Kraft No comments

I was recently asked if I like this idea: Handle everything, that is coded in an ERP systems today as Process Patterns and instead design it as process models, that can be adapted to the requirements of the customer. The context of the discussion was if the combination of ERP/BPM/SOA would not have tremendous potential.

I aswered, that I have experience with that and that I agree that there is a tremendous potential with that. That really was an interesting discussion, because I did not hear such analysis before in the discussions in the public marketplace. I think this is the right direction to think.

I had already governed the design of the process of about 200 or more business objects, creating about 2.000 models including roughly about 5.000 web service operations. I didn’t use BPMN for that, because it was not flexible enough for this purpose, neither any of the existing languages. I used an own Domain Specific Language (DSL) for Modeling the behavior of those Business Objects.

My summary of that exercise is, that I agree to the original question. Only by modeling the process of Business Objects which are part of the ERP system, the ERP system’s web services will as a result have the right granularity. What is the right granularity for web services? Reusability. If web services are reusable, then they pay off most. In order for them to be reusable, they need to fulfil certain conditions. A web service operation should only do one thing at a time., i.e. not trigger an endless chain of activities in the system. It should have clearly defined preconditions. The effects and results of the web service operations must be clearly defined in terms, that can also be preconditions to other web service operations. That are the most important criteria in my view.

A system must be designed for this philosophy from the beginning. I strongly believe that adding web services to an existing system falls short of this goal. Even if it has some value, it would not use the full potential.

In general what I miss in the public standards is a language to describe the behavior of web services. Yes, BPMN 2.0 goes into that direction. But BPMN 2.0 still has to prove that it can fulfil the promise in practice. I think to a degree it can. It will turn out later, if it is possible to simplify the language or if it becomes an inspiration for other approaches (e.g. constraint based instead of workflow based).  And using BPMN 2.0 in itself does not guarantee the success. Additional guidance is necessary, certain quality criteria that each model must fulfil.

However, if the behavior of web service operations of an ERP system is defined, and if the granularity of the web service operations are so, that they are reusable, then the potential is very big. Because it means, that it is possible to attach own processes to that ERP service and even to interweave own processes in-between ERP processes. For example to add an approval before the release of an order under certain conditions, to add an own method of calculating benefits for the payroll and the like.

However as a limitation to the original question I would say, that not all of the processes modeled could be customized or changed arbitrarily. There are certain core processes, that the ERP system offers, that can not be changed without the danger of losing the consistency of the process. Therefore it is clearly necessary to describe which part of the process needs to remain stable and which parts of the process can change or are open for additions and interweaving. This of course must be part of the model.

What is new within BPMN 2.0?

November 18th, 2009 Frank Michael Kraft No comments

In my view, BPMN 2.0 is an important milestone in a greater journey with in a trend. The trend is the connecting of models from a business domain with those from system development.

First: What is the purpose of BPMN?

  1. Description of as-is processes within a company and cross companies
  2. Using the models for subsequent system development. The model is the high-level specification.
  3. Execution of the model (for example in Appian Anywhere) – probably translation into another execution language like BPEL.
  4. Model driven development of systems.

If we want to reach and achieve the fourth step, it is clear, that the execution semantics must be clearer as before – unambiguous.

On the one hand it is required to have “soft” models in the description of as-is models and also shall-be models. This will be so in all future. But especially the connecting of business domain models with system models within a holistic model cycle is a new level of effectiveness that we set our hope to.

In my opinion, this hope is not in vain.

Furthermore a complete meta model is needed for model exchange. This is – in my opinion – overdue anyway.

Why do we model at all? We want to utilize and connect flexibility with quality. This is reached by transparency. Only by transparency it is possible to execute the needed quality assurance on this level. If this is connected with model execution or model driven development, this is even better. We have laid the foundations.

This sounds quite enthusiastic. However I am a notorious BPMN critic. Even now more than enough critics comes to my mind. However I am exhilarated what we have reached within the scope of BPMN 2.0. We have made enormous progress in some key areas. I will elaborate on this in further blog posts.