Open service interface definition
Description
Open Service Interface Definitions (OSIDs) are programmatic interface specifications describing services. These interfaces are specified by the Open Knowledge Initiative (O.K.I.) to implement a Service Oriented Architecture (SOA) to achieve interoperability among applications across a varied base of underlying and changing technologies.
To preserve the investment in development, program logic is separated from underlying technologies through the use of software interfaces each of which defines a contract between a service consumer and a service provider. This separation is the basis of any valid SOA. While some methods define the service interface boundary at a protocol or server level, OSIDs place the boundary at the application level to effectively insulate the consumer from protocols, server identities, and utility libraries that are in the domain to a service provider resulting in software which is easier to develop, longer lasting, and usable across a wider array of computing environments.
OSIDs assist in software design and development by breaking up the problem space across service interface boundaries. Because network communication issues are addressed within a service provider and not at the interface, there isn't an assumption that every service provider implement a remote communications protocol (though many do). OSIDs are also used for communication and coordination among the various components of complex software which provide a means of organizing design and development activities for simplified project management.
OSID providers (implementations) are often reused across a varied set of applications. Once software is made to understand the interface contract for a service, other compliant implementations may be used in its place. This achieves reusability at a high level (a service level) and also serves to easily scale software written for smaller more dedicated purposes.
Service Definitions
- Agent OSID
- Assessment OSID
- Authentication OSID
- Authorization OSID
- CourseManagement OSID
- Dictionary OSID
- Filing OSID
- Grading OSID
- Hierarchy OSID
- Logging OSID
- Messaging OSID
- Repository OSID
- Scheduling OSID
- Workflow OSID
References
- Open Knowledge Initiative: O.K.I.
- Baving, T., Cook, D., Green, T. 2005. Integrating the Educational Enterprise.
- Kraan, W. 2005. O.K.I. and IMS, wires and sockets revisited.
- Kahn, J. 2005. Screen Shots: Repository OSID Interoperability.
- Kumar, V., Merriman, J., Thorne, S. 2004. Open Knowledge Initiative Final Report.
- Kahn, J. 2005. Repository Developer's Guide.
- Coppeto, T. 2005. OSID 2.0 Design Patterns: OSID Layering.
- Kahn, J. 2005. Managing Complexity and Surviving Technology Change.