Workflow Open Service Interface Definition
The Workflow Open Service Interface Definition (OSID) is an Open Knowledge Initiative specification which provides the means to define a process composed of steps. OSIDs are programmatic interfaces which comprise a Service Oriented Architecture for designing and building reusable and interoperable software.
Each step has input conditions and output states. A process exists to advance work from an initial to a terminal step. The advance is affected by events that are performed as part of a step, the result of which is a new Step Output State. Work events are the result of Agents performing a specific role in the Process.
Part of the service providers responsibility is to define the process and its steps. Other parts of the service are intended to capture the events of a user in the process. Separate applications for designing and using Workflow are likely to be written, each of which will rely on one or more OSIDs.
The Workflow OSID provides an application, or set of applications, with the means for coordinating and managing workflow based on some predetermined logic, among one or more actors (agents). Abstracting and separating the workflow from the application insulates the application from changes in the workflow logic. Common tools for displaying, monitoring and maintaining workflow could be used in conjunction with the application, saving the application from delivering this functionality.