Cервис-ориентированная архитектура (Service-Oriented Architecture, SOA) позволяет адекватно реагировать на меняющиеся требования рынка. Именно поэтому в деле управления ИТ-инфраструктурами и бизнесом на нее возлагаются особые надежды. Внесение изменений в информационные системы (ИС) всегда сопряжено с затратами. Выбирая то или иное ПО, мы всегда обращали внимание на наличие в нем согласованного набора функциональных возможностей, позволяющих наилучшим образом решать повседневные задачи. В условиях современного бизнеса столь ограниченный подход становится неприемлемым. Сегодня руководители предприятий понимают, что потребность в адаптации ИС к изменяющимся потребностям бизнеса будет постоянно возрастать.

А сложность и высокая стоимость модернизации ИС определяется целым рядом причин. Имея на предприятии гетерогенную ИТ-среду, очень трудно отразить бизнес-правила, относящиеся ко всей информационной системе, в программном коде каждого приложения. Зачастую технологии, лежащие в основе различных поколений ИТ-решений, используемых компаниями, несовместимы между собой, а описания бизнес-объектов и атрибутов в различных ИС не соответствуют друг другу. Популярность концепции SOA, обещающей обеспечить применение широкого набора эксплуатируемых на предприятии приложений и строить на их основе сквозные бизнес-процессы, сохраняя при этом инвестиции в ИТ-инфраструктуру, становится понятной, если принять во внимание результаты опроса, проведенного известной аналитической компанией IDC.

SOA на службе группы KBC

Сфера финансовых услуг развивается очень быстро. Клиенты, особенно корпоративные, нуждаются в сервисе, отвечающем их индивидуальным потребностям, предоставляемом практически в режиме реального времени: они уже не хотят ждать ни целую неделю, ни даже один день. Подобные проблемы встали и перед известной банковской и страховой группой KBC, входящей в тройку крупнейших бельгийских финансовых учреждений: в ее штате 45 тыс. сотрудников, которые обслуживают 10 млн. клиентов в 30 странах.

На нынешнем этапе развития KBC решила отказаться от традиционного подхода - самостоятельной разработки приложений и намерена применять лучшие в своем классе решения, представленные на рынке. У такой стратегии, при всех ее преимуществах, есть и свои недостатки: каким бы совершенным ни было отдельное приложение, оно не будет представлять никакой ценности для бизнеса KBC, если его нельзя интегрировать в имеющуюся инфраструктуру. Для решения указанной проблемы необходимо было выбрать надежную, масштабируемую и защищенную интеграционную платформу.

В это же время было принято решение о покупке и развертывании нового средства управления кредитами - Loan IQ, которое требовалось интегрировать с уже эксплуатируемыми в KBC системами SAP, Murex и Siebel, а также с приложениями, функционирующими на мэйнфреймах IBM во внешних организациях - Национальном банке Бельгии, Euronext, FinForce. Компания провела детальный анализ рынка средств интеграции, а также выполнила пилотный проект с участием двух поставщиков. Выбор пал на систему Sun SeeBeyond eGate Integrator корпорации Sun Microsystems.

После обучения специалистов, проведенного вендором, KBC приступила к самостоятельному внедрению данного решения. Интегрировав упомянутые приложения, компании удалось, в частности, реализовать B2B-взаимодействие с внешними партнерами. Теперь, например, KBC может обмениваться отчетами с Национальным банком Бельгии и обращаться с запросами к его централизованному хранилищу данных. Осуществляется также взаимодействие с фондовой биржей Euronext для совершения сделок с ценными бумагами.

По словам главы интеграционного департамента группы KBC Барта Ванхарена, система Sun SeeBeyond eGate Integrator позволила полностью изменить концепцию бизнеса KBC. Интеграция даже таких сложных приложений, как LoanIQ, была выполнена быстро и эффективно. "ИT-инфраструктура перестала быть препятствием для нашего развития. Теперь при выборе приложений нас не беспокоят проблемы интеграции. У нас есть все необходимые инструменты, и мы знаем, как ими пользоваться", - пояснил Ванхарен.

Подход, принятый компанией, полностью оправдал себя, поскольку позволяет ускорить и улучшить обслуживание клиентов. KBC - первый бельгийский банк, внедривший систему безналичных расчетов с биржей Euronext в реальном времени. Новая технология интеграции приложений позволяет быстрее выводить на рынок новые услуги. А это приносит дополнительную прибыль, так как банк способен предложить их клиентам раньше, чем конкуренты. "Прежде, когда нам требовалось произвести оценку риска для конкретного заемщика, результаты были готовы только на следующий день. Теперь мы получаем ответ непосредственно во время телефонного разговора с клиентом", - пояснил Ванхарен. Говоря о результатах проекта, необходимо также упомянуть о сокращении расходов на построение и поддержку ИТ-инфраструктуры.

    

