Demetrix is a Java-based process modelling system. The goal of the project is to develop a flexible framework for managing complex process models using Petri-Net-oriented methodologies (state-task networks and resource-task networks).
Demetrix will be a system for managing complex process models. In spite of the fact that there are many commercial tools for doing this, most of them are not transparent (it is not clear, how the application arrived at the results it produces) or not flexible enough, or both.
For this reason, I want to develop Demetrix as an open source project. It should incorporate best practices both technically and conceptually. Technically, Demetrix will be a Java-based application. At the moment, there are three technical pillars of the Demetrix system - JGraph, Ozone and SwixML.
JGraph is a library for managing graphs. Since process models are graph-oriented in Demetrix, JGraph plays an essential role in implementing Demetrix.
Ozone is the second pillar of Demetrix. It is an object-oriented database management system, which will be used for storage of data. In order to maintain flexibility of the application on the one side, and reduce development effort on the other side, Ozone will be used for storing Demetrix data. In this way, writing an own persistence mechanism (object/relational mapping mechanism) is avoided.
The third pillar of Demetrix is SwixML, a GUI generating engine for Java. SwixML is important because it will also reduce the effort associated with creation of GUIs of the Demetrix system.
Conceptually, Demetrix will be based upon graph theoretic methods for managing process models (state-task networks (STN) and resource-task-networks (RTN)).