Workflow + Rails


#1

Is there any project or solution for an easy integration of a WFE / WfMS
into rails? I’m quite new to this topic, but I probably need a small
subset of workflow patterns (or whatever the correct term is) only. Any
pointers are welcome.


#2

It shouldn’t be difficult to port some of the work done here to rails

http://www.tonymarston.net/php-mysql/workflow.html

But I tend towards Martin Bernd S. point. It just does not spell
like rails.

regards,
Leon L…

On 3/3/06, Berin L. removed_email_address@domain.invalid wrote:

in some cases Java and in one case Lotus Notes based. My personal
saying that if an invoice needs to be approved by a manager, the web app
checks to see if the invoice has the “CheckedByManager” flag set. If
so, it can move on to the next step.


Rails mailing list
removed_email_address@domain.invalid
http://lists.rubyonrails.org/mailman/listinfo/rails


Never be afraid to try something new. Remember, amateurs built the
ark; professionals built the Titanic!


#3

Martin Bernd S. wrote:

Is there any project or solution for an easy integration of a WFE / WfMS
into rails? I’m quite new to this topic, but I probably need a small
subset of workflow patterns (or whatever the correct term is) only. Any
pointers are welcome.

I’ll be honest. I’ve done workflow applications in the past, and they
are very limiting. I don’t know of any rails implementations, but most
proper workflow management systems (as opposed to straight up custom
development) integrate as a black box. They are usually C/C++ programs,
in some cases Java and in one case Lotus Notes based. My personal
opinion on WfMS is that they are too much solution for not enough
problem. Most companies are better served by an application that
ensures certain checks (i.e. all the right approvals have been done,
etc.) but doesn’t impose a specific workflow.

For companies that already feel like they need a WfMS it’s a hard sell.
However, for custom development it is rather easy to enforce a work
flow. The process is basically creating a big Finite State Machine,
where the database maintains the state, and the web application
maintains the logic for the state transitions. It’s just a fancy way of
saying that if an invoice needs to be approved by a manager, the web app
checks to see if the invoice has the “CheckedByManager” flag set. If
so, it can move on to the next step.


#4

http://www.tonymarston.net/php-mysql/workflow.html

Thanks for the hint.


#5

Berin L. wrote:

My personal
opinion on WfMS is that they are too much solution for not enough
problem. Most companies are better served by an application that
ensures certain checks (i.e. all the right approvals have been done,
etc.) but doesn’t impose a specific workflow.

That’s exactly what I’ve been thinking. The workflows we’ll have are
relatively simple, but we might have the need to change them easily
later. To me - having a WFE on top on Rails - sounds like an extra layer
of uneccessary complexity. And I don’t know how this should work at all,
when buisness logic and user interaction (forms) are moved to and
controlled by the WFE and not Rails.


#6

Martin Bernd S. wrote:

That’s exactly what I’ve been thinking. The workflows we’ll have are
relatively simple, but we might have the need to change them easily
later. To me - having a WFE on top on Rails - sounds like an extra layer
of uneccessary complexity. And I don’t know how this should work at all,
when buisness logic and user interaction (forms) are moved to and
controlled by the WFE and not Rails.

Basically you won’t be doing rails, but doing the workflow engine.
Their UI’s stink. But that’s my two cents worth.


#7

On 3/3/06, Martin Bernd S. removed_email_address@domain.invalid wrote:

Is there any project or solution for an easy integration of a WFE / WfMS
into rails? I’m quite new to this topic, but I probably need a small
subset of workflow patterns (or whatever the correct term is) only. Any
pointers are welcome.

Check out acts_as_state_machine:
http://lunchroom.lunchboxsoftware.com/articles/2006/01/21/acts-as-state-machine


#8

Again, thanks for the info.

There is a related thread http://www.ruby-forum.com/topic/56839