Ашық қызмет интерфейсінің анықтамасы (OSID) және қолданысы
Open service interface definition
Ашық қызмет интерфейсінің анықтамасы (OSID) – бағдарламалық интерфейс, қолданбалардың өзара үйлесімділігін қамтамасыз етеді. SOA архитектурасы, технологиялармен интеграция.
Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Кіріспе
Ашық қызмет интерфейсі анықтамасы (OSID) – қызметті сипаттайтын бағдарламалық интерфейс ерекшелігі. Бұл интерфейстерді Ашық білім бастамасы (OKI) әртүрлі және өзгеріп отыратын технологиялар негізіндегі қолданбалардың өзара үйлесімділігін қамтамасыз ету үшін қызметке бағытталған архитектураны (SOA) іске асыру мақсатында анықтайды.
An open service interface definition (OSID) is a programmatic interface specification describing a service. These interfaces are specified by the Open Knowledge Initiative (OKI) to implement a service oriented architecture (SOA) to achieve interoperability among applications across a varied base of underlying and changing technologies.
Негізгі себептері
Бағдарламалық инженерияға жасалған инвестицияны сақтау үшін бағдарламалық логика, бағдарламалық интерфейстерді пайдалану арқылы, негізгі технологиялардан бөлінеді. Әрбір интерфейс қызметті пайдаланушы мен қызмет беруші арасындағы шартты анықтайды. Осы бөліну – кез келген дұрыс SOA-ның негізі. Кейбір әдістер қызмет интерфейсінің шекарасын протокол немесе сервер деңгейінде белгілейтін болса, OSID-тер тұтынушыны протоколдардан, серверлік идентификациялардан және қызмет берушінің құзыратындағы қосымша кітапханалардан тиімді түрде оқшаулау үшін шекараны қолданба деңгейінде орналастырады. Нәтижесінде, бағдарламалық жасақтаманы жасау оңайырақ, оның қызмет ету мерзімі ұзақ, және оны есептеу орталарының кең ауқымында қолдануға болады. OSID-тер бағдарламалық жасақтаманы жобалау және әзірлеу кезінде проблемалық кеңістікті қызмет интерфейсінің шекаралары бойынша бөліп, көмектеседі. Желілік байланыс мәселелері қызмет берушіде және интерфейстің төменгі деңгейінде шешілетіндіктен, әрбір қызмет берушінің қашықтықтан байланыс протоколын іске асыруы керек деген қағида жоқ (дегенмен, көптеген қызмет берушілер осыны жасайды). OSID-тер күрделі бағдарламалық жасақтаманың әртүрлі компоненттері арасындағы байланыс пен үйлестіру үшін де қолданылады, бұл жобалау және әзірлеу процесін жеңілдетіп, жобаны басқаруды ыңғайлы етеді. OSID провайдерлері (іске асырылымдары) әртүрлі қосымшаларда қайта пайдаланылады. Бағдарламалық жасақтама қызмет интерфейсінің шартын түсінгеннен кейін, оның орнына басқа да сәйкес іске асырылымдарды қолдануға болады. Бұл жоғары деңгейде (қызмет деңгейінде) қайта пайдалануға мүмкіндік береді және кішірек, нақты мақсаттарға арналған бағдарламалық жасақтаманы оңай кеңейтуге көмектеседі. OSID провайдерінің іске асырылымы басқа OSID провайдерлерінің кез келген санынан құралуы мүмкін. Бұл қабаттастыру әдісі – абстракцияның айқын тәсілі. Егер барлық OSID провайдерлері бірдей қызметті іске асырса, онда бұл адаптер үлгісі деп аталады. Адаптер үлгілері – әртүрлі қызметтерді бір интерфейстен келісімшарт жасасу арқылы біріктіруге, мультиплекстеуге немесе байланыстыруға мүмкіндік беретін қуатты құралдар, бұл бағдарламаға өзгерістер енгізбей жүзеге асырылады.
To preserve the investment in software engineering, 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 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. 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. An OSID provider implementation may be composed of an arbitrary number of other OSID providers. This layering technique is an obvious means of abstraction. When all the OSID providers implement the same service, this is called an adapter pattern. Adapter patterns are powerful techniques to federate, multiplex, or bridge different services contracting from the same interface without the modification to the application.