~~NOTOC~~
====== Fiona ======
{{tag>tool Fiona}}
===== 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 [[publications:weinberg_2008_wsfm|paper]] was presented containing a case study on efficient controllability analysis of open nets.
==== References ====
We suggest the following papers to get an overview of the analysis scenarios for which Fiona is
designed.
{{topic>case_study +Fiona&nodate&nouser&firsthl&list}}
===== Get Fiona =====
{{ :tools:gpl.png}} Fiona is released as [[http://www.gnu.org/software/software.html|free
software]] under the terms of the [[http://www.gnu.org/licenses/gpl.html|GNU General Public
License]]. You can download the source code and compile it using a C++ compiler.
==== Download ====
You can download the latest source code release
**[[http://download.gna.org/service-tech/fiona/|here]]**.
==== Setup & Install ====
Fiona can be compiled on most operating systems((It compiles on Microsoft Windows (with
[[http://www.cygwin.com|Cygwin]]), Sun Solaris, GNU/Linux, and Mac OS X.)) with
tar xfz fiona-y.xx.tar.gz
cd fiona-y.xx
./configure
make
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.
==== Sources ====
The (most recent, possibly buggy) source code is also available from an anonymous Subversion
repository typing((For more information, see [[https://gna.org/svn/?group=service-tech]].))
svn co http://svn.gna.org/svn/service-tech/trunk/fiona
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
./configure
make
Note that in order to compile the source code from the repository, you need to following tools:
* [[http://www.gnu.org/software/autoconf|Autoconf]]
* [[http://www.gnu.org/software/automake|Automake]]
* [[http://flex.sourceforge.net|Flex]]
* [[http://www.gnu.org/software/bison|Bison]]
==== 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).
==== Documentation ====
A documentation is available **[[http://download.gna.org/service-tech/fiona/fiona.pdf|here]]**.
==== Parameters ====
==== Bugs ====
Currently, we are not aware of any bugs.
Bugs can be reported at Fiona's [[https://gna.org/bugs/?func=additem&group=service-tech|project
page]] or via e-mail to [[fiona@service-technology.org]].