BEGIN OF ChangeLog file for BPEL2oWFN Version 2.0.0

Change Log
**********

Most recent version at the end of this section.

Version 1.0 (16 January 2006)
-----------------------------

   - input:
        * BPEL process compliant to the specificiation BPEL4WS version
          1.1, May 2003.

   - output:
        * LoLA Petri net

        * open workflow net

        * Dot representation

   - implemented patterns:
        * Christian Stahl. A Petri Net Semantics for BPEL.
          Informatik-Berichte 188, Humboldt-Universita"t zu Berlin,
          July 2005.

Version 1.1 (24 February 2006)
------------------------------

   - new output formats:
        * APNN (Abstract Petri Net Notation) Petri net

        * PNML (Petri Net Markup Language) Petri net

        * low-level PEP (Programming Environment based on Petri Nets)
          Petri net

   - overworked patterns:
        * the Stahl-semantics (see version 1.0) has been enhanced and
          can be parametrized:
             * original semantics

             * models without BPEL's standard faults

             * acyclic models
          For more information please refer to the User's Manual.

   - static analysis:
        * To reduce the size of the Petri net model static analysis is
          used to only generate nodes for the DPE (dead path
          elimination) when necessary.

   - miscellaneous:
        * The compiler generator tools Flex, Bison and Kimwitu++ are
          not any more necessary to compile BPEL2oWFN: the generated
          sources are now part of the distrubution.

        * The oWFN format was overworked and allows final markings.

        * GNU getopt allows more flexible command-line parameter
          processing allowing to create several output file formats in
          a single run.

        * Debug output can be written into a log file.

        * The classes organizing the Petri nets are overworked for
          performance and extensibility.

   - fixed bugs:
        * The generation of all possible types of the `<invoke>'
          activity (synchronous, asynchronous, with and without
          implicit scope) is overworked.

Version 1.2 (6 April 2006)
--------------------------

   - overworked patterns:
        * more parameterized versions of the Stahl-semantics (see
          version 1.1):
             * acyclic models (also acyclic event handlers)

             * models without variables

             * models without standard faults occuring while handling a
               fault
          For more information please refer to the User's Manual.

   - static analysis:
        * A control flow graph can be built and used to detect the use
          of uninitialized variables.

   - miscellaneous:
        * The command-line parameter `-p finishloop' is renamed to `-p
          finalloop'.

        * Structural reduction rules remove all structural dead nodes
          of the generated Petri net model.

   - fixed bugs:
        * Pattern of asynchronous `<invoke>' activity does no longer
          receive messages.

        * Structural reduction rules no longer change the semantics of
          the `<switch>' activity.

        * Structural reduction rules no longer remove the loop
          transition for deadlock search.

Version 2.0.0 (20 April 2007)
-----------------------------

   - input:
        * executable BPEL4WS 1.1 processes

        * executable WS-BPEL 2.0 processes

        * abstract BPEL4WS 1.1 processes (experimental)

        * abstract WS-BPEL 2.0 processes (experimental)

   - output:
        * Petri net file formats: APNN, INA (untimed, low-level), LoLA
          (low-level), Fiona oWFN, PEP notation (low-level), PNML (with
          extension to model interfaces), SPIN (Promela)

        * other file formats: Graphviz dot, XML

   - implemented patterns:
        * overworked feature-complete Petri net semantics for BPEL4WS
          1.1 and WS-BPEL 2.0

        * overworked simplified Petri net semantics to model the
          communicational behavior only

        * several versions of each pattern controlled by command-line
          parameters

   - static analysis
        * 44 of 94 static analysis goals of the WS-BPEL specification
          are checked

        * read access to uninitialized variables can be detected using
          the CFG (control flow graph)

        * conflicting receiving activities can be detected using the CFG

   - miscellaneous:
        * completely overworked architecture

        * all Petri net-related functions are packaged to a Petri net
          API (application programming interface) to be published
          independently of BPEL2oWFN soon

        * statistics of the input process are displayed after implicit
          transformation rules are applied

        * messages are classified (error, warning, etc.) and numbered
          to allow for a detailed description in the manual


Copyright
=========

Copyright (C) 2005, 2006, 2007 Niels Lohmann

     Copying and distribution of this file, with or without
     modification, are permitted in any medium without royalty provided
     the copyright notice and this notice are preserved.

See `http://www.gnu.org/software/bpel2owfn' or the User's Manual for
more information.

END OF ChangeLog file for BPEL2oWFN Version 2.0.0
