Понятие открытых систем
СТАНДАРТИЗАЦИЯ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ
ОСНОВЫ ПОСТРОЕНИЯ СИСТЕМЫ СТАНДАРТОВ ИТ
Понятие открытых систем
Пользователи вычислительной техники неоднократно сталкивались с ситуацией, когда программное обеспечение, отлично работающее на одном компьютере, не желает работать на другом. Или системные блоки одного вычислительного устройства не стыкуются с аппаратной частью другого. Или информационная система другой компании упорно не желает обрабатывать данные, которые пользователь подготовил в информационной системе у себя на рабочем месте, хотя были выполнены все необходимые требования по подготовке данных. Или при загрузке разработанной странички на «чужом» браузере на экране вместо понятного текста возникает бессмысленный набор символов. Эта проблема, которая возникла в ходе бурного развития производства вычислительной и телекоммуникационной техники и разработки программного обеспечения, получила название проблемы совместимости вычислительных, телекоммуникационных и информационных устройств.
Развитие систем и средств вычислительной техники, повсеместное их внедрение в сферы управления, науки, техники, экономики и бизнеса привели к необходимости объединения конкретных вычислительных устройств и реализованных на их основе информационных систем в единые информационно-вычислительные системы и среды, к формированию единого информационного пространства. Такое пространство можно определить как совокупность баз данных, хранилищ знаний, систем управления ими, информационно-коммуникационных систем и сетей, методологий и технологий их разработки, ведения и использования на основе единых принципов и общих правил, обеспечивающих информационное взаимодействие для удовлетворения потребностей пользователей.
Единое информационное пространство складывается из следующих основных составляющих:
• информационные ресурсы, содержащие данные, сведения, информацию и знания, собранные, структурированные по некоторым правилам, подготовленные для доставки заинтересованному пользователю, защищенные и архивированные на соответствующих носителях;
• организационные структуры, обеспечивающие функционирование и развитие единого информационного пространства: поиск, сбор, обработку, хранение, защиту и передачу информации;
• средства информационного взаимодействия, в том числе программно-аппаратные средства и пользовательские интерфейсы, правовые и организационно-нормативные документы, обеспечивающие доступ к информационным ресурсам на основе соответствующих информационно-коммуникационных технологий.
При формировании единого информационного пространства менеджеры, проектировщики и разработчики программно-аппаратных средств столкнулись с рядом проблем. Например, разнородность технических средств вычислительной техники с точки зрения организации вычислительного процесса, архитектуры, систем команд, разрядности процессоров и шины данных потребовала создания физических интерфейсов, реализующих взаимную совместимость компьютерных устройств. При увеличении числа типов интегрируемых устройств сложность организации физического взаимодействия между ними существенно возрастала, что приводило к проблемам в управлении такими системами.
Разнородность программируемых сред, реализуемых в конкретных вычислительных устройствах и системах, с точки зрения многообразия операционных систем, различия в разрядности и прочих особенностей привели к созданию программных интерфейсов. Разнородность физических и программных интерфейсов в системе «пользователь — компьютерное устройство — программное обеспечение» требовала постоянного согласования программно-аппаратного обеспечения и переобучения кадров.
История концепции открытых систем начинается с того момента, когда возникла проблема переносимости (мобильности) программ и данных между компьютерами с различной архитектурой. Одним из первых шагов в этом направлении, оказавшим влияние на развитие отечественной вычислительной техники, явилось создание компьютеров серии IBM 360, обладающих единым набором команд и способных работать с одной и той же операционной системой. Корпорация «IBM», кроме того, предоставляла лицензии на свою ОС пользователям, которые предпочли купить компьютеры той же архитектуры у других производителей.
Частичное решение проблемы мобильности для программ обеспечили ранние стандарты языков, например ФОРТРАН и КОБОЛ. Языи позволяли создавать переносимые программы, хотя часто ограничивали функциональные возможности. Мобильность обеспечивалась также за счет того, что эти стандарты были приняты многими производителями различных платформ. Когда языки программирования приобрели статус стандарта де-факто, их разработкой и сопровождением начали заниматься национальные и международные организации по стандартизации. В результате языки развивались уже независимо от своих создателей. Достижение мобильности уже на этом уровне было первым примером истинных возможностей открытых систем.
Следующий этап в развитии концепции открытости — вторая половина 1970-х гг. Он связан с областью интерактивной обработки и увеличением объема продуктов, для которых требуется переносимость (пакеты для инженерной графики, системы автоматизации проектирования, базы данных, управление распределенными базами данных). Компания «DIGITAL» начала выпуск мини-ЭВМ VAX, работающих под управлением операционной системы VMS. Машины этой серии имели уже 32-разрядную архитектуру, что обеспечило значительную эффективность программного кода и сократило издержки на работу с виртуальной памятью. Программисты получили возможность напрямую использовать адресное пространство объемом до 4 Гбайт, что практически снимало все ограничения на размеры решаемых задач. Машины этого типа надолго стали стандартной платформой для систем проектирования, сбора и обработки данных, управления экспериментом и т.п. Именно они стимулировали создание наиболее мощных САПР, систем управления базами данных и машинной графики, которые широко используются до настоящего времени.
Конец 1970-х гг. характеризуется массовым применением сетевых технологий. Компания «DIGITAL» интенсивно внедряла свою архитектуру DECnet. Сети, использующие протоколы Интернет (TCP/IP), первоначально реализованные Агентством по перспективным исследованиям Министерства обороны США (DARPA), начали широко применяться для объединения различных систем — как военных, так и академических организаций США. Фирма «IBM» применяла собственную сетевую архитектуру SNA (System Network Architecture), которая стала основой для предложенной Международной организацией по стандартизации ISO архитектуры Open Systems Interconnection (OSI).
Когда сетевая обработка стала реальностью и насущной необходимостью для решения большого числа технических, технологических, научных экономических задач, пользователи начали обращать внимание на совместимость и возможность интеграции вычислительных средств как на необходимые атрибуты открытости систем. Организация ISO в 1977—1978 гг. развернула интенсивные работы по созданию стандартов взаимосвязи в сетях открытых систем. Тогда же впервые было введено определение открытой информационной системы.
Таким образом, решение проблем совместимости и мобильности привело к разработке большого числа международных стандартов и соглашений в сфере применения информационных технологий и разработки информационных систем. Основополагающим, базовым понятием при использовании стандартов стало понятие «открытая система».
Существует достаточное число определений, даваемых различными организациями по стандартизации и отдельными фирмами. Например, Ассоциация французских пользователей UNIX и открытых систем (AFUU) дает следующее определение: «Открытая система — это система, состоящая из элементов, которые взаимодействуют друг с другом через стандартные интерфейсы».
Производитель средств вычислительной техники — компания Hewlett Packard: «Открытая система — это совокупность разнородных компьютеров, объединенных сетью, которые могут работать как единое интегрированное целое независимо от того, как в них представлена информация, где они расположены, кем они изготовлены, под управлением какой операционной системы они работают».
Определение Национального института стандартов и технологий США (NIST): «Открытая система — это система, которая способна взаимодействовать с другой системой посредством реализации международных стандартных протоколов. Открытыми системами являются как конечные, так и промежуточные системы. Однако открытая система не обязательно может быть доступна другим открытым системам. Эта изоляция может быть обеспечена или путем физического отделения, или путем использования технических возможностей, основанных на защите информации в компьютерах и средствах коммуникаций».
Другие определения в той или иной мере повторяют основное содержание определений, приведенных выше. (Анализируя их, можно выделить некоторые общие черты, присущие открытым системам:
• технические средства, на которых реализована информационная система, объединяются сетью или сетями различного уровня — от локальной до глобальной;
• реализация открытости осуществляется на основе функциональных стандартов (профилей) в области информационных технологий;
• информационные системы, обладающие свойством открытости, могут выполняться на любых технических средствах, которые входят в единую среду открытых систем;
• открытые системы предполагают использование унифицированных интерфейсов в процессах взаимодействия в системе «человек — компьютер»;
• применение положений открытости предполагает некоторую избыточность при разработке программно-аппаратных комплексов.
Открытую систему сегодня определяют как исчерпывающий и согласованный набор международных стандартов на информационные технологии и профили функциональных стандартов, которые реализуют открытые спецификации на интерфейсы, службы и поддерживающие их форматы, чтобы обеспечить взаимодействие (интероперабельность) и мобильность программных приложений, данных и персонала.
Это определение, сформулированное специалистами Комитета IEEE POSIX 1003.0 Института инженеров по электротехнике и электронике (IEEE), унифицирует содержание среды, которую предоставляет открытая система для широкого использования. Базовым в этом определении является термин «открытая спецификация», имеющий следующее.толкование: «это общедоступная спецификация, которая поддерживается открытым, гласным, согласительным процессом, направленным на постоянную адаптацию новой технологии, и которая соответствует стандартам». Таким образом, под открытыми системами следует понимать системы, обладающие стандартизованными интерфейсами. Решение проблемы открытости систем основывается на стандартизации интерфейсов систем и протоколов взаимодействия между их компонентами.
В качестве примеров использования технологии открытых систем можно привести технологии фирм «Intel» Plug&Play и USB, а также операционные системы UNIX и (частично) ее основного конкурента — Windows NT. Многие новые продукты сразу разрабатываются в соответствии с требованиями открытых систем, примером тому может служить широко используемый в настоящее время язык программирования Javaфирмы «Sun Microsystems».
Общие свойства открытых информационных систем можно сформулировать следующим образом:
• взаимодействие/интероперабелъностъ — способность к взаимодействию с другими прикладными системами на локальных и (или) удаленных платформах (технические средства, на которых реализована информационная система, объединяются сетью или сетями различного уровня — от локальной до глобальной);
• стандартизуемостъ — ИС проектируются и разрабатываются на основе согласованных международных стандартов и предложений, реализация открытости осуществляется на базе функциональных стандартов (профилей) в области информационных технологий;
• расширяемость/масштабируемость — возможность перемещения прикладных программ и передачи данных в системах и средах, которые обладают различными характеристиками производительности и различными функциональными возможностями, возможность добавления новых функций ИС или изменения некоторых уже имеющихся при неизменных остальных функциональных частях ИС;
• мобильность/переносимость — обеспечение возможности переноса прикладных программ и данных при модернизации или замене аппаратных платформ ИС и возможности работы с ними специалистов пользующихся ИТ, без их специальной переподготовки при изменениях ИС;
• дружественность к пользователю — развитые унифицированные интерфейсы в процессах взаимодействия в системе «пользователь -компьютерное устройство — программное обеспечение», позволяющие работать пользователю, не имеющему специальной системной подготовки.
Все эти общепринятые свойства современных открытых систем, взятые по отдельности, были характерны и для предыдущих поколений ИС и средств вычислительной техники. Новый взгляд на открытые системы определяется тем, что эти черты рассматриваются в совокупности, как взаимосвязанные, и реализуются в комплексе. Это естественно, поскольку все указанные выше свойства дополняют друг друга. Только в такой совокупности возможности открытых систем позволяют решать проблемы проектирования, разработки, внедрения, эксплуатации и развития современных информационных систем.
Проиллюстрируем важность такого подхода на примере важнейшего свойства — интероперабелъности (Interoperability) . Ниже перечислены обстоятельства, которые отражают насущные потребности развития областей применения информационных технологий и мотивируют переход к интероперабельным информационным системам и разработке соответствующих стандартов и технических средств.
Функционирование систем в условиях информационной и реализационной неоднородности, распределенности и автономности информационных ресурсов системы. Информационная неоднородность ресурсов заключается в разнообразии их прикладных контекстов (понятий, словарей, семантических правил, отображаемых реальных объектов, видов данных, способов их сбора и обработки, интерфейсов пользователей и т.д.). Реализационная неоднородности источников проявляется в использовании разнообразных компьютерных платформ, средств управления базами данных, моделей данных и знаний, средств программирования и тестирования, операционных систем и т.п.
Интеграция систем. Системы эволюционируют от простых, автономных подсистем к более сложным, интегрированным системам, основанным на требовании взаимодействия компонентов.
Реинжиниринг систем. Эволюция бизнес-процессов — непрерывный процесс, который является неотъемлемой составляющей деятельности организаций. Соответственно, создание системы и ее реконструкция (реинжиниринг) — непрерывный процесс формирования, уточнения требований и проектирования. Система должна быть спроектирована так, чтобы ее ключевые составляющие могли быть реконструированы при сохранении целостности и работоспособности системы.
Трансформация унаследованных систем. Практически любая система после создания и внедрения противодействует изменениям и имеет тенденцию быстрого превращения в бремя организации. Унаследованные системы (Legacy Systems), построенные на «уходящих» технологиях, архитектурах, платформах, а также программное и информационное обеспечение, при проектировании которых не были предусмотрены нужные меры для их постепенного перерастания в новые системы, требуют перестройки (Legacy Transformation) в соответствии с новыми требованиями бизнес-процессов и технологий. В процессе трансформации необходимо, чтобы новые модули системы и оставшиеся компоненты унаследованных систем сохраняли способность к взаимодействию.
Повторное использование неоднородных информационных ресурсов. Технология разработки информационных систем должна позволять крупномасштабно применять технологию повторного использования информационных ресурсов, которые могут быть «соединены» (т.е. образованы их «интероперабельные сообщества») для производства серий стандартизованных продуктов в определенной прикладной области.
Продление жизненного цикла систем. В условиях исключительно быстрого технологического развития требуются специальные меры, обеспечивающие необходимую продолжительность жизненного цикла продукта, включающего в себя постоянное улучшение его потребительских свойств. При этом новые версии продукта должны поддерживать заявленные функциональности предыдущих версий.
Свойство интероперабельности информационных ресурсов является необходимой предпосылкой удовлетворения перечисленных выше требований.
Таким образом, основной принцип формирования открытых систем состоит в создании среды, включающей в себя программные и аппаратурные средства, службы связи, интерфейсы, форматы данных и протоколы. Такая среда в основе имеет развивающиеся доступные и общепризнанные стандарты и обеспечивает значительную степень взаимодействия (Inter-operability), переносимости (Portability) и масштабирования (Scalability) приложений и данных.
Благодаря этим свойствам минимизируются затраты на достижение преемственности и повторного использования накопленного программно-информационного задела при переходе на более совершенные компьютерные платформы, а также интеграция систем и ресурсов в распределенные системы. Экономическая рентабельность реализации на практике концепции открытых систем основывается на том, что переход к открытым технологиям создает наилучшие предпосылки для инвестиций в ИТ, так как благодаря свойствам открытости систем ИТ существенно повышается конечная эффективность их использования.
Принципы создания и использования открытых систем применяются в настоящее время при построении большинства классов систем:вычислительных, информационных, телекоммуникационных, систем управления в реальном масштабе времени, встроенных микропроцессорных систем. В условиях широкого использования интегрированных вычислительно-телекоммуникационных систем принципы открытости составляют основу технологии интеграции, В развитии и применении открытых систем заинтересованы все участники процесса информатизации: пользователи, проектировщики систем и системные интеграторы, производители технических и программных средств вычислительной техники и телекоммуникации. В частности, по встроенным микропроцессорным системам (МПС) в рамках программы ESPRITсуществует проект OMI (Open Microprocessor Initiative), направленный на создание коллективной пользовательской библиотеки МПС в соответствии с принципами открытых систем.
В условиях перехода к информационному обществу, когда государственное управление и большинство секторов экономики становятся активными потребителями информационных технологий, а сектор производителей средств и услуг информационных технологий непрерывно растет, проблема развития и применения открытых систем составляет для каждой страны национальную проблему. Так, администрация Клинтона еще в 1993 г. объявила о программе создания Национальной информационной инфраструктуры на принципах открытых систем (NationalInformation Infrastructure Initiative), вкладывала в эту программу большие деньги и содействовала инвестициям со стороны частного сектора. Совет Европы в 1994 г. в своих рекомендациях о путях перехода к информационному обществу (Bangemann Report) подчеркнул, что стандарты открытых систем должны играть важнейшую роль при создании информационной инфраструктуры общества. Ведется работа по созданию глобальной информационной инфраструктуры, также основанной на принципах открытых систем.
Таким образом, в условиях перехода к информационному обществу технология открытых систем становится основным направлением информационных технологий.