I like workflow, which doesn’t tend to make me very popular at parties. But, since you’re reading this blog, I’ll assume that you have some interest in Workflow, and will now proceed to tell you all about it (if I’ve got this wrong, and you’re using Google Reader, hit the ‘J’ button now to speed on to something more interesting. We’ll forget all about this in the couple of days when I next blog).
Still here? While most computer programs aim to finish as soon as possible, workflow programs can run over many hours , days or weeks (stick with me, this gets better). Most of the difficulties that programmers face when coming to workflow aren’t technical (workflow is no more difficult than using one of the many web frameworks out there) but conceptual.
- Trust the force, Luke; If you’re used to writing your own programs, it can be a bit of a switch to writing small actions to be embedded into a larger workflow framework.
- Forget about Hello World. Workflow is used to solve complex problems. It’s going to take a bigger investment of your time to appreciate the true power of workflow .
- Tip of the iceberg (aka Why can’t I write my own?) Most people start out not needing an entire workflow framework, but to solve a specific problem. So they begin to write their own framework. Then they find another requirement, then another. By the time they realise that they need an ‘off the shelf’ framework, they’re reluctant to to dump their investment.
So where does the book come into this?
Put simply, the book lets you overcome those three big problems more quickly.
Yes, it deals with the ‘nuts and bolts’ of workflow – how to setup the framework. How to use the Eclipse based editor to draw / design your workflow. How to the use the various tasks that come bundled with the framework, and how to write your own. How to persist your workflow so that even if the system fails, the business can still recover. But all of these are covered quite well in the JBoss jBPM documentation, even though having it in book format is very useful.
Where the book is really good is that it talks you through the concepts of workflow, why you should be using it, and gives you the big picture straight away. It also will help convince you (or your boss) that an off-the-shelf framework is much, much better than even thinking of writing your own.
Combined with the fact that jBPM is open source, and is available for free download from JBoss / RedHat (i.e. it is low cost to start, but is credible enough to deploy in the enterprise), this make the book an ideal way to experiment with workflow. Even if you choose (or somebody else chooses for you) to use an alternative workflow framework, once you mastered the concepts (which are the same for most frameworks), picking up the technical details is relatively easy.
Things I didn’t like about this book; One is partly jealously – the style of the book (making a complex subject easily available to beginners) is one that I wish I had mastered in my own book. The other is that while the examples are very good in each chapter, it would have been good if each sample built on the one previously, so that you ended the book with quite a sophisticated system. Given my interest in other JBoss projects (such as JBoss Rules / Drools) it would have been good if these were mentioned and explained (e.g. the Drools rule engine integrates well with decision making nodes)
Minor gripes, and all very specific to my interest in JBoss technology. I would still buy the book if despite knowing all of this, given that it introduces the concepts and technology so well.