Why Automated BPM will never live up to its hype

I like point out really nutty ideas, even when a lot of people have spent a lot of time investing in them.  This one is about expectations.

About 15-20 years ago, a great many companies starting investing in "Business Process Management" because of the opportunities to remove some really inefficient behavior.  Along came the nerds, and we created pretty languages for describing business processes, and we started telling the business that once business processes are described using these languages, then you can push a button and "viola" the process becomes automated.

According to the 'true believers,' we can give end users one of our pretty languages (BPMN or BPEL) and they will write their own software, and we can fire all the IT developers.

Why do we say such things?

Perhaps because we know what a bad idea it is for software developers to write so much crappy code? 

Yes, we want to get rid of expensive IT developers and replace them with something less expensive.  Yes, we want to speed up the development of software that is custom to the business.  Yes, we want business software to reflect the unique processes of the business.

But we cannot do it with visual business process modeling languages.

The reason is that BPM languages model HUMAN behavior.  The things that "become code" are indicative of COMPUTER behavior.  We have to be 1,000 times more explicit with computers than with humans.  So we need to develop 1,000 times as much code for computers as we do for humans.

There are times when it makes sense to use BPEL for automation.  But it is not a long list, because we have an abstraction that is a very long way from the code.  We can automate a small number of situations where coherent activities, in sequence, are performed entirely by computer.  Certainly, we want these situations to increase.  But the overall impact on the cost and quality of IT-developed software is minimal. 

And if we are not addressing the cost and quality of IT software... why even discuss BPM automation?