.comment-link {margin-left:.6em;}

Ontario Technoblog

Ontario Emperor technology blog.

This blog has been superseded by the mrontemp blog
Location: Ontario, California, United States

Sometime audio artist. Email comments on this blog to the gmail account mrontemp.

Tuesday, September 06, 2005

Workflow Abstractions

More from Nick Malik:

In creating a workflow, there are...three levels of abstraction.

Business Unit View: at this level, a work item can have threads in multiple, cooperating, business units....However, the most typical workflows through business units is a single (primary) thread that can be reasonably easily understood and diagrammed. For example: Customer company issues a purchase order. Supplier company issues a shipment and an invoice. The shipment goes to the Customer company's receiving department. The invoice goes to the customer company's accounting department... etc. It's a simple graph with a few lines and coordinating components....

Business Process View: at this level, a work item follows one and only one thread through a series of interacting steps. The process may begin with a message or document from another business unit, and may end with the generation of one or more messages to other business units....For example: the purchase order is approved for transmission to a supplier if it contains a signature from a member of the company whose purchasing authority meets or exceeds the dollar limit on the invoice and if the supplier is on the approved list. It is up to the process to meet the condition....

Work Step View: at this level, an item exists in multiple states in a state machine or petri net. Events serve to move the work item from one state to another, and "gates" can be expressed in the graph showing things like: compensation logic, combination logic (all theads must complete before the item proceeds, etc), and time-related exception logic. This is the level of abstration that most workflow systems, and too many software developers, live at. We get so wrapped up in the details of how a message is read, and what occurs when it appears, that we can quickly and easily forget the existence of all other views.


Post a Comment

<< Home