Welcome to Tiny Workflow
TinyWorkflow is a java API allowing to add workflow behaviour to your POJOs (Plain Old Java Objects).
The 'workflows' implemented by TinyWorkflow are Finite State Machines (a.k.a. State/Transition diagrams). Those workflows are coded into a XML workflow definition file. In your code, the workflow instances are represented by Workflow objects interacting with you application java objects.
![<i>TinyWorkflow Overview</i>](images/TinyWorkflowOverview.png)
TinyWorkflow offers:
- Maintaining the workflow state.
- Scripting and interaction with your legacy java objects.
- Persistence to database (using hibernate)
- Workflow history
- Support for user interface
- Extensions (EJB ...)
And more ...
Available documentation
- In The World: Explain the place of TinyWorkflow in the world of Workflow Engines.
This document is useful if you have to choose a workflow engine and wonder how TinyWorkflow differs from other available workflow implementation.
- TinyWorkflow vs. OSWorkflow: Comparison between TinyWorkflow and OSWorkflow APIs. TinyWorkflow is inspired from the open-source OSWorkflow API, this document explain what are the difference between the two workflow engines.
Useful only if you already know OSWorkflow.
- Key Concepts: explain the key architecture concept of TinyWorkflow.
Useful to have an overall understanding of TinyWorkflow API architecture.
- Getting Started: Explain basic usage of TinyWorkflow.
The best way to start playing with TinyWorkflow.
- Workflow Reference: Reference on TinyWorkflow containing all you ever need to know about it (but there's still lot of To-Dos in it).
Reference for developers
- Workflow XML Reference: Complete description of all the possible elements of a XML workflow definition.
Your must-have when writing workflow XML definitions.
- Customization: explain how to extend TinyWorkflow with custom components.
For advanced developers.