DESTool ...


DESTool is still under development. The current version should be functional, however, it may not always behave nice. Don't trust undo/redo/autosave.

... is a tool for the synthesis and analysis of discrete event systems. Technically, DESTool is implemented as a graphical front-end to the discrete event systems library libFAUDES. The latter uses a fairly simple functions-on-arguments approach, i.e., there are faudes-functions that operate on data of a specific faudes-type. Functions and types are documented by the libFAUDES user-reference. DESTool invites the user to organize a DES design task as a project that consists of faudes-typed variables on which a list of faudes-functions (aka script) is to be applied.

The below screen-shot shows a DESTool project for a variation of the well known simple machine example.



DESTool is available from the preview folder on the LRT/FGDes download page. There are binary packages for most common operating systems:

For automatic layout of graphs (generators, systems, etc.), DESTool relies on the tool dot from the Graphviz package. For most Linux distributions, dot can be installed by the package manager or is included anyway. For Mac OS and MS Windows, installers are available from the Graphviz site. Regarding DESTool, you may test your Graphviz installation by invoking dot -V from the command prompt. If DESTool fails to figure the location of the dot executable, the path can also be set in vioconfig.txt.


Regarding principle functionality, we consider DESTool as of version 0.40 to be fine for a public audience. However, there is still quite a number of minor and major issues with the actual user interface, like context menus, navigation through windows, undo/redo etc. We plan to address these issues in due course by silently updating up to version 0.99. During this process, newer versions of DESTool will continue to read files written by older versions, but not necessarily vice versa.

Please feel free to notify us about any undesirable behaviour in the user interface. This will help us to focus our efforts. Also check for available updates once in a while.


DESTool is developed at the Friedrich-Alexander Universitaet Erlangen-Nuernberg with Thomas Moor as coordinator and principle author. The underlying class hierarchy for workspace objects and the interface via the libFAUDES RTI were designed in course of Ruediger Berndt's master thesis. Overall, our software development did substantially benefit from various student projects, either in form of code contributions or user feedback.

As of February 2016, the following people have contributed libFAUDES/DESTool:

Ramon Barakat, Ruediger Berndt, Christian Breindl, Christine Baier, Tobias Barthel, Christoph Doerr, Marc Duevel, Norman Franchi, Rainer Hartmann, Jochen Hellenschmidt, Stefan Jacobi, Matthias Leinfelder, Tomas Masopust, Michael Meyer, Andreas Mohr, Thomas Moor, Mihai Musunoi, Bernd Opitz, Katja Pelaic, Irmgard Petzoldt, Sebastian Perk, Thomas Rempel, Daniel Ritter, Berno Schlein, Ece Schmidt, Klaus Schmidt, Anne-Kathrin Schmuck, Sven Schneider, Matthias Singer, Ulas Turan, Christian Wamser, Zhengying Wang, Thomas Wittmann, Shi Xiaoxun, Jorgos Zaddach, Hao Zhou, Christian Zwick, et al

In contrast to libFAUDES, DESTool is currently distributed in binary form only, see [here] for license/legal details. If you need access to the DESTool source code, this can be arranged on an individual basis.


Copyright (C) 2008 - 2016 Thomas Moor


01.03.2016 DESTool 0.82 (improved build system)
01.12.2013 DESTool 0.74 (improved HIL-performance)
01.10.2011 DESTool 0.63 (Lua console)
15.12.2010 DESTool 0.51 (many bug-fixes, more to come)
15.03.2010 DESTool 0.40 (3rd public preview, luafaudes extensions)
15.02.2010 DESTool 0.33 (2nd public preview, libFAUDES RTI access)
10.11.2008 DESTool 0.21 (1st public preview)



libFAUDES 2.28b --- 2019.12.01 --- with "synthesis-observer-diagnosis-iosystem-hiosys-multitasking-coordinationcontrol-timed-iodevice-simulator-luabindings"