Package org.osid.process


package org.osid.process

The Open Service Interface Definitions for the org.osid.process service.

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.




Copyright © 2009 Massachusetts Institute of Technology.

Copyright © 2010 Ingenescus All Rights Reserved.

This Work is being provided by the copyright holder(s) subject to the following license. By obtaining, using and/or copying this Work, you agree that you have read, understand, and will comply with the following terms and conditions.

Permission to use, copy and distribute unmodified versions of this Work, for any purpose, without fee or royalty is hereby granted, provided that you include the above copyright notices and the terms of this license on ALL copies of the Work or portions thereof.

You may nodify or create Derivatives of this Work only for your internal purposes. You shall not distribute or transfer any such Derivative of this Work to any location or to any third party. For the purposes of this license, "Derivative" shall mean any derivative of the Work as defined in the United States Copyright Act of 1976, such as a translation or modification.

This Work and the information contained herein is provided on an "AS IS" basis WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE WORK OR THE USE OR OTHER DEALINGS IN THE WORK.

The export of software employing encryption technology may require a specific license from the United States Government. It is the responsibility of any person or organization contemplating export to obtain such a license before exporting this Work.

  • Interfaces
    Class
    Description
    A process defines a collection of states.
    This session creates, updates, and deletes Processes .
    This is the form for creating and updating processes.
    This session defines methods for managing a hierarchy of Process objects.
    This session defines methods for traversing a hierarchy of Process objects.
    Like all OsidLists , ProcessList provides a means for accessing Process elements sequentially either one at a time or many at a time.
    This session provides methods for retrieving Process objects.
    The state manager provides access to state lookup and creation sessions and provides interoperability tests for various aspects of this service.
    This interface is a container for a partial hierarchy retrieval.
    Like all OsidLists , ProcessNodeList provides a means for accessing ProcessNode elements sequentially either one at a time or many at a time.
    This session defines methods to receive notifications on adds/changes to Process objects.
    The state profile describes interoperability among state services.
    The state manager provides access to state lookup and creation session and provides interoperability tests for various aspects of this service.
    This is the query for searching processes.
    This is the query inspector for examining process queries.
    This session provides methods for searching among Process objects.
    The process receiver is the consumer supplied interface for receiving notifications pertaining to new, updated or deleted Process objects.
    The interface for governing process searches.
    An interface for specifying the ordering of search results.
    This interface provides a means to capture results of a search.
    This session provides methods for searching among Process objects.
    A State represents a stage in a process.
    This session creates, updates, and deletes States .
    This session provides methods to re-assign State to reference Ids .
    This session defines methods to receive notifications on changes of object states.
    The state receiver is the consumer supplied interface for receiving notifications pertaining to changed states.
    This is the form for creating and updating States .
    Like all OsidLists , StateList provides a means for accessing State elements sequentially either one at a time or many at a time.
    This session defines methods for retrieving states.
    This session defines methods to receive notifications on adds/changes to State objects in this Process .
    This is the query for searching states.
    This is the query inspector for examining state queries.
    This session provides methods for searching among State objects.
    The state receiver is the consumer supplied interface for receiving notifications pertaining to new, updated or deleted State objects.
    The search interface for governing state searches.
    An interface for specifying the ordering of search results.
    This interface provides a means to capture results of a search.
    This session provides methods for searching among State objects.
    This session manages state sequences.
    This session provides methods to retrieve State to reference Id mappings.