BPEL2PN

Overview

News

Since October 2005, the Theory of Programming chair is working in the Tools4BPEL project. As a part of it, BPEL2PN is re-implemented to support flexible model generation, so the development of BPEL2PN ended.

BPEL2oWFNThe successor tool, BPEL2oWFN, is available and supports all features of BPEL2PN. For more information, see the BPEL2oWFN website.

Intention of BPEL2PN

BPEL2PN [SHS05] is a Java-based compiler that transforms a process specified in the Business Process Execution Language for Web Services (BPEL) [CGK+03] into a Petri net according to the Petri net semantics [Sta05, SHS05]. The output format of BPEL2PN is a Petri net in the data format of the Petri net based model checker LoLA [Sch00, LoLA]. LoLA also offers the opportunity to write out the net into the standard interchange format for Petri nets, the Petri Net Markup Language (PNML) [Bea03].

Diagram of BPEL2PN

  • Input: BPEL file process.bpel valid regarding to the BPEL 1.1 specification [CGK+03]
    Note, if the BPEL file is not valid regarding to the specification, BPEL2PN will either terminate or generate an incorrect output.
     
  • Output: Petri net in .lola format named process.lola
    Note, LoLA also offers the opportunity to write out the net process.lola into the standard interchange format for Petri nets, the Petri Net Markup Language (PNML) [Bea03].
     
  • Transformation: For each activity of process.bpel an instance of the corresponding pattern is generated and all these patterns are stuck together as done in the BPEL process.

If the state space can be fully explored by LoLA [Sch00, LoLA], it is possible to analyze Petri net specific properties like dead places and dead transitions as well as any temporal property of the underlying process that can be expressed by a formula of the temporal logic CTL.

In order to visualize the generated Petri net you can use the -dot option and then use the tool dot [DOT] for drawing the net. Notice, for realistic processes this option is useless, because of the net size.

Contact Person

Christian Stahl

Humboldt-Universität zu Berlin
Institut für Informatik
Unter den Linden 6
10099 Berlin, Germany

Homepage:   www2.informatik.hu-berlin.de/top/mitarbeiter/stahl
E-mail:   stahl @ informatik.hu-berlin.de  
Phone:   (+49) (30) 2093 3074