A Coloured Petri Net Approach to Model and Analyse Stateful Workflows Based on WS-BPEL and WSRF

       






Home

 

Documentation

 

PTCPN transformation for WS-BPEL and WSRF

 

Case studies

 

Tool support

 

Contact

 


Petri net

WS-BPEL, for short BPEL, is an OASIS orchestration language for specifying actions within Web service business processes. BPEL is therefore an orchestration language in the sense that it is used to define the composition of services from a local viewpoint, describing the individual behaviour of each participant. BPEL activities can be basic or structured:

.
  • Basic activities are those which describe the elemental steps of the process behaviour, such as the assignment of variables (assign), empty action (empty), time delay (wait), invoke a service (invoke) and receive a message (receive), reply to a client (reply), and throw an exception (throw). We also have an action to terminate the process execution at any moment (exit). For technical reasons we have also included a barred form of reply action, which is used when a service invocation expects a reply, in order to implement the synchronization with the reply action from the server.

Basic activities

Invoke/Receive activities

Reply/Oreply activities

  • Structured activities encode control-flow logic in a nested way. The considered structured activities are the following: a sequence of activities, separated by a semicolon, the parallel composition, represented by two parallel bars (|), the conditional repetitive behaviour (while), and a timed extension of the receive activity, which allows to receive different types of messages with a time-out associated (pick).





While activity

Pick activity

Sequence activity

Parallel activity

In addition, WSRF is a resource specification language developed by OASIS and some of the most pioneering computer companies, whose purpose is to define a generic framework for modelling Web services with stateful resources, as well as the relationships among these services in a Grid/Cloud environment. This specification contains the following parts:

.






  • WS-ResourceProperties: There is a precise specification to define WS-Resource properties, which defines the properties of the associated resource (disk size, processor capacity,...). Furthermore, a WSDL file must be provided in order to facilitate the allowed resource operations. Among the operations allowed by the standard are GetResourceProperty and SetResourceProperty, which are used to manipulate the resource property values.
  • WS-ResourceLifetime: The WSRF specification does not provide a standard way to create resources. However, resources have an associated lifetime, which means that once this time has elapsed, the resource is considered to be destroyed, and the subscribers are correspondingly notified. We have then included, for completeness, an operation to create resources, createResource, in which the initial value of the resource, its lifetime and the activity that must be launched upon its destruction are indicated. We also have an operation in order to modify the current resource lifetime, setTimeout.
  • WS-Notification: Clients can subscribe to WSRF resources in order to be notified about some topics (resource conditions). We therefore include the subscribe operator for a customer to subscribe to a resource, indicating the condition under which it must be notified, and the activity that must be executed upon that event.

WSRF activities

 

Links:

Toledo Map