Ten years ago, groupware bundled with email and calendar applications helped track the flow of work from person to person within an organization. Workflow in today's enterprise means more monitoring and orchestrating massive systems. A new technology called Business Process Management, or BPM, helps software architects and developers design, code, run, administer, and monitor complex network-based business processes.
BPM replaces those sketchy flowchart diagrams that business analysts draw on whiteboards with a precise model that uses standard graphical and XML representations, and an architecture that allows it converse with other services, systems, and users.
Sound complicated? It is. But it''''''''s downright frustrating when you have to search the Web for every little piece of information vital to the process. Essential Business Process Modeling gathers all the concepts, design, architecture, and standard specifications of BPM into one concise book, and offers hands-on examples that illustrate BPM''''''''s approach to process notation, execution, administration and monitoring.
Author Mike Havey demonstrates standard ways to code rigorous processes that are centerpieces of a service-oriented architecture (SOA), which defines how networks interact so that one can perform a service for the other. His book also shows how BPM complements enterprise application integration (EAI), a method for moving from older applications to new ones, and Enterprise Service BUS for integrating different web services, messaging, and XML technologies into a single network. BPM, he says, is to this collection of services what a conductor is to musicians in an orchestra: it coordinates their actions in the performance of a larger composition.
Essential Business Process Modeling teaches you how to develop examples of process-oriented applications using free tools that can be run on an average PC or laptop. You''''''''ll also learn about BPM design patterns and best practices, as well as some underlying theory. The best way to monitor processes within an enterprise is with BPM, and the best way to navigate BPM is with this valuable book.
Review By: Daniel Campanelli 03/10/2006"Essential Business Process Modeling" by Michael Havey presents a snapshot of business process modeling as a software engineering discipline. The book begins with an overview of seventeen tools, many of which evolved from vendor organizations such as Oracle, IBM, and Microsoft. Because of the rapid rate of change required by Web applications, the right set of tools must be used to support rapid deployment of code. The author suggests that the three most prominent tools currently available for an organization’s business process modeling (BPM) architecture are the following:
BPM Notation--graphically models the process
Business Process Execution Language--specifies the execution logic in XML
Web Services Choreography Description Language--models interactions between processes
Because these tools are not integrated and do not conform to published BPM patterns, they have some serious limitations. This has led to a trend of vendors’ surrendering their tools to non-profit groups in an effort to integrate the various tools into software engineering standards.
The author cites several initiatives such as the Object Management Group, the Organization for the Advancement of Structured Information Systems, and the Workflow Management Coalition. As the most comprehensive of these efforts, he presents a detailed discussion of the effort by the Business Process Modeling Initiative to develop an integrated stack of tools that will allow a seamless interaction between the graphical modeling tool and the generation of executable code in XML.
In my opinion, the material in this book is well researched and organized. The author takes the reader on an evolutionary journey of BPM from its origins in process theory to current tool offerings by individual vendors, and eventually to future standards initiatives by non-profit organizations.
The author provides a detailed discussion of each featured tool, offering the reader a clear picture of the different aspects of a recommended BPM tool suite. The author discusses the mechanics of each tool, along with detailed code examples where applicable. Limitations of each tool are quantified in terms of how conformable it is to established patterns. This helps provide the reader with a firm foundation of the author’s discussion on the BPM Notation tool stack and how its components relate to each other.
In its current form, I think the book is best suited for small, elite groups of software architects or quality assurance personnel who are charged with establishing a BPM tool suite for their organization. As BPM standards mature, I think future editions of this book may become better suited to a broader audience of BPM practitioners. I predict it may become a book of how to do BPM, rather than a book simply about BPM.