Лекция 1
Открытая система - система, которая реализует открытые спецификации на интерфейсы, сервисы и поддерживаемые форматы данных, достаточные для того, чтобы дать возможность должным образом разработанному прикладному программному обеспечению быть переносимым в широком диапазоне систем с минимальными изменениями, взаимодействовать с другими приложениями на локальных и удаленных системах, и взаимодействовать с пользователями в стиле, который облегчает переход пользователей от системы к системе.
Институт инженеров по электротехнике и электронике IEEE (Institute of Electrical and Electronics Engineers) международная некоммерческая ассоциация специалистов в области техники, мировой лидер в области разработки стандартов по радиоэлектронике и электротехнике. Главная цель IEEE информационная и материальная поддержка специалистов для организации и развития научной деятельности в электротехнике, электронике, компьютерной технике и информатике, приложение их результатов для пользы общества, а также профессиональный рост членов IEEE. Получение бесценной информации о новейших исследованиях и разработках в радиоэлектронике и электротехнике возможно только благодаря IEEE.
POSIX® (Portable Operating System Interface for Unix Переносимый интерфейс операционных систем Unix) набор стандартов, описывающих интерфейсы между операционной системой и прикладной программой.
Расширяемость. Свойство расширяемости (extensibility) означает возможность добавления новых прикладных функций ИС или изменения некоторых функций из числа уже реализованных, не изменяя при этом остальные функциональные части (подсистемы) ИС. Эта возможность обеспечивается декомпозицией заданного состава прикладных функций ИС на подсистемы и модульным построением приложений, выполняющих функции подсистем. В полученной таким образом функциональной структуре ИС выделяются программные интерфейсы (API), специфицирующие взаимодействие приложений, принадлежащих одной или разным подсистемам. При внесении изменений в какую-либо программу требуется сохранить ее интерфейс API с тем, чтобы не изменять другие программы, с которыми она взаимодействует.
Масштабируемость. Свойство масштабируемости (scalability) означает применительно к прикладным программам и базам данных, которые могут исполняться на разных прикладных платформах, возможность изменения их количественных характеристик (размерности решаемых задач, числа обслуживаемых пользователей и т.д.) путем настройки параметров, а не путем перепроектирования и программирования заново. Применительно к прикладным платформам свойство масштабируемости означает предсказуемый рост их количественных системных характеристик при добавлении определенных вычислительных ресурсов.
Переносимость приложений, данных и персонала. Свойство переносимости (portability) означает возможность перевода ИС на более совершенные аппаратно-программные платформы при их модернизации или замене с минимальными затратами, сохраняя инвестиции, вложенные в разработку приложений, формирование массивов данных и обучение пользователей. Применительно к переносимости приложений (application portability) и данных (data portability) такая возможность обеспечивается соблюдением принятых стандартизованных API между приложениями и функциональной средой открытых систем. Применительно к переносимости пользователей (user portability) эта возможность обеспечивается дружественным пользовательским интерфейсом. Стабильность этого интерфейса поддерживается стандартизованными API среды по функциям пользовательского интерфейса, и сохранением средств взаимодействия с пользователем, реализуемых приложениями. Это необходимо для того, чтобы не переучивать пользователей при внесении изменений в приложения и прикладные платформы
Интероперабельность приложений и систем Свойство интероперабельности (interoperability) означает возможность взаимодействия данной ИС с другими системами при необходимости обращения к информационным ресурсам (базам данных, базам знаний) этих систем или решения определенных задач с использованием их вычислительных ресурсов, если собственные ресурсы недостаточны. Интероперабельность систем обеспечивается, прежде всего, форматами данных, принятыми в качестве стандартов электронного обмена данными (electronic data interchange -EDI) для разных прикладных областей. Интероперабельность систем при запуске на исполнение программ, располагающихся в других системах, обеспечивается стандартами удаленного вызова процедур (remote procedure call -RPC). В пределах каждой системы свойство интероперабельности рассматривается на трех уровнях: взаимодействие программ (program interaction), определяемое процессами взаимопередачи управления и обмена данными между программами; межзадачное взаимодействие (intertask communication), определяемое средствами языка программирования и операционной системы, которые обеспечивают запуск и синхронизацию задач и обмен данными между ними; межсетевое взаимодействие (internetworking), определяемое стандартными протоколами вычислительных сетей.
Способность к интеграции На уровне интеграции систем (system integration) это свойство означает возможность объединения нескольких ИС различного назначения в единую интегрированную многофункциональную ИС. На уровне баз данных (database integration) под интеграцией понимается представление для прикладной программы или пользователя нескольких баз данных как одной логически единой базы данных. Интеграция обеспечивает обращение пользователей к любой из этих баз данных независимо от места ее размещения, коллективный доступ к данным, одновременную обработку нескольких баз данных каждой из прикладных программ ИС. На уровне интеграции данных (data integration) предполагается возможность одновременного и совместного использования программой или запросом пользователя нескольких файлов данных как единого целого (один из способов интеграции данных - базы данных). Логическая интеграция предполагает объединение данных на логическом уровне, не затрагивая их физической организации. Физическая интеграция связана со слиянием данных в единый информационный массив. Наконец, на уровне интеграции приложений (application integration) рассматриваются методы и средства объединения прикладных программ в многозвенных архитектурах клиент-сервер с выделением серверов приложений, ориентированных на определенные классы задач, объектные среды и оболочки, позволяющие объединять приложения на основе механизмов обмена сообщениями.
Высокая готовность. Под свойством высокая готовность (high availability) понимается требование отказоустойчивости системы (fault tolerance), в которой в случае отказа какого-либо компонента гарантируется автоматическое восстановление работоспособности и сохранение целостности баз данных. Характеристика готовности, как меры способности системы принимать и успешно выполнять задания за доступный интервал времени, относится не только к открытым ИС. Здесь это свойство указано в связи с тем, что его реализация при проектировании системы находится во взаимосвязи с обеспечением других, указанных выше свойств.
U - User; S - System; I - Information; C – Communication.
USIC Компоненты услуг среды Текстовые процессоры, генераторы форм отчетов, и т.д. Языки программиро- вания Средства проектиро-вания и ведения баз данных Прикладной уровень ВОС Оболочки ОС, командные языки Утилиты, библиотеки программ СУБД Уровень представле-ний и сессий ВОС Компоненты операцион-ной системы Оконный интерфейс Организация процессов Доступ к среде хранения Транспортный уровень ВОС Драйверы ввода- вывода Ядро ОСФайловая система Сетевой уровень ВОС Аппаратура Организация ввода-вывода Система команд, организация прерываний, и т.д. Организация памяти Канальный уровень ВОС Интерфейс периферий-ных устройств Системная шинаШина массовой памяти Физический уровень ВОС
Интерфейс прикладного программирования (иногда интерфейс программирования приложений) (Application Programming Interface) - набор готовых классов, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) для использования во внешних программных продуктах.