Отвечая на вопрос о наиболее важных факторах, определяющих переход предприятий на сервис-ориентированную архитектуру, ИТ-менеджеры самый высокий приоритет отдали способности реагировать на изменения бизнеса (65% респондентов). Далее следуют простота интеграции приложений и долгосрочная отдача от ИТ-инвестиций за счет многократного использования аппаратных и программных средств.

SOA: просто о сложном

В чем же секрет SOA? Сервис-ориентированная архитектура основана на принципе прозрачного взаимодействия разнородных программных компонентов (сервисов) и построения на их основе автоматизированных бизнес-процессов. В большинстве случаев для этого будет достаточно уже имеющегося у компании портфеля приложений. Сервисы, предоставляемые приложениями, выполняют те или иные полезные действия, которые либо решают некие частные задачи, либо становятся элементами потока работ со сложной логической структурой. Координация выполнения различных сервисов называется иногда “оркестровкой". Поскольку управление оркестровкой и бизнес-правилами осуществляется в SOA отдельно от приложений, предоставляющих сервисы, эти приложения могут оставаться прежними даже при внесении существенных изменений в процессы и правила. Благодаря многократному использованию сервисов в различных сценариях существенно повышается общая эффективность расходов на ИТ и ускоряется модернизация ИС.

Основные элементы архитектуры SOA

Фундаментальное отличие сервис-ориентированной архитектуры от более ранних попыток создания гибких сред такого рода, заключается в ее нечувствительности к типам технологий, на которых базируются конкретные приложения. Оркестровка сервисов сводится к отправке и получению нейтральных по отношению к тем или иным технологиям сообщений, инициирующих какие-то действия или информирующих о результатах их выполнения. При этом сообщениям не нужна информация о внутренних свойствах сервиса.

В самых общих чертах архитектура SOA представлена на рисунке. Элементы, расположенные в самом низу, представляют портфель существующих приложений и связанные с ними хранилища данных, ОС и платформы исполнения. Переход к сервис-ориентированной архитектуре не должен повлиять на этот уровень, хотя если в тех или иных приложениях поддержка SOA заложена изначально (например, они представляют собой совокупность Web-сервисов), это может сильно упростить жизнь. Расположенный на самом верху уровень клиентского интерфейса содержит разнообразные механизмы обмена информацией с пользователями или внешними программными объектами (например, системами бизнес-партнеров). Чаще всего в современной практике для взаимодействия с пользователем применяется ПО корпоративных порталов, а с внешними приложениями - средства обмена XML-сообщениями.

Если архитектуру SOA предполагается применять для решения масштабных и особо ответственных задач, к элементам, изображенным на рисунке, следует добавить еще целый ряд важных подсистем. Так, если передаваемые сообщения могут содержать конфиденциальную коммерческую информацию, их безопасность конечно же должна обеспечиваться при помощи шифрования (чтобы минимизировать потери производительности, иногда прибегают к частичному шифрованию лишь особо важных атрибутов). Поскольку эксплуатируемые на предприятии приложения могут использовать различные механизмы безопасности, среда SOA обязана поддерживать общие для всех сервисов средства единой регистрации и защиты информации путем пересылки соответствующих XML-маркеров внутри сообщений.

Сервис-ориентированная архитектура, поддерживая изменения в модели ведения бизнеса, должна изолировать влияние модификации одного компонента на остальную часть среды. Это означает, в частности, что необходимо учитывать возможность одновременного внесения нескольких изменений, каждое из которых имеет свой жизненный цикл. В то же время следует сохранить путь для возвращения среды в предыдущее стабильное состояние, если внесенные ранее модификации приводят к ошибкам. Это означает, что управление жизненным циклом должно применяться не только к самим сервисам, но также и к оркестровке, бизнес-правилам, профилям информационной безопасности, требованиям аудита и ко всем другим атрибутам архитектуры.

SOA в здравоохранении XXI века

В соответствии с требованиями правительственной национальной стратегической программы клиника Salford Royal NHS Hospital Trust - одна из крупнейших государственных больниц в Великобритании, обслуживающая более 300 тыс. человек, - приступила несколько лет назад к внедрению единой системы ведения историй болезни в электронном виде, доступной для сотрудников всех отделений. Особенность этого лечебного учреждения состоит в том, что в нем работают специалисты различных узких специальностей, на прием к которым приезжают пациенты со всей страны.

