Эталонные модели среды и взаимосвязи открытых систем
Требование совместимости и взаимодействия прикладных программ привело к разработке системы стандартов "Интерфейс переносимой операционной системы" (свод POSIX-стандартов) и стандартов коммуникаций. Однако эти стандарты не охватывают требуемый спектр потребностей даже в рамках установленной для них области распространения. Дальнейшее развитие стандартизации в области ИТ и формирования принципа открытых систем нашло выражение в создании функциональной среды открытых систем OSE и построении соответствующей модели, которая охватывала бы стандарты и спецификации по обеспечению возможностей ИТ. Модель ориентирована на руководителей ИТ-служб и менеджеров проектов, ответственных за приобретение (разработку), внедрение, эксплуатацию и развитие информационных систем, состоящих из неоднородных программно-аппаратных и коммуникационных средств. Прикладные программы в среде OSE могут включать в себя:
• системы реального времени (Real Time System – RTS) и встроенные системы (Embedded System – ES);
• системы обработки транзакций (Transaction Processing System – TPS);
• системы управления базами данных (Database Management System – DBMS);
• разнообразные системы поддержки принятия решения (Decision Support System – DSS);
• управленческие ИС административного (Executive Information System – EIS) и производственного (Enterprise Resource Planning – ERP) назначения;
• географические ИС (Geographic Information System – GIS);
• другие специализированные системы, в которых могут применяться спецификации, рекомендуемые международными организациями.
С точки зрения производителей и пользователей среда OSE является достаточно универсальной функциональной инфраструктурой, регламентирующей и облегчающей разработку или приобретение, эксплуатацию и сопровождение прикладных защищенных систем, которые:
• выполняются на любой используемой платформе поставщика или пользователя;
• используют любую операционную систему;
• обеспечивают доступ к базе данных и управление данными;
• обмениваются данными и взаимодействуют через сети любых поставщиков и в локальных сетях потребителей;
• взаимодействуют с пользователями через стандартные интерфейсы в системе общего интерфейса "пользователь – компьютер".
Таким образом, среда OSE поддерживает переносимые, масштабируемые и взаимодействующие прикладные компьютерные программы через стандартные функциональности, интерфейсы, форматы данных, протоколы обмена и доступа. Стандартами могут быть международные, национальные и другие общедоступные спецификации и соглашения. Эти стандарты и спецификации доступны любому разработчику, поставщику и пользователю вычислительного и коммуникационного программного обеспечения и оборудования при построении систем и средств, удовлетворяющих критериям OSE.
Прикладные программы и средства OSE переносимы, если они реализованы на стандартных платформах и написаны на стандартизованных языках программирования. Они работают со стандартными интерфейсами, которые связывают их с вычислительной средой, читают и создают данные в стандартных форматах и передают их в соответствии со стандартными протоколами, выполняющимися в различных вычислительных средах.
Прикладные программы и средства OSE масштабируемы в среде различных платформ и сетевых конфигураций – от ПК до мощных серверов, от локальных систем распараллеленных вычислений до крупных GRID-систем. Разницу в объемах вычислительных ресурсов на любой платформе пользователь может заметить по некоторым косвенным признакам, например по скорости выполнения прикладной программы, но никогда – по отказам работы системы.
Прикладные программы и средства OSE взаимодействуют друг с другом, если они предоставляют услуги пользователю, используя стандартные протоколы, форматы обмена данными и интерфейсы систем совместной или распределенной обработки данных для целенаправленного использования информации. Процесс передачи информации с одной платформы на другую через локальную вычислительную сеть (ЛВС) (Local Area Network – LAN) или комбинацию любых сетей (вплоть до глобальных) должен быть абсолютно прозрачен для прикладных программ и пользователей и не вызывать технических трудностей при использовании. При этом местонахождение и расположение других платформ, операционных систем, баз данных, программ и пользователей не должно иметь значения для используемого прикладного средства.
Рабочая группа 1003.0 POSIX IEEE разработала эталонную модель OSE (Open Systems Environment/Reference Model – OSE/RM). Эта модель описана на международном уровне в техническом отчете TR 14250 комитета JTC1 (рис. 6.4).
В описании модели используется два типа элементов: логические объекты, включающие в себя прикладное программное обеспечение (ППО), прикладные платформы и внешнюю функциональную среду; интерфейсы, содержащие интерфейс прикладной системы и интерфейс обмена с внешней средой.
Логические объекты представлены тремя классами, интерфейсы – двумя. В контексте эталонной модели OSE прикладное программное обеспечение содержит непосредственно коды программ, данные, документацию, тестирующие, вспомогательные и обучающие средства.
Прикладная платформа состоит из совокупности программно-аппаратных компонентов, реализующих системные услуги, которые используются ППО. Понятие прикладной платформы не включает в себя конкретной реализации функциональных возможностей. Например, платформа может представлять собой как процессор, используемый несколькими приложениями, так и большую распределенную систему.
Рис. 6.4. Эталонная модель среды взаимодействия открытых систем
Внешняя среда платформ состоит из элементов, внешних по отношению к ППО и прикладной платформе (рабочие станции, внешние периферийные устройства сбора, обработки и передачи данных, объекты коммуникационной инфраструктуры, услуги других платформ, операционных систем или сетевых устройств).
Интерфейс прикладной программы (Application Program Interface – API) является интерфейсом между ППО и прикладной платформой. Основная функция API состоит в поддержке переносимости ППО. Классификация API производится в зависимости от типа реализуемых услуг: взаимодействие в системе "пользователь – компьютер", обмен информацией между приложениями, внутренние услуги системы, коммуникационные услуги.
Интерфейс обмена с внешней средой (External Environment Interface – EEI) обеспечивает передачу информации между прикладной платформой и внешней средой, а также между прикладными программами, которые выполняются на одной платформе.
Эталонная модель OSE RM реализует и регулирует взаимоотношения "поставщик – пользователь". Логические объекты прикладной платформы и внешней среды являются поставщиком услуг, ППО – пользователем. Они взаимодействуют с помощью набора API- и EEI-интерфейсов, определенных моделью POSIX ОБЕ (рис. 6.5) [21].
Рис. 6.5. Базовая модель POSIX OSE – интерфейсы
Интерфейс EEI представляет собой совокупность всех трех интерфейсов, каждый из которых имеет характеристики, определяемые внешним устройством:
1) интерфейс коммуникационных сервисов (Communication Service Interface – CSI) – обеспечивает сервис для реализации взаимодействия с внешними системами. Реализация взаимодействия осуществляется с помощью стандартизации протоколов и форматов данных, которыми можно обмениваться по установленным протоколам;
2) человекомашинный интерфейс (Human Computer Interface – НCI) – интерфейс, через который осуществляется физическое взаимодействие пользователя и системы программного обеспечения;
3) интерфейс информационных сервисов (Information Service Interface – ISI) – граница взаимодействия с внешней памятью долговременного хранения данных, обеспечивается стандартизацией форматов и синтаксиса представления данных.
Прикладная платформа через оба основных интерфейса к платформе предоставляет сервисы для различных применений.
Среда OSE обеспечивает функционирование ППО, используя определенные правила, компоненты, методы сопряжения элементов системы (Plug Compatibility) и модульный подход к разработке программных и информационных систем. Достоинствами модели являются выделение внешней среды в самостоятельный элемент, имеющий определенные функции и соответствующий интерфейс, и возможность ее применения для описания систем, построенных на основе архитектуры "клиент-сервер". Относительный недостаток состоит в том, что еще не все требуемые спецификации представлены на уровне международных гармонизированных стандартов.