The Process OSID is an auxiliary service that manage
Processes and mapping of external OSID
Ids to
States.
Objects may take part in multiple processes
simulataneously, and while an object can only be in one
state within a process, an object may have more than one
state across processes. An externally mapped Id
is restricted to one State per
Process.
Process
A Process is a collection of
States. States are mapped to a Process to form a
finite state machine. The StateSequencingSession can be
used to design the FSM by specifying sequential set of
next valid States.
State
A State is a simple OsidObject
that captures the name and description of a state.
A State belongs to a single Process.
A process for representing the lifecycle of
Assets and another process for representing the
lifecycle of Courses may each define a
"draft" state. Two States need to be
created to represent the draft state of a course in the
course lifecycle process and the draft state of an asset
in the asset lifecycle process.
Process Catalog
A Process is an OsidCatalog
of States.
The standard catalog federating pattern was blindly
applied which can create views of combined processes. What
this means in practice is anyone's guess.
As an auxiliary orchestrated service, a Process
represents not only a collection of States
but also the implicit object type of the mapped
Ids. For example, the "Publishing Asset"
process manages Asset Ids
where all Assets in the orchestrated
repository are known and already in some initial
State.
Workflow
The Workflow OSID defines a service to move
Work through a series of Steps in a
Process. The Process OSID is the flip side
of the Workflow OSID where the Work is the
external Id and the Step is
the State. The Process OSID can be considered a view
geared toward a state model where it is desirable to
understand what is occurring from the object's point of
view. The Resourcing OSID is the other service in this
trinity defining the service from the worker's point of
view.
|