Open service interface definition: Difference between revisions

Content deleted Content added
m top: replaced: longer lasting → longer-lasting using AWB
No edit summary
Line 1:
'''Open Serviceservice Interfaceinterface Definitionsdefinitions''' ('''OSIDs''') are programmatic interface [[specifications]] describing services. These interfaces are specified by the [[Open Knowledge Initiative]] ('''O.K.I.''') to implement a [[Serviceservice-Orientedoriented Architecturearchitecture]] (SOA) to achieve [[interoperability]] among applications across a varied base of underlying and changing technologies.
 
To preserve the investment in [[software engineering|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 [[Protocol (computing)|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 ''below'' 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]].