Раньше для хранения историй болезней в каждом из отделений использовалось множество систем и баз данных. Медикам было трудно найти последние данные наблюдений или результаты лабораторных исследований пациентов. Необходимо было обеспечить сквозной поток информации и ее доступность в реальном времени для всех медицинских работников, которые в ней нуждаются. В конечном итоге это должно было повысить качество лечения как стационарных, так и амбулаторных больных. Для организации взаимодействия разнородных приложений, учитывающих ход лечения пациентов и собирающих результаты лабораторных и рентгенологических исследований, с новой системой EPR (Electronic Patient Record) было решено использовать технологию интеграции. В качестве инструмента применялась платформа Sun SeeBeyond eGate Integrator корпорации Sun Microsystems.

"Мы начали с шести палат в гериатрическом отделении, так как там происходит минимальное перемещение пациентов и возможные ошибки можно легче локализовать и исправить. По мере отладки системы мы стали вводить в нее истории болезни пациентов других палат. На следующем этапе мы помещали в систему истории болезни амбулаторных больных - клиника за клиникой. Это заняло около двух месяцев. Теперь врачи-консультанты имеют всю необходимую информацию о пациентах, находящихся в очереди, и могут подготовиться к приему", - вспоминает главный технический специалист больницы Джон Эллиот.

Медицинская документация о пациентах хранится в системе учета. Когда требуется срочная госпитализация больного или он обращается за амбулаторной помощью, сообщение в формате HL7 перемещается из учетной системы в приложение EPR. Результаты лабораторных и рентгенологических исследований передаются из различных источников по мере готовности. В больнице имеется 800 ПК, которые установлены в кабинетах специалистов, поликлиниках и в палатах. Консультанты вводят в систему свои диагнозы, которые, как и данные лабораторных и рентгенологических исследований, доступны каждому медицинскому работнику. Ежедневно в системе EPR появляется более 1500 медицинских документов, включая информацию о посещениях амбулаторных больных, о выписках из больницы, а также отчеты об операциях. Предусмотрена также возможность автоматического создания выписок для лечащего врача, которые включают, в частности, перечень всех назначенных лекарств.

"Я приведу несколько цифр, чтобы вы могли представить масштаб нашей системы, - поясняет Элиот. - Она содержит более 5 млн. записей учета пациентов, 2,4 млн. результатов лабораторных исследований, 275 тыс. материалов рентгенологических исследований, а также 670 тыс. других медицинских документов. Через ее интерфейсы ежедневно передается около 20 тыс. сообщений". Развитие системы будет продолжено. Сейчас, если житель Салфорда получает медицинскую помощь в других лечебных учреждениях, информация о проведенном там лечении в систему EPR не поступает. Со временем на той же технологической платформе планируется организовать взаимодействие с другими больницами региона, с тем чтобы электронные истории болезней стали более полными.

Мониторинг производительности, на основе которого можно контролировать соблюдение оговоренных соглашений по уровню обслуживания, должен позволять отслеживать частоту генерации сообщений различных типов, продолжительность исполнения сквозных процессов, динамику движения важных участков очередей, наличие экземпляров сообщений, заблокированных по неизвестным причинам. Кроме того, анализ потоков таких сообщений (его часто называют мониторингом бизнес-активности, или BAM) позволяет также получить полезную информацию, с помощью которой можно следить за общим состоянием бизнес-процессов и находить способы их дальнейшей оптимизации.

О проблемах лучше знать заранее

Как и любое инновационное начинание, создание сервис-ориентированной архитектуры сопряжено с рядом проблем. Первопроходцы, опрошенные экспертами из IDC, назвали их более десятка. Тем не менее все трудности можно отнести к одной из трех категорий проблем: внедрения, производительности и управления/администрирования. При внедрении бывает трудно организовать подключение к действующим системам (особенно сложно приходится в тех случаях, когда составной частью конечного решения должны стать приложения, функционирующие на нераспределенных платформах), сформировать подходящую логическую структуру сообщений и обеспечить их преобразование при передаче от одного сервиса к другому. Говоря о производительности, следует отметить сложность поддержки реальной рабочей нагрузки и обеспечения приемлемого времени отклика, а также соответствия между ожидаемым уровнем обслуживания и реальной пропускной способностью, которую видят пользователи. Проблемы управления связаны с обеспечением необходимого уровня информационной безопасности во всей среде, а также с контролем за метаданными и учетом жизненного цикла каждого компонента системы. В ближайшее время этот перечень скорее всего дополнится проблемами, связанными с необходимостью проведения информационного аудита.

Предложения Sun

