RE: Composition as planning

Hi,

I've been thinking about this for some time and would like to get some feedback.
I have considered, to some extent, work on planning and how it can be applied to Web services
composition. From earlier discussions over this list it is clear that traditional classic planning
techniques have to be in some way adapted to handle the diversity issues over the Web. I want to put
forward the following thoughts:

Various planning techniques where devised around specific problems and domains (correct me if I'm
wrong): for example STRIPS planning.
When considering the planning required for Web services, there are issues which seem to crop up in
every composition hence there is place for capturing these commonalities into some form of
operator-like descriptions.

For instance consider a simple sequential service composition:

Two services can be composed sequentially if the outputs/effects of one service match with the
inputs/preconditions of the other.
In the real world, apart from checking this, some composer should also make sure that once the
message with the outputs/effects from the first service has been received then another message that
includes this information is sent to the second service.

Hence though an initial plan that matches IOPE can be performed in some preliminary phase of
composition, then monitoring of message passing is required to make sure that the initial plan can
actually be executed in the real world.

Returning to my initial point, one can say that these actions are common to most compositions that
can occur. So it would be possible to capture these into a set of operators that represent the
actions that are available for service composition.

For example: if the output/effect from service A have been received then a message to service B can
be sent

Operator: sendInvocationMsg
Preconditions: (and (output=input)(effect=precondition)) (some constraint here over the issue of
services having both output/effects and requiring input/precond)
Effect: (service A executed)

Other operators can be defined in a similar way to capture other common behaviours related to
service composition.

Now this is just an idea and might have been explored by others, but IMHO it gives some standard way
of composing services and gives a planner the possibility to monitor real world compositions.

Would really like to get feedback on this and possibly other ideas that confirm/or not the above.

Regards,

Charlie

Received on Thursday, 26 February 2004 04:03:54 UTC