Архитектура SOA представляется оптимальной для того, чтобы быстро и удобно разрабатывать и развивать информационную систему предприятия, если, конечно, у этого предприятия есть реальная потребность, желание и возможности активно развиваться и инвестироват

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

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

В сторону SOA

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

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

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

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

Чтобы успешно развивать сервис-ориентированную архитектуру (а переход к SOA предполагает использование общего инструментария и единого репозитария сервисов), мы используем целый комплекс решений IBM, и в процессе развития системы выявляется потребность в новых инструментах.

Текущее состояние дел

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

Кроме того, ряд других работающих в компании приложений мы переводим на сервис-ориентированную архитектуру. В общей сложности к интеграционной сервисной шине будет подключено еще около десятка приложений. Когда будет завершено строительство терминала «Шереметьево-3», мы планируем осуществить интеграцию с этим терминалом и с аэропортом «Шереметьево» посредством шины.

Уроки, которые мы извлекли

Я уверен, что в первую очередь необходимо определиться с конкретным набором инструментов, которые необходимы для реализации SOA, и с последовательностью их внедрения. Среди инструментария SOA имеется очень много приложений и задач, и если предприятие попробует установить и запустить сразу все эти системы, то, скорее всего, подобная конструкция не заработает.

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

В качестве основы интеграционной шины мы взяли IBM WebSphere. Когда мы в 2004 году произошло наше первое знакомство с этой линейкой продуктов, в ее состав входило более ста компонентов. После совместной работы с IBM мы выделили для себя небольшой набор компонентов, который послужил нам базой, определили границы пилотного проекта, охватывающего ограниченный набор задач, реализовали его и затем приступили к дальнейшему развитию SOA.

Не следует забывать, что внедрение интеграционной системы, которая должна стать центральным звеном ИТ-инфраструктуры компании и механизмом взаимодействия всех ее приложений, сопряжено с немалыми рисками — если это центральное звено окажется ненадежным, если в нем будут систематически происходить сбои, то ненадежной станет вся информационная система компании. Подобное «развитие» ИТ в компании чревато серьезными проблемами, в том числе лично для ИТ-директора, поэтому необходимо уделить особое внимание надежности интеграционной системы и ее аппаратной платформы. Очень важно, чтобы ее архитектура предусматривала резервирование мощностей. В настоящее время мы используем высоконадежные серверы для развертывания IBM WebSphere, установленные на двух разных площадках. Резервирование обеспечивается и аппаратной, и программной архитектурой.

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

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

Сергей Кирюшин — заместитель генерального директора, директор департамента ИТ компании «Аэрофлот — Российские авиалинии»


SOA и поставщики ERP

Ведущие производители ERP-систем, такие, как SAP и Oracle, активно развивают SOA-архитектуру и предлагают заказчикам комплексное интегрированное решение, включающее сервисную шину данных, портал доступа, внешние средства разработки, которые позволяют вести разработки в SOA-архитектуре, и т.п. Эти элементы есть и у SAP, есть и у Oracle, и у других производителей ERP-систем.

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

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

Не надо забывать, что рынок SOA еще только развивается, и пока нет единых стандартов взаимодействия SOA-приложений, например, SAP и Oracle. Остается вопрос в части интеграции метаданных различных систем. Но думается, что со временем — лет через пять — эти вопросы будут решены.

На рынке SOA-решений сегодня есть несколько сильных игроков, среди которых ведущие позиции занимают IBM, SAP и Oracle. Вероятно, в перспективе этих лидеров догонит Microsoft.