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>

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.