views:

1258

answers:

7

We have a new for a fairly simple workflow system, specifically focused upon business documents. It essentially accepts different types of documents (purchase requests, invoices, etc) and routes them to different roles and flows based on variables attached to them (total dollar amount, etc).

I'm open to either using an existing one or writing my own, but the few I've found so far that are open source are in either early alpha or abandoned. I've tried to my head around things like ruote (a ruby workflow engine...since I enjoy ruby), but the docs are a bit light and it almost seems more of a bazooka aimed at a fly. I could be wrong though.

Anyway, was hoping for suggestions for either good existing projects or frameworks to use. I appreciate your help. I'm not too concerned about what language it's in, and would even consider C# and .NET if it was mature and could run on Linux via Mono.+

CLARIFICATION

A simple ticketing system won't work for this. It must support flows, or paths, that a document is automatically routed through based on certain attributes of the document, and it needs to support the concept of acceptance/rejection.

Thanks for your responses so far.

+1  A: 

Pretty much any of the usual issue-tracking systems will handle it.

Charlie Martin
Well, not really at this level. I need an app targeted more towards Accounting and Purchasing folks...not IT guys.
+1  A: 

@Charlie +1.
We use Trac

Avram
+2  A: 

We use JIRA to manage issues like this.

For actually managing the documents, try KnowledgeTree.

metao
JIRA is not open source (though it appears to be very good).
sleske
Its not open source, but the source is available (if you pay for it). As an issue tracking system, it is fantastic, though.
metao
A: 

Ruote documentation is light ? I'd like to know what motivates this comment. Maybe you have some time to explain, you'll find my email in the README at http://github.com/jmettraux/ruote/ Thanks in advance.

So a workflow engine is a bazooka ? Need a rifle ? Have you had a look at state engines ?

These are two Ruby open source projects. Both are Rails plugins, but, IIRC, the latter maybe used with plain Ruby classes. You could use one of them to add "state" to your documents.

You might also want to take a look at decision tables for carving decisions out of code : http://github.com/jmettraux/rufus-decision/ You could thus express and automate your document routing decisions via Excel or Google Spreadsheet (CSV).

(next step would be looking at rule engines...)

jmettraux
+5  A: 

You're looking for Alfresco. Ignore the Web contenet management part and focus on the Enterprise Content Mangement, ie document management, workflow, etc.. It also has nice Office integration so non-techy types can use it easily.

Mystere Man
A: 

Have a look at the webcasts at http://www.alfresco.com/about/events/ondemand/

It is very easy to create simple documents based work flow in Alfresco.

Rudiger Wolf
A: 

I and some colleagues have had rather strong success with jBPM. It's taken awhile, but it's turned into a rather nice product. I hear it meshes quite well with JBoss's Seam project, too.

As an aside, I once implemented a "jBPM-lite" in Ruby (unfortunately, my pleas to release it as open source were rejected) which did everything you specified above, and it only took me about 3 days. If you love love love Ruby, you could learn jBPM's schema and approaches and mimic them fairly easily (as long as you skip sub-processes). But I'd still recommend jBPM over rolling your own.

Ian Terrell