Продукты компании Sun Microsystems, предназначенные для поддержки сервис-ориентированной архитектуры, входят в состав программного комплекса Sun Java Enterprise System (Java ES), который доступен либо целиком, либо в виде шести отдельных программных пакетов. Полный комплект Java ES может использоваться на широком спектре платформ и доступен по подписке по небольшой фиксированной ставке на каждого сотрудника организации. Разрешается также приобретать традиционную бессрочную лицензию. В состав Java ES входят следующие пакеты: Sun Java Application Platform Suite, Sun Java Availability Suite, Sun Java Communications Suite, Sun Java Identity Management Suite, Sun Java Integration Suite и Sun Java Web Infrastructure Suite. Три из них непосредственно ориентированы на реализацию SOA.

Прежде всего это пакет Sun Java Application Platform Suite, включающий среду исполнения приложений, предоставляющих сервисы (сервер приложений Sun Java System Application Server и Web-сервер Sun Java System Web Server), а также инструментарий разработчика Sun Java Studio и реестр сервисов. В ее состав также входят средства для построения интерфейса пользователя в рамках портала, а также расширения для удаленного доступа Portal Secure Remote Access Pack и Portal Mobile Access. В приведенной на рисунке схеме SOA эти компоненты располагаются в основном на нижнем и верхнем уровнях (за исключением реестра сервисов).

SOA приходит в Sun Microsystems

Предлагая своим клиентам инструменты для построения сервис-ориентированной архитектуры, корпорация Sun Microsystems не могла не опробовать их при решении собственных бизнес-задач. В настоящее время усилия ее ИТ-подразделения сосредоточены на развертывании тех элементов SOA, которые станут основой интеграционной инфраструктуры и платформы обработки сообщений. Они позволят Sun консолидировать эксплуатируемые ею сегодня корпоративные приложения, интегрировать разнородные внутренние и внешние системы, а также развернуть новые композитные приложения и услуги, с помощью которых можно будет реализовать инновационные бизнес-модели и повысить оперативность выполнения деловых процедур. Новая архитектура будет гораздо проще, надежнее и дешевле обеспечивать соответствие деятельности корпорации требованиям нормативно-правовых документов.

Переход к SOA позволит рационализировать инфраструктуру, поддерживающую выполнение транзакций и обмен информацией как внутри корпорации, так и с внешним окружением. Сегодня используемые в Sun корпоративные приложения, предназначенные, в частности, для управления снабжением и сбытом, ежегодно обрабатывают более 10 млн. транзакций с суммарным объемом в миллиарды долларов. Реализуя внутренний проект с условным наименованием IBIS, Sun Microsystems путем консолидации уменьшает количество используемых корпоративных приложений с 1000 до 50 и стандартизирует их на базе систем корпоративного управления Oracle. Одна из целей этого проекта - упрощение перехода к SOA, повышающей гибкость инфраструктуры и облегчающей внедрение новых прикладных систем. На основе SOA Sun со временем планирует развертывать композитные приложения и сервисы, которые могут быть использованы многократно.

Основой для построения композитных приложений служит технология Sun Java Composite Application Platform Suite (Java CAPS), позволяющая осуществлять динамическую доставку информации внутри предприятия, а также партнерам и клиентам - за его пределами. Применение адаптеров облегчает унаследованным приложениям, базам данных и ИС предприятий-партнеров взаимодействие друг с другом на базе стандартных транспортных протоколов. Ключевыми интеграционными компонентами в данном проекте являются:

- Sun SeeBeyond eGate Integrator, выполняющий функции центрального интеграционного узла и предоставляющий средства гарантированной доставки сообщений и их трансформации, а также инструменты для разработки, мониторинга и администрирования составных приложений;

- Sun SeeBeyond eInsight Business Process Manager, позволяющий проектировать, моделировать, контролировать и координировать бизнес-процессы;

- Sun SeeBeyond eXchange Integrator, служащий для безопасного управления отношениями Sun с ее партнерами, поставщиками и клиентами и позволяющий взаимодействовать с ними в реальном масштабе времени.

Кроме того, планируется использовать Java Message Service Grid - дополнение к Java CAPS, реализующее высокопроизводительную шину обмена сообщениями и обеспечивающее поддержку кластерных конфигураций и сетей на базе серверов Sun Fire.

В Sun ожидают, что внедрение новой SOA-платформы приведет к целому ряду положительных результатов. Возможность быстро изменять бизнес-процессы позволит компании оперативно адаптироваться к меняющимся рыночным условиям и требованиям регулятивных органов, а также осуществлять интеграцию ИС новых структурных подразделений, появляющихся в результате слияний и поглощений. Благодаря многократному использованию приложений и компонентов повысится отдача от сделанных ранее инвестиций. Ожидается также, что более широкое использование открытых стандартов приведет к снижению затрат на приобретение и обслуживание ИТ-активов.

