Activiti is a BPMN automation tool that makes communication between business analyst and the developers easy. Activiti has a web-based graphical interface for business analysts to prepare workflows that can be enhanced by developers adding Java code using an Eclipse plugin. It has a lightweight engine that can be embedded in Java applications to deploy the workflow and an explorer for deploying the process definitions online. Activiti also has a REST interface.
Activiti uses an in-memory database by default. Installation requires Java and servlet container like Tomcat. I have created a puppet script to automate activity installation in a virtual machine. The script installs activity Explorer and the REST interface with the mySQL database. if you want to connect to an external database you can make the necessary changes in the properties file within the code folder.
Installation instructions for Activiti
There are ways of creating a virtual Linux machine in your laptop (Mac and Windows). Virtualization leaves your operating system untouched, and the virtual machine can be removed without a trace after use. Without further ado, you can install this in 5 easy steps using my puppet script.
1. Install VirtualBox.
2. Install Vagrant.
3. Download and extract the zip file below to any folder.
(The script takes approximately 10 minutes to setup the machine. However, no response is needed from your part. An internet connection is required.)
5. Access in your browser:
- Access Activiti at http://localhost:8001/activiti-explorer
- Access REST interface at http://localhost:8001/activiti-rest/services
To stop the machine on windows, use stop.bat and on Mac:
You can restart the machine as step 4 above. Restarting the machine does not require an internet connection.
If you want to destroy (uninstall) the virtual machine, use the following command in the script folder.
vagrant destroy --force
Feel free to fork and improve this script on GitHub. Pull-requests are welcome. Join E-Health on GitHub if you want direct write access to the repository.