Review: BPMN Modeling and Reference Guide

On the plane home from Think Tank I had a chance to read Derek Miers and Steve White's book, "BPMN Modeling and Reference Guide." Unlike Packt, the publisher here spammed me endlessly with solicitations to buy but never offered a review copy. I was prepared to plunk down the $40 in Chicago, but Derek just gave me a copy. Which was smart, because now I have to review it.

Derek and I compete in the BPMN training business, so I was hoping the book would be good, but not too good. I was not disappointed.

BPMN's biggest problem is the number of presumably intelligent people that use it incorrectly, so presenting diagrams that are both valid and sensible is really important in a BPMN book. No surprise that this book passes that test. In fact, I suspect it is the only one out there today that does. There is only one diagram I would take issue with, using multiple start events to represent alternative entry points to a process. Didn't BPMN 1.1 add the "bootstrapped start" with event gateway for exactly that scenario? But that's really a nit.

The book starts out by building up a BPMN diagram from simple concepts any process modeler already understands, incrementally adding new semantics and their diagrammatic representation. BPMN semantics are explained by example, each new diagram building on the previous. That part works extremely well, but is quickly abandoned by the authors. Following a good start, the scenario careens forward in just a few pages to pub-sub synchronization using Signal events, non-aborting timers, and other advanced patterns that I'm sure leave beginners' heads spinning. And then it's done. If the BPMN-by-example was the good part, its too-rapid ascent into semantic exotica was the (fortunately) not-too-good part.

The last two thirds of the book is a complete about-face from the tutorial style of the beginning. Labelled an Appendix, this section is really the meat of the book. As the book title suggests, it is organized as a BPMN reference, just like the spec. In fact, you could call it a well-written condensation of the BPMN spec. Such references to freely available specs are common in the world of IT books - I admit to buying them myself - and I agree BPMN could use one of its own. On that score, it succeeds and I would recommend it.

Developers love the reference format, but I'm not sure how it plays for business. The book does not, for example, try to lead a business-oriented process modeler, familiar with swimlane flowcharts, gently into the thicket of BPMN semantics. It starts out like that is the goal, but does not follow it through. Nor is there guidance on which of BPMN's many constructs are the important ones to learn, nor how to use subprocesses effectively, nor how to manage the complexity of real-world process models.

The book suggests that those issues are related to "methodology" and not BPMN per se, which is officially methodology-neutral. In fact, as editor of the actual BPMN spec, Steve White may have felt constrained to obey that neutrality. As educators, however, Derek and I both know that the thing most needed to get people to use BPMN effectively is exactly such a methodology. That's fine; it's just not in the book.