Chimera is an engine for executing fragment-based case models, an approach that allows for modelling flexible business processes. It is developed and maintained by the Business Process Technology (BPT) group at the Hasso Plattner Institute (HPI).
Chimera is not a modeling tool for case models! Creation and deployment of case models is handled by the Gryphon case modeler also available at GitHub.
The easiest way to try out Chimera is using the publicly available instance at ~https://bpt-lab.org/chimera-demo~, which contains several exemplary case models demonstrating the features of Chimera. Please refer to the user guide on how to start and enact cases.
The following instructions will get the Chimera case engine up and running on your local machine.
The following software is necessary to build and run Chimera:
Java 8 JDK
available from Oracle. Make sure that the environment variable JAVA_HOME
points to your JDK folder (e.g. like this).Apache Tomcat 7
or newer, available here.MySQL 5.7 Server
, available here. For your convenience, you can download the installer (direct link) and install MySQL Server, MySQL Notifier, MySQL Workbench, and Connector/J. git
, available here, to access the code repositories.Apache Maven 3
, available here.git clone https://github.com/bptlab/chimera.git
to download the repository to your machine.mysql -u USER_NAME -p PASSWORD -e "create schema SCHEMA_NAME
where SCHEMA_NAME
should be something like 'chimeradb'.mvn install -Ddb.user=USER_NAME -Ddb.password=PASSWORD -Ddb.schema=SCHEMA_NAME -Ddb.test.schema=TEST_SCHEMA_NAME -DskipTests
Replace USER_NAME, PASSWORD, SCHEMA_NAME, and TEST_SCHEMA_NAME with the values from the previous steps.config.properties
was copied to the main directory and whether the variables (mysql.username
, mysql.password
etc.) have been replaced correctly.target/Chimera.war
to Tomcat by copying it to the webapps folder in your Tomcat installation.
mvn tomcat7:deploy -DskipTests
from the command line to automatically deploy the war file. Note however, that you need to configure your Tomcat credentials as described in this article.Now that you have the Chimera case engine running, you probably want to execute some case models. To create case models and deploy them into Chimera you will need the Gryphon Case Modeler.
To manually start a new case select the case model from the left menu and click on the green Start Instance
button.
This will open the case view. Enabled activities are displayed on the right; you can begin an activity by clicking on its name.
If the activity has a data pre-condition you will need to select a data object on which it operates.
Running activities are displayed in the middle. You can terminate them by clicking on the checkmark symbol. This will open a modal dialog, which allows to terminate the activity and set state and values of a potential output data object.
For further information check the Chimera user guide.
Chimera offers two main deployment options: 1) using a Java Servlet container like Apache Tomcat, 2) using a Docker image.
This was already described in the installation section. If you deploy the war file to a remote server, you need to make sure, that a MySQL server is running with the configured database schema.
:warning: Deployment was only tested with Apache Tomcat
Use the Dockerfile
in the main directory of the project repository to create a docker image.
To start the image in a container follow the instructions in the wiki.
Up to date docker images of the Chimera case engine are also hosted on our dockerhub.
You can pull these images with docker pull bptlab/chimera
.
TODO: connect with MySQL container
To simplify the local development workflow, you can make use of the Makefile
.
Todo: mention requirements for this approach.
make build
make release_local
(requires Tomcat and Unix)make docker
(update docker tag in docker-compose.yml
beforehand!)You want to help us? Great :+1:
Please check out Contributing.md for information how you can contribute to the Chimera project, including templates for bug reports, feature suggestions, and pull requests. For in-depth information about the architecture and the individual components of Chimera, the developer documentation in the wiki is the best starting point.
The Chimera case engine is provided under the MIT free and open source software license - see LICENSE.md for details.