views:

78

answers:

1

Looking at the search results for "workflow" seems like a wasteland - the first page or so is full of 0 votes, 0 answers, and very low views.

Is that because nobody bothers with it? Too complicated? Not useful?

I'm looking for any resources for how to model a process and store the information in a database, tracking each step as it happens.

A: 

ERP software have workflow support. Look at books that deal with implementing workflows in SAP or Siebel. A workflow is a series of steps. Let us define what we can do in a step:

  • Read data from a table/multiple tables
  • Update/Delete/Create records in one or more tables.
  • Update variables used in processing a workflow

We can refine a step into a series of atomic instructions.

You could look at the following basic entities

  1. Workflow Definition(Wid,Name,authId) (authid is a way to restrict who can run the workflow)
  2. Workflow Step(StepId, Wid, Name)
  3. Workflow instruction (InstrID, stepId, Type, SQLstmnt)

The above tables will be the static definition of your workflows. You need an identical set of runtime tables to store the results of each step of a workflow. Each of those tables will also have a flag to indicate whether the step/instruction completed or not.

bkm