Инф.системы и технологии в управлении - Лекции
.pdfВ настоящее время при формировании информационной инфраструктуры предприятия, при проектировании и реализации КИС все чаще применяется сервис-
ориентированная архитектура (Service-Oriented Architecture - SOA). Это такая архитектура ИС, в которой система строится из набора гетерогенных слабосвязанных компонентов (сервисов). SOA понимается как парадигма организации и использования распределенного множества функций, которые могут контролироваться различными владельцами. Базовыми понятиями в такой архитектуре являются "информационная услуга" и "композитное приложение".
Информационная услуга (сервис) - это атомарная прикладная функция автоматизированной системы, которая пригодна для использования при разработке приложений, реализующих прикладную логику автоматизируемых процессов как в самой системе, так и для использования в приложениях других автоматизированных систем.
Сервис обычно характеризуется следующими свойствами:
возможность многократного применения;
услуга может быть определена одним или несколькими технологически независимыми интерфейсами;
выделенные услуги слабо связаны между собой, и каждая из них может быть вызвана посредством коммуникационных протоколов, обеспечивающих возможность взаимодействия услуг между собой.
Композитное (составное) приложение - программное решение для конкретной прикладной проблемы, которое связывает прикладную логику процесса с источниками данных и информационных услуг, хранящихся на гетерогенном множестве базовых информационных систем. Обычно композитные приложения ассоциированы с процессами деятельности и могут объединять различные этапы процессов, представляя их пользователю через единый интерфейс.
Использование такого подхода при построении архитектуры сложных интегрированных информационных систем позволяет:
создать систему корпоративных композитных приложений, основанных на системе корпоративных Web-сервисов;
организовать интеграцию приложений, бизнес-процессов, с автоматизацией бизнес-процессов, включая Human Workflow;
использовать различные транспортные протоколы и стандарты форматирования сообщений, средства обеспечения безопасности, надежной и своевременной доставки сообщений;
существенно повысить скорость разработки прикладных приложений и снизить затраты на эти цели.
Благодаря упрощению среды управления и взаимодействия снижается потребность в кодировании новых программ; повторное использование сервисов сокращает затраты времени на разработку; рационализация унаследованных процессов помогает уменьшить общее число процессов, требующих эксклюзивных методов
управления; благодаря использованию простых протоколов значительно сокращаются трудозатраты на поддержку приложений.
Обязательным условием построения и внедрения архитектуры системы на основе SOA является использование единой инфраструктуры описания сервисов (репозитория сервисов), разрешенных протоколов доступа и обмена сообщениями, форматов сообщений.
Упомянутая инфраструктура образует так называемую интеграционную шину (ИШ) (Enterprise Service Bus - ESB), являющуюся одним из центральных компонентов системы. Она устанавливает единые правила публикации сервисов, управления и информационного взаимодействия между приложениями различных систем, входящих в состав интегрированной системы. Это упрощает управление приложениями и их поддержку, а также снижает риск фрагментации приложений и процессов.
Каждая из служб взаимодействует не с остальными службами напрямую, а только с шиной. ИШ образует однородную среду информационного взаимодействия и является фундаментом для интеграции информационных систем, функционирующих в различных учреждениях и ведомствах. ИШ определяет, кем, где, каким образом и в каком порядке должны обрабатываться запросы.
Если сервис (информационный ресурс) не поддерживает эти правила, необходимо создавать промежуточный модуль-адаптер, который предоставляет системе необходимый интерфейс и обеспечивает взаимодействие с ресурсом.
По данным Gartner Group ("Predicts 2007: SOA Advances", 17 ноября 2006 года): "К 2008 году SOA станет господствующей архитектурой построения ИТ-систем, что приведет к окончанию 40-летней эры господства архитектуры монолитных приложений".
Рис. 7.2. Структура построения ESB и компоненты концепции SOA
Изменение и совершенствование бизнес-процессов в компаниях занимает годы. По данным Gartner Group, 80% ИТ-бюджета - это расходы на сопровождение систем, из них 35% - затраты на интеграцию приложений, 60% стоимости внедрения корпоративной ИС составляют расходы на интеграцию, 50% ИТ-бюджета потрачено
на обеспечение интерфейсов систем. Использование SOA-архитектуры позволяет эффективно организовать оперативную адаптацию ИТ-систем под требования бизнеса, что дает стратегическое преимущество компании, заключающееся в:
повышении скорости адаптации бизнеса к быстро меняющимся требованиям рынка (Agility);
расширении взаимодействия гетерогенных корпоративных информационных систем при сохранении сделанных в них инвестиций;
сокращении расходов на ИТ-системы на основе повторного использования их функциональных компонентов;
повышении производительности труда клиентов, партнеров и сотрудников (на основе архитектуры Web 2.0).
Сточки зрения бизнеса SOA можно представить как набор гибких служб и процессов, которые бизнес предлагает своим заказчикам, партнерам или внутри своей собственной организации. В данном контексте эти же службы можно поразному комбинировать и оснащать, поддерживая изменения или развитие бизнестребований и моделей с течением времени.
Основные бизнес-цели внедрения SOA-решений состоят в ликвидации:
фрагментированности и дублирования данных;
дублирования реализаций бизнес-функций, процедур, процессов;
негибкой архитектуры.
Становление и развитие SOA происходило на базе практических требований бизнеса, заключавшихся прежде всего в разумной экономии программных и технологических средств и затрат на реализацию и сопровождение информационной инфраструктуры:
обеспечивать преемственность инвестиций в IT, сохранение существующих информационных систем и их совместное эффективное использование для повышения ROI от IT-вложений;
обеспечивать реализацию различных типов интеграции:
o пользовательская интеграция (User Integration) - обеспечение взаимодействия информационной системы с конкретным персонифицированным пользователем;
o интеграция приложений (Application Connectivity) - обеспечение взаимодействия приложений;
oинтеграция процессов (Process Integration) - интеграция процессов в соответствии с бизнес-логикой деятельности предприятия;
oинформационная интеграция (Information Integration) - интеграция с целью обеспечения доступности информации и данных;
oинтеграция новых приложений (Build to Integrate) - интеграция новых приложений и сервисов в существующие информационные системы.
обеспечивать поэтапность внедрения вновь созданных и миграции существующих информационных систем;
иметь стандартизованную технологическую обеспеченность реализации и инструментарий разработки, совокупно предоставляющие наилучшие возможности повторного использования приложений, внедрения новых и миграции существующих информационных систем;
позволять реализацию различных моделей построения информационных систем, в особенности, таких как портальные решения, grid-системы и on- demand-системы.
Сегодняшний уровень развития SOA позволяет утверждать, что все указанные требования в той или иной мере выполняются.
Рост рынка продуктов для SOA-решений - 100% в год. В 2007 году SOA будет использована как основа создания 50% новых приложений, критичных для бизнеса и бизнес-процессов; к 2010 году этот показатель вырастет до 80%. Более 80% приложений, введенных в промышленное использование в 2006 году, будут частично или полностью перепроектированы к 2010 году, чтобы быть использованными в построении композитных приложений в SOAархитектуре.
К 2010 году более 80% всех программных инфраструктурных продуктов будут включать корпоративную шину сервисов или требовать ее использования. Среди исполнительных директоров компаний 54% считают, что в период до 2010 года в числе главных стратегических преимуществ компаний новые модели ведения бизнеса имеют большее значение, чем выпуск новых продуктов и услуг. По данным
Forrester ("The State of SOA in Financial Services", январь 2006), "Подавляющее большинство финансовых компаний будут использовать SOA к концу 2008 г. В общем, 50% европейских финансовых компаний или уже используют SOA или находятся на последней стадии его внедрения".
8. Лекция: Разработка и внедрение информационной системы
Принципы создания информационной системы
Многие пользователи компьютерной техники и программного обеспечения неоднократно сталкивались с ситуацией, когда программное обеспечение, хорошо работающее на одном компьютере, не работает на другом таком же устройстве. Или системные блоки одного вычислительного устройства не стыкуются с аппаратной частью другого. Или информационная система другой компании упорно не желает обрабатывать данные, которые вы подготовили в информационной системе у себя на рабочем месте. И так далее... Эта проблема называется проблемой совместимости вычислительных, телекоммуникационных и информационных устройств.
Развитие систем и средств вычислительной техники, расширенное их внедрение во все сферы науки, техники, сферы обслуживания и быта привели к необходимости объединения конкретных вычислительных устройств и реализованных на их основе информационных систем в единые информационно-вычислительные системы (ИВС)
и среды. При этом разработчики ИВС столкнулись с рядом проблем.
Например, разнородность технических средств вычислительной техники с точки зрения организации вычислительного процесса, архитектуры, системы команд, разрядности процессора и шины данных и т. д. потребовала создания физических интерфейсов, реализующих, как правило, взаимную совместимость устройств. При увеличении числа типов интегрируемых устройств сложность организации физического интерфейса между ними существенно возрастала. Разнородность программируемых сред, реализуемых в конкретных вычислительных устройствах и системах, с точки зрения многообразия операционных систем, различия в разрядности и прочих особенностей привела к созданию программных интерфейсов
между устройствами и системами. При этом необходимо отметить, что достигнуть полной совместимости программных продуктов, разработанных для конкретной программной среды, в другой среде удавалось не всегда. Разнородность интерфейсов общения в системе "человек-компьютер" требовала постоянного согласования программно-аппаратного обеспечения и переобучения кадров.
Принцип "открытости" информационной системы
Решение проблем совместимости привело к разработке большого числа международных стандартов и соглашений в сфере применения информационных технологий и разработки информационных систем. Основополагающим понятием стало понятие открытые системы.
Термин открытая система сегодня можно определить как "исчерпывающий и согласованный набор международных стандартов на информационные технологии и профили функциональных стандартов, которые специфицируют интерфейсы, службы и поддерживающие их форматы, чтобы обеспечить взаимодействие и мобильность программных приложений, данных и персонала".
Это определение, сформулированное специалистами института IEEE (Institute of Electrical and Electronic Engineers), унифицирует содержание среды, которую предоставляет открытая система для широкого использования. В настоящее время общепризнанным координационным центром по разработке и согласованию стандартов открытых систем является OASIS (Organization for the Advancement of
Structured Information Standards).
Общие свойства открытых информационных систем можно сформулировать следующим образом:
расширяемость/масштабируемость - обеспечение возможности добавления новых функций ИС или изменения некоторых уже имеющихся при неизменных остальных функциональных частях ИС;
мобильность/переносимость - обеспечение возможности переноса программ и данных при модернизации или замене аппаратных платформ ИС и возможности работы с ними специалистов, пользующихся ИТ, без их переподготовки при изменениях ИС;
взаимодействие - способность к взаимодействию с другими ИС (технические средства, на которых реализована информационная система, объединяются сетью или сетями различного уровня - от локальной до глобальной);
стандартизуемость - ИС проектируются и разрабатываются на основе согласованных международных стандартов и предложений, реализация открытости осуществляется на базе функциональных стандартов (профилей) в области информационных технологий;
дружественность к пользователю - развитые унифицированные интерфейсы в процессах взаимодействия в системе "человек-машина" позволяют работать пользователю, не имеющему специальной "компьютерной" подготовки.
Новый взгляд на открытые системы определяется тем, что эти черты рассматриваются в совокупности, как взаимосвязанные, и реализуются в комплексе,
что вполне естественно, поскольку все указанные выше свойства дополняют друг друга. Только в совокупности возможности открытых систем позволяют решать проблемы проектирования, разработки и внедрения современных информационных систем.
Структура среды информационной системы
Обобщенная структура любой ИС может быть представлена двумя взаимодействующими частями:
функциональная часть, включающая прикладные программы, которые реализуют функции прикладной области;
среда или системная часть, обеспечивающая исполнение прикладных программ.
Сэтим разделением тесно связаны две группы вопросов стандартизации:
стандарты интерфейсов взаимодействия прикладных программ со средой ИС,
прикладной программный интерфейс (Application Program Interface - API);
стандарты интерфейсов взаимодействия самой ИС с внешней для нее средой
(External Environment Interface - EEI).
Эти две группы интерфейсов определяют спецификации внешнего описания среды ИС - архитектуру, с точки зрения конечного пользователя, проектировщика ИС, прикладного программиста, разрабатывающего функциональные части ИС.
Спецификации внешних интерфейсов среды ИС и, как будет видно далее, спецификации интерфейсов взаимодействия между компонентами самой среды, - это точные описания всех необходимых функций, служб и форматов определенного интерфейса. Совокупность таких описаний составляет эталонную модель открытых систем (Reference Open System Model).
Эта модель используется более 20 лет и определяется системной сетевой архитектурой (SNA), предложенной IBM в 1974 году. Она основана на разбиении вычислительной среды на семь уровней, взаимодействие между которыми описывается соответствующими стандартами и обеспечивает связь уровней вне зависимости от построения уровня в каждой конкретной реализации (рис. 8.1).
Основным достоинством этой модели является детальное описание связей в среде с точки зрения технических устройств и коммуникационных взаимодействий. Вместе с тем она не принимает в расчет взаимосвязь с учетом мобильности прикладного программного обеспечения.
Рис. 8.1. Семиуровневая модель взаимодействия информационных систем
Эталонная модель среды открытых систем (OSE/RM) определяет разделение любой информационной системы на приложения (прикладные программы и программные комплексы) и среду, в которой эти приложения функционируют. Между приложениями и средой определяются стандартизованные интерфейсы (API), которые являются необходимой частью профилей любой открытой системы. Кроме того, в профилях ИС могут быть определены унифицированные интерфейсы взаимодействия функциональных частей друг с другом и интерфейсы взаимодействия между компонентами среды ИС.
Модель создания информационной системы
Методологически важно наряду с рассмотренными моделями среды ИС предложить модель создания ИС, которая имела бы те же аспекты функциональных групп компонентов (пользователи, функции, данные, коммуникации). Такой подход обеспечит сквозной процесс проектирования и сопровождения на всех стадиях эксплуатации ИС, а также возможность обоснованного выбора стандартов на разработку систем и документирование проектов.
Рис. 8.2. Онтологическое поле современной компании
Определение "компания" является сложной онтологической (понятийной) структурой, состоящей из определенной совокупности сущностей и взаимосвязей (рис. 8.2). Взаимодействия между ее элементами, определяемые бизнес-логикой и закрепленные в наборе бизнес-правил, и являются деятельностью компании. Информационная система "отражает" логику и правила, организуя и преобразуя информационные потоки, автоматизирует процессы работы с данными и информацией и визуализирует результаты в виде наборов отчетных форм. Поэтому для начала следует создать бизнес-модель предприятия, являющуюся отображением предприятия и его информационно-управляющей системы. При создании модели формируется "язык общения" руководителей предприятия, консультантов, разработчиков и будущих пользователей, позволяющий выработать единое представление о том, ЧТО и КАК должна делать система управления предприятием (корпоративная система управления).
Такая бизнес-модель - осязаемый результат, с помощью которого можно максимально конкретизировать цели внедрения ИС и определиться со следующими параметрами проекта:
основные цели бизнеса, которые можно достичь посредством автоматизации процессов;
перечень участков и последовательность внедрения модулей ИС;
фактическая потребность в объемах закупаемого программного и аппаратного обеспечения;
реальные оценки сроков развертывания и запуска ИСУ;
ключевые пользователи ИС и уточненный список членов команды внедрения;
степень соответствия выбранного вами прикладного программного обеспечения специфике бизнеса вашей компании.
Воснове модели всегда лежат бизнес-цели предприятия, полностью определяющие состав всех базовых компонентов модели:
бизнес-функции, описывающие, ЧТО делает бизнес;
основные, вспомогательные и управленческие процессы, описывающие, КАК предприятие выполняет свои бизнес-функции;
организационно-функциональную структуру, определяющую, ГДЕ исполняются бизнес-функции и бизнес-процессы;
фазы, определяющие, КОГДА (и в какой последовательности) должны быть внедрены те или иные бизнес-функции;
роли, определяющие, КТО исполняет бизнес-функции и КТО является "хозяином" бизнес-процессов;
правила, определяющие связь и взаимодействие между всеми ЧТО, КАК,
ГДЕ, КОГДА и КТО.
После построения бизнес-модели (или параллельно с этим) можно приступать к формированию модели проектирования, реализации и внедрения самой ИС (рис. 8.3).
Рис. 8.3.
Опыт создания и использования "заказных" ИС позволяет условно выделить следующие основные этапы их жизненного цикла:
определение требований к системе и их анализ - определение того, что должна делать система;
проектирование - определение того, как система будет делать то, что она должна делать; проектирование - это прежде всего спецификация подсистем, функциональных компонентов и способов их взаимодействия в системе;
разработка - создание функциональных компонентов и отдельных подсистем, соединение подсистем в единое целое;
тестирование - проверка функционального соответствия системы показателям, определенным на этапе анализа;