ode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Lavanya Ramakrishnan <laram...@cs.indiana.edu>
Subject Re: Management APIs
Date Sat, 15 Sep 2007 00:35:51 GMT
Paul and Alex,

 Thanks for your quick and detailed responses. And sorry about asking so
many questions at once ... :-)

 Some follow-up below.

> 2. The InstanceManagement interface seems to have a suspend and resume
> > operations. Is it possible to do a partial suspend and resume e.g. on a
> > particular branch? For example if there were two activities A and B
> > executing in parallel, I would like to suspend A and not B.
> Like Paul said, it's possible internally but it's not exposed through the
> InstanceManagement API.  You're first to ask!

Keeping with the spirit of "asking a lot", how hard would it be to expose
this through the Management API? If I decide to go with using Apache ODE,
I will be happy to help but I need to get a sense of how much work this
might involve?

> 4. Is there any support available or planned for allowing modifying to
> > workflow instance during execution? For example, change an activity that
> > has not been executed so far.
> If you know what you're doing, it would not take much work in the engine to
> allow this.  However my take on the subject is that we are a few
> Ph.D.'saway from a sane model to safely allow dynamic changes to
> process models.
> Based on my experience, I would say the better investment is to break down
> processes into shorter-running and more composable pieces.  Workflow
> generally requires a more malleable design where state and transitions are
> modeled as dynamic/malleable matter rather than defined as static program.
> Consider BPEL4People as a step in that direction.

I agree with what you say about having a sane model to safely allow
dynamic changes. Maintaining consistency and state management is actually
quite tricky.

> There's no such direct facility at the moment, although the engine generates
> events for these cases so it would be possible to build something out of the
> existing event handler mechanism.  So I guess it would depend on the
> needs/design you have in mind.

The BPEL workflows I am working with right now are Grid scientific
workflows that have a huge amount of variability in the underlying
resources. What I am looking at (actually for my Phd thesis) is building
planning and dynamic adaptation capabilities atop a BPEL workflow engine
which can manipulate workflow (pre-execution and real-time) to bypass some
of these failures. In the event of the failure, I would like an external
service to be invoked. This service might make any corrections necessary
before invoking possibly a recoverActivity. I am looking at available BPEL
engines to see how much management support is available that might meet a
majority of my requirements.


View raw message