В корпорации создана специальная комиссия, наблюдающая за ходом развертывания и развития новой платформы интеграции ресурсов и обработки сообщений. Опыт, полученный Sun Microsystems в ходе реализации данного проекта, будет передаваться ее клиентам во всем мире, осуществляющим переход к архитектуре SOA.

Одно из последних дополнений к комплексу Java ES, ставшее возможным благодаря недавнему приобретению корпорацией Sun Microsystems компании SeeBeyond, - мощный набор интеграционных решений Sun Java Integration Suite, предоставляющий набор адаптеров для множества приложений и платформ и инструментальные средства для создания новых адаптеров; связующее ПО, ориентированное на сообщения и обеспечивающее их маршрутизацию и преобразование; механизм управления процессами, поддерживающий оркестровку сервисов в рамках синхронной (транзакционной) или асинхронной модели исполнения композитного приложения; визуальную среду для проектирования композитных приложений и моделирования логики бизнес-процессов. Кроме того, Sun Java Integration Suite содержит средства мониторинга бизнес-активности (Business Activity Monitoring, BAM), позволяющие отображать текущее состояние сервис-ориентированной архитектуры, выявлять наиболее загруженные участки или узкие места в целях оптимизации процессов. Компоненты Sun Java Integration Suite способны функционировать на любом интеграционном сервере, поддерживающем технологию J2EE, или на серверах приложений Sun Java System Application Server, IBM WebSphere и BEA WebLogic.

Пакет управления идентификацией Sun Java Identity Management Suite базируется на масштабируемой высокопроизводительной LDAP-совместимой службе каталогов Sun. Он позволяет пользователям зарегистрироваться при входе в систему один раз и получать после этого защищенный доступ к композитным приложениям даже в тех случаях, когда образующие их сервисы базируются на разных моделях обеспечения информационной безопасности. Управление идентификацией может быть построено на принципах федеративности, будучи делегировано разнородным системам, поддерживающим стандарты SAML и WS-Security, а также службе Active Directory корпорации Microsoft.

Приложения, входящие в Sun Java ES, могут применяться как по отдельности, так и в составе упомянутых выше интегрированных наборов. Благодаря скрупулезному следованию общепринятым в ИТ-отрасли стандартам отдельные модули Sun Java ES могут использоваться в ИС, построенных на SOA-платформах других вендоров. Впрочем, точно так же решения других поставщиков могут применяться в архитектурах, построенных в основном на платформе Sun Java ES. Это может оказаться полезным, когда предприятию необходимы средства, отсутствующие пока в Sun Java ES.

Еще одна немаловажная причина, по которой клиентам стоит обратить внимание на продукты корпорации Sun, связана с провозглашенной ею год назад инициативой по открытию свободного доступа к исходным кодам всего портфеля ПО Solaris Enterprise System (на условиях лицензионного соглашения Sun CDDL), состоящего из ОС Solaris, комплекса Java ES, средств разработки Java-приложений и системы управления ИТ-инфраструктурой N1. Очевидная цель этой инициативы - создание обширного сообщества разработчиков, которые будут строить решения на основе технологий Sun.

Чтобы гарантировать SOA-проекты от неудач, следует хорошо продумать методологическую основу развертывания подобной архитектуры. Sun сотрудничает с рядом известных системных интеграторов и консультантов, каждый из которых имеет собственные методики такого рода. В свою очередь Sun Microsystems также предлагает набор консультационных сервисов, призванных помочь заказчикам в достижении быстрого возврата инвестиций в сервис-ориентированную архитектуру. В их числе - программы обучения бизнес-менеджеров и ИТ-специалистов потенциального заказчика, предпроектное обследование, формирование портфеля сервисов и развертывание средств управления ими, создание механизмов мониторинга, аудита и обработки ошибок.

Как считают эксперты IDC, по мере накопления опыта в управлении сервис-ориентированной архитектурой и совершенствовании инфраструктуры ПО фокус интересов заказчиков будет медленно смещаться от вопросов внедрения архитектуры к управлению ею. Появятся пакеты приложений с реализованными и готовыми к применению интерфейсами SOA-сообщений, станут широко доступными прошедшие практическую апробацию модели типовых процессов для каждой отрасли. Это будет способствовать снижению уровня риска и откроет широкие возможности для проектирования по-настоящему инновационных процессов.

Версия для печати