workflow tools

M

Matt

I am new to workflow. I am confused with the tools involved with workflow.
I have heard terms like workflow engine, workflow monitor, workflow clients.

My understanding is that workflow monitor monitors the workflow
engine? Is Sonic MQ or MQ Series are workflow monitors?

Workflow engine is to tell the system what's the next activity
to execute?

Workflow client is to define the flow by drawing the
flow charts. Workflow client is like a modeling tool?

Please comments.

If anyone knows some good resources/tools resources, please advise more.
 
A

Andrea

Hello Matt

Well the first thing I think that needs to be clarified is what
workflow actually is. To me, workflow is nothing else but a predefined
sequential process that is executed asynchronously, i.e. at specific
point in time that cannot be defined prior to its execution. Now what
are all those things that you are asking about….. Nothing but tools
that actually take a simple matter and complicate it ….. that's
typical human nature. So how does this help you? Not at all – see I
have complicated the issue as well now. Ok, lets get down to helping
you. I presume that you have a certain workflow problem that needs to
be solved programmatically, and that you are looking for a Tool or
Tools that could help you with this. The issue however is that you are
looking for a pragmatic solution, aren't well all! Well I have seen an
interesting tool that presents workflow in a real pragmatic form, and
also allows you to visually model your workflow by definition of the
different workflow processes. The product is called revologic, and I
presume it can be found under www.revologic.com. The last time I had a
look they also had some really cool online demos. I think it's worth
having a look.

With Love
Andrea
 
D

Dave Neary

Hi,

Workflow engine is to tell the system what's the next activity
to execute?

Workflow client is to define the flow by drawing the
flow charts. Workflow client is like a modeling tool?

Please comments.

In general, a workflow is a modelling of some real-life process.

One such process might be submitting an expense form. The workflow might
go along the lines of

Process Expense Form:

1) Employee starts process and attaches expense form
2) Depending on the amount of the expense form,
- send it direct to accounting
- send it to department head for validation
- send it to CFO for validation
3) If expense form is validated, send it to accounting
4) In accounting, pay the expenses.
5) End process (store all relevant info in the accounting database, for
example).

In general, things break down in three parts:

1) Workflow modeler - GUI tool allowing creation of process models
2) Workflow motor - react to events in a process instance - when someone
completes some part of a process, move the process along, and do any
stuff that needs doing (working out decision nodes, or sending alert
e-mails, or saving information somewhere, for example).
3) Workflow client - The means by which people advance a process
instance.

So in our example, the workflow administrator would first define what
accounting, CFO, department head and employee meant (who belongs to
these classes, what rights they have), then define the process itself by
drawing the flowchart for the process. He'd do this in the workflow
modeler (something like Enhydra Shark, for example).

Then the employee will interract with the workflow client, creating a
process instance, attaching a document to it, and the client will
inform the workflow engine that the process can be moved on to the
next stage.

The workflow engine will move the process on to a decision node, will
evaluate the information from the employee, and allocate to the task to
the next person in the chart. And so on.

Hope this clears things up a bit.

Cheers,
Dave.
 
D

Dave Neary

Hi,


More comments - you mentioned JMS (well, Sonic MQ) - this is simply a
message bus - a place where processes can register as listening for
certain types of message, and other processes can send that type of
message.

Thos is often used as the way that the workflow clients communicate with
the workflow engine, but this doesn't necessarily have to be the case.
It is just a handy way to separate the communication layer from the
"business logic" in the workflow client and engine

Cheers,
Dave.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,764
Messages
2,569,567
Members
45,042
Latest member
icassiem

Latest Threads

Top