There are scenarios where the re-use of a process definition is of key importance; in these scenarios, a long-time is spent carefully defining a generic process model that instantiates in the same way many times. These processes are called administrative processes (aka process models).
A process is a specific definition of a process that may be instantiated multiple times. These processes are based on a process-instance workflow paradigm. Processes are created into the the engine via the ManagmentAPI (deploy operations giving an XPDL file). No java DefinitionAPI allowing the creation of a process is supported for this release canditate. When the process is created, the workflow users are able to instantiate the workflow process via RuntimeAPI to create process instance(s). Once the process instance(s) are created, workflow participants can access the QueryRuntimeAPI to accomplish the following: obtain their "ToDo list", done list, suspended list, execute assigned activities, or access the QueryDefinitionAPI to get complementary/static definition informations onto tasks, instances, participants....
A process model keeps track of all its instances. That is, all instances of this process are retrievable through the QueryRuntimeAPI functions.
Bonita instantiation mechanism:
At process instantiation a new (XPDL) process object issued form the deployed process definition is created (and initiated with definition elements and specific parameters such as variables). A root execution object pointing to the process object is created and started. It causes the execution to point/enter onto the first activity of the process. The root execution references a ProcessInstance object representing the runtime data to be recorded in the journal all along the life of the process instance.