“Workflow” is Back

I think the term "Workflow" is back.

Not that it ever went away. It is just that it has been such a pejorative word. The most common reason given for the difference between "Workflow" and "BPM" was: Workflow is that old stuff we don't do anymore, BPM is much newer, much better.

Some people felt that workflow was support for work without any back-end integration. I honestly don't know of any workflow vendor that did not offer integration to backoffice system, nor how you would accomplish keeping workflow separate from the backoffice. I always point to the 1995 "Workflow Reference Architecture" which always had an "Interface 3" which is a standard way to integrate to a system or service. But there is a general impression that there were some workflow products that could not be integrated.

Regarless of the reason, from 2001 thru 2005, all the workflow vendors and workflow practitioners changed to using the term "BPM" due to this marketing fluff.

Some thought BPM was a more inclusive term: it mean not only the automation of business tasks, but also the modeling of it, the review of how well things are running, and the overall *management* of those business processes. To manage a process, you have to be able to see it, manipulate it, keep multiple versions of it, and be able to measure its effectiveness. This point of view makes sense: you are "managing" the workflow processes in a much more tangible way. Unfortunately, due to the influence of two very strong vendors, IBM and Microsoft, and in their over-promotion of BPEL, as well as some other notable gadflys of the BPM wave, the term BPM came to mean really something closer to Enterprise Application Integration with a process approach. We also call this "Web Service Orchestration". It took three years from 2002 thru 2005 for the market at large to realize that BPEL really was just about coordinating messages from server to server. This realization has caused the meaning of BPM to collapse from an all encompasing term, to one that means little more than "EAI".

There recently has been a big realization that "Human BPM" is very important. IBM and SAP release their BPEL4People white paper. BEA buys Fuego, a notable human workflow vendor. Oracle prepares new human capabilities above (and possibly separate) from their BPEL engine. And Microsoft talks about their Workflow Foundation, which is also separate from their BizTalk EAI.

The term "Human BPM" is a bit cumbersome. I was recently asked to give a presentation at DCI's BPM Conference on the subject of "Techniques for Using Workflow to Bridge the Gap Between Business and IT". They have not had any workflow talks for the past three years, but this year it seemed appropriate to get back in touch and see what has been going on there. In discussios with many of the experts there, they felt that the term "Workflow" now means the human oriented side of BPM, while BPM cover both the human as well as the EAI style BPM. Gartner is now using the term "BPM Suite" to mean technology that covers both human and system BPM among other criteria.

That works for me. I must give Microsoft credit for being brave enough to use the term "Workflow" and to use it for capability that is consistent with the original meaning. I propose now that BPM be the overarching term, with Workflow representing the human capabilities, and "Service Orchestration" being the system capabilities. We will see if this comes to pass.

Life After BPEL?

A study of the usefulness of the BPEL language, and not just regurgitating the marketing hype from vendors. The paper “ Life After BPEL?” by W.M.P. van der Aalst et. al. is a refreshing view of the good and the bad or missing part of BPEL.

I found another one from David Chappell who points out that BPEL is less important than you think.  Gotta agree with that.

Lost that last post

Hmmmm, I just spent 15 minutes typing in a post, and pressed the "Publish" button, and it came up with a blank page. After waiting a while and seeing that the browser was no longer active, I pressed the "back" button to go back and try again. BUT, the page is constructed with on page java script that refreshed the contents of the page to an empty box, and all my work was gone.

-> Rather Disappointed

Where is this going?

(1) Is this really what I want to spend my blog time on?  Tag-language.  I spoke with someone else today who said that he felt that the JSP tag library phenomenon had kind of faded, and that the fadhad been replaced by other approaches.  I dont know.

(2) I am certainly not going to have a blog about blogging, which seems to be the narcissistic tendencies of so many bloggers.  So I will stop this one here.

Reflections on Tag-language

That last post was too long. The discussion around pesudoprogramming is too complex to contain in a single post, or a single essay of any form. I feel it utterly fails to clarify anything, because it is built on so many other axioms which have not been clearly stated.

I was challenged by someone on the stance that use of tag-language in a JSP was less powerful, less convenient than just sticking to Java. So it is me against him, can I find some third person support for either position? I searched the web. The ONLY mention of tag libraries were from people promoting those tag libraries. They always include a page of reasons why the tag library is superior. Many "reasons" are unsupported assumptions about being better. Other reasons unfairly compare a very poor Java example to a tag; the Java could be written much better and it would be a better comparison. Most of the arguments don't hold water.

I was thinking, *somebody* must have done an unbiased comparison of using tag-language or sticking to pure Java. No matter how I searched, I could not find any evidence of a careful controlled study comparing the two approaches. Then I realized that the flaw is my assumption that there would be a such a study.

Who would do such a study? If you like tag-language, you are motivated to write a page expousing the benefits of tag-language. But if you don't like tag-language, you pretty much just ignore them. It is reasonable to assume that tag-language works in a particular domain of the programming space, and those who like it are in that domain, and those who do not are in a different domain.

Who am I, then, to rain on sombody's parade simply because tag-language is not useful for my purpose? I am a system architect and must set the direction for many people, some of whom are less experienced. These programmers are trying their best to do a good job, so they see the arguments and are persuaded. I guess what really bugs me is that the arguments are fallacious, and nobody corrects them! Only one side is presented, so people do not dig to see the what the truth should be, they simply accept the arguments.

I guess I am not done with this subject. I will have to address each argument for tag-language, and see if it holds up to scrutiny.

Pseudoprogramming

What are I going to gripe about today? How about: “programmers who think they are going to make other peoples lives easier by letting them program in a new language that is less complex.”

OK, the motives are good: “Programming is complex. Many people are intimidated. Let’s make something that they will be less afraid of, and still accomplish the job.” Continue reading

Hello world!

Alright, this is my first post.  Frankly,  I have looked into a number of blogging software sites, and I am not sure which one I want to use.  But someone else I know uses this one, so I am trying it.

Goals:  the purpose of this blog is to comment on what I see in the enterprise software field, with the possible result of making things better.  Continue reading