Fiona - Checking behavioral correctness of a service

Understand Fiona

Fiona is a tool designed to check behavioral correctness of a service and to analyze the interaction of services in service oriented architectures, for instance. As a formal model for services Fiona uses open nets, a special class of Petri nets. Fiona implements very efficient data structures and algorithms, which have partly been adapted from the Petri net model-checker LoLA. Fiona has been proven to be applicable in practice by service designers, service publishers, and service brokers.

Case Studies

  • Controllability

    • at the WSFM 2008, a paper was presented containing a case study on efficient controllability analysis of open nets.


We suggest the following papers to get an overview of the analysis scenarios for which Fiona is designed.

Get Fiona

Fiona is released as free software under the terms of the GNU General Public License. You can download the source code and compile it using a C++ compiler.


You can download the latest source code release here.

Setup & Install

Fiona can be compiled on most operating systems1) with

tar xfz fiona-y.xx.tar.gz

cd fiona-y.xx



To check the built binary, you can (optionally) execute

make check

which runs a bunch of self-tests.

After compilation, you can install the generated binary with

make install

For more details, see the INSTALL file of the distribution.


The (most recent, possibly buggy) source code is also available from an anonymous Subversion repository typing2)

After checking out, the following commands have to be executed to prepare Fiona to compile

cd fiona autoreconf -iv

Now, Fiona can be configured and compiled with



Note that in order to compile the source code from the repository, you need to following tools:

Change Log

Use Fiona

Fiona is a stand-alone tool, designed to be used as a background service of existing service modeling tools. Therefore, Fiona has no graphical interface - the analysis task as well as the input file(s) are given to Fiona via command line options. Fiona then computes and reports the result and, if needed, generates the output file(s).


A documentation is available here.



Currently, we are not aware of any bugs.

Bugs can be reported at Fiona's project page or via e-mail to fionaservice-technologyorg.

1) It compiles on Microsoft Windows (with Cygwin), Sun Solaris, GNU/Linux, and Mac OS X.

2) For more information, see