КаталогИндекс раздела



Решения IBM для построения инфраструктуры.
Рабочая среда бизнеса по требованию
Киев, 22 сентября 2005 г.
А.С.Деревянко

22 сентября 2005 г. в Киеве проводилась конференция фирмы IBM "Решения IBM для построения инфраструктуры. Рабочая среда бизнеса по требованию". Название "конференция" для этого мероприятия не совсем адекватное, правильнее было бы назвать его презентацией. Хотя в программе было объявлено 9 докладов, они являлись, скорее, разделами одного общего представления, которое делала одна команда. На подобной презентации нам уже довелось побывать, и мы считаем, что в некоторых отношениях подобные мероприятия интереснее и полезнее "сборных" конференций. Во-первых, потому, что, не претендуя на полноту и глубину представления информации по отдельным направлениям/продуктам, такие презентации дают представление о том "как это все работает вместе". Во-вторых, потому, что такие презентации делаются командами профессионалов, подготовленных именно к публичным выступлениям и прекрасно владеющих искусством подачи материала.

В данном случае презентация делалась командой из лабюоратории конкурентных технологий IBM в составе:

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

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

Рождение концепции бизнеса по требованию является реакцией на кризис в сфере ИТ, проявивший себя в начале нового века. 3-5 лет назад фирмы, являющиеся потребителями ИТ, вдруг обнаружили, что вложения, сделанные в эту сферу себя не окупают. ИТ-проекты оказываются слишком дорогими и долгими в реализации, причем, имеют явную тенденцию к значительному превышению исходных смет и срыву плановых сроков. К моменту завершения с грехом пополам ИТ-проекта оказываются, что его исходные спецификации, правильные на момент начала проекта, сегодняшним реалиям уже не соответствуют и, по крайней мере, значительная часть сделанного должна быть либо существенно переделана, либо просто выброшена. Осознание этой ситуации привело к ослаблению интереса потребителей ИТ и заметному спаду в объемах продаж продуктов, относящихся к этой области.

Чтобы вернуть доверие потребителей и удовлетворить их реальные нужды, фирма IBM разработала концепцию бизнеса по требованию.

Бизнес по требованию (on demand business) - это предприятие, бизнес-процессы которого тесно интегрированы внутри всей компании, а также с бизнес-процессами партнеров, поставщиков, потребителей, что дает предприятию возможность гибко и быстро реагировать на изменяющиеся требования покупателей, коньюнктуру рынка, внешние воздействия.

ИТ-поддержка бизнеса по требованию осуществляется программными продуктами, относящимися к категории промежуточного программного обеспечения (middleware). IBM является единственной фирмой, которая поставляет полный спектр промежуточного программного обеспечения для решения задач бизнеса по требованию (и, естественно, средств разработки для этих целей). Это не означает, что IBM является монополистом, практически в каждом из направлений, решающих отдельные задачи, у фирмы есть конкуренты (Microsift, BEA, Oracle, etc.), чьи продукты иногда опережают на рынке продукцию IBM. Но в каждом из этих направлений IBM, по крайней мере, входит в число признанных лидеров, и пока только IBM покрывает все эти направления. Все множество программных продуктов IBM категории middleware распределяется по пяти основным брендам:

WebSphere    Стратегическое для бизнеса по требованию семейство продуктов, стержнем которого является сервер приложений. Ранее сервер WebSphere специализировался как сервер для выполнения бизнес-транзакций, но теперь его функции стали значительно более универсальными.
DB2 Семейство продуктов управления данными, основу которого составляет объектно-реляционная СУБД.
Lotus Сервер приложений Domino, позиционирующийся для обеспечения коллективной работы, и клиент Notes; в настоящее время некоторые функции этого семейства переходят под другие бренды.
Tivoli Семейство продуктов для управления распределенной инфраструктурой бизнеса по требованию.
Rational Семейство продуктов, изначально обеспечивавшее автоматизацию моделирования и программирования, сейчас под этот бренд передаются все средства разработки из других брендов.

Следует упомянуть также два бренда, относящиеся к программному обеспечению Открытых Кодов и являющиеся для IBM также стратегическими

Linux Операционная система, работающая на всех аппаратных платформах (в частности, на всех семействах серверов IBM) и рассматриваемая фирмой как единая общая операционная среда, обеспечивающая совместное функционирование продуктов от разных производителей без создания искусственных конкурентных преимуществ для кого-либо.
Eclipse    Базовая платформа для разработки любых средств разработки, функционирующая на основе технологии Java. Проект Eclipse начался на базе программного обеспечения, коды которого фирма IBM открыла для общего использования. В прошлом году было объявлено, что все средства разработки IBM переходят на платформу Eclipse; на конференции из всех средств, показанных в ходе демонстрации явно "торчали уши" этой платформы.

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

  1. Разработка компонентной структуры БП.
  2. Представление элементов БП как сервисов
  3. Обеспечение совместной работы процессов
  4. Интеграция сервисов в приложение/каркас (framework)

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

На шаге первом (разработка компонентной структуры БП) следует прежде всего произвести идентификацию элементов БП, определить, какие части БП будут отдельными компонентами, то есть, для каждого потенциального компонента определить реализуемые функции, используемые данные и предоставляемое им обслуживание. WebSphere Business Modeler позволяет представить БП в виде диаграмм потока, проходящего через компоненты БП. Модель БП представляется либо в графическом виде, либо не языке BPEL (Business Process Execution Language). С каждым компонентом БП может быть связаны характеристики (время, расходы, вероятность ветвления и т.п.). Таким образом, бизнес-аналитик может выполнить не модели БП некоторый поток входных процессов, проанализировать их и оптимизировать БП. Описание БП экспортируется из Business Modeler в UML или BPEL. После представления компонентов БП в виде сервисов, процесс упаковывается в ear-файл и разворачивается на WebSphere Process Server. Process Server наряду с другими контейнерами, имеющимися в сервере приложений, содержит также контейнер BPEL, поддерживающий "хореографию процессов", представленных в виде потоков BPEL. Process Server может работать совместно с WebSphere Business Monitor, последний собирает реальные характеристики потока процессов и их выполнения. Реальные характеристики затем могут вновь быть введены в модель Business Modeler, и, таким образом, бизнес-аналитик может произвести оптимизацию для реальных данных.

На следующем, втором шаге мы представляем элементы БП в виде сервисов. Здесь уместно сказать несколько слов о том, что такое сервисы и чем они отличаются от просто компонентов.

Сервис - это прикладная функция, представленная как повторно используемый компонент, который может применяться в БП. Сервис либо обеспечивает информацию для своего заказчика, либо обрабатывает бизнес-данные, переводя их из одного целостного состояния в другое, целостное же. Основныи отличием сервиса от обычного компонента является стандартный и платформенно-независимый интерфейс. Заказчик, обращающийся к сервису, таким образом, не обязан ничего знать о подробностях реализации сервиса: на каком языке и в какой модели программирования он создан, на каких аппаратных средствах, в какой операционной среде, на какой платформе middleware он выполняется. СОА, таким образом, позволяет компоновать БП из компонентов, выполняющихся на разных платформах (прежде всего - не конкурирующих платформах .NET и J2EE) и представлять в виде сервисов и повторно использовать в новых БП унаследованные компоненты. В последнем случае сами унаследование компоненты не изменяются, но для них только делается оболочка, адаптирующая их интерфейсы к стандартам сервисов. Единственной общепринятой на сегодняшний день реализацией СОА являются Web-сервисы. Говоря о единственной реализации, мы имеем в виду реализацию стандартов, конкретных же программных реализаций этих стандартов существует множество. Web-сервисы представляют собой стандарты консорциумом W3 и базируются на трех основных группах спецификаций:

Все эти спецификации базируются на языке XML, что обеспечивает их независимость от конкретных платформ и коммуникационных протоколов.

Возвращаясь ко второму шагу построения ИС, отметим, что основной применяемый здесь продукт - WebSphere Integration Developer. На этом шаге мы создаем или выбираем из огромного набора, имеющегося в Integration Developer, адаптеры, обеспечивающие представление интерфейсов компонентов в стандартах сервисов. Integration Developer позволяет оформлять компоненты потока БП, представленного в BPEL, как EJB без состояния, JMS, SOAP/HTTP, SOAP/JMS.

Шаг третий - соединение сервисов. Решение таких проблем, как совместная работа компонентов и приложений, использующих разные стандарты, платформы, языки и модели программирования, протоколы коммуникаций может обходиться весьма дорого. По данным разных экспертных групп (IDC, Gartner) на интеграцию приложений уходит от 29 до 35% бюджета ИТ-проектов. Эта задача решается продуктом IBM WebSphere Enterprise System Bus. Фактически ESB заменяет в схеме взаимодействия компонетов топологию "сеть" на топологию "звезда". В центре звезды находится ESB, а на лучах - взаимодействующие сервисы. Сам ESB, однако, прозрачен для сервисов и обеспечивает для них виртуальное соединение "any-to-any". ESB берет на себя такие функции, как обеспечение соединений, маршрутизация, преобразование форматов сообщений, преобразование и переключение протоколов. WebSphere ESB работает с сервисами, соответствующими стандартам Web-сервисов; продукт WebSphere message Broker расширяет эти функции, включая в сферу взаимодействия большое число пропретиарных платформ.

Наконец, четвертый шаг - собрать все это вместе для выполнения конкретных задач конкретного предприятия. Интеграция выполняется по трем направлениям:

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

Интеграция информации поддерживается на двух уровнях. На "нижнем" уровне она обеспечивается средствами управления данными - DB2 Content Manager. Content Manager реализует технологию федеративной базы данных, представляя информацию, разнородную по структуре и находящуюся в разных хранилищах (не обязательно только в реляционных СУБД), как хранящуюся в единой база данных, и дает возможность использовать для доступа к этой информации мощные интерфейсы современной СУБД. WebSphere Information Integrator обеспечивает "верхний" уровень интеграции, синхронизацию, обмен данными и выполнение транзакций в составе хореографии БП.

Интеграция людей состоит в обеспечении людей, участвующих в БП (сотрудников, менеджеров, покупателей и т.д.) удобными и функциональными рабочими местами и обеспечении единого информационного пространства для этих людей. Рабочее место должно предоставлять для человека единую точку доступа к ИС, ее функциям и данным, прежде всего, к тем функциям и данным, которые существенны для ролевой функции участника процесса. Такое рабочее место строится как "мозаичная" панель. В одном окне рабочего места существует несколько "подокон" (не обязательно имеющих выделенные визуально границы), в каждом из которых работает свое приложение, обеспечивающее выполнение одной из функций, необходимых для данной роли. При этом приложения, работающие в разных "фрагментах мозаики" легко обмениваются данными и синхронизируют свои состояния. Во многих случаях пользователю такого рабочего места предоставляется возможность самому его конфигурировать, настраивать его вид и выбирать приложения переднего плана. Для внешних по отношению к предприятию участников БП (например, покупателей) наиболее подходящей является реализация такого рабочего места как Web-портала - "тонкого" клиента, не требующего на рабочем месте ничего, кроме Web-браузера. Приложения, работающие в фрагментах мозаики портала (портлеты) являются расширением технологии сервлетов J2EE, они выполняются на сервере и поддерживаются WebSphere Portal Server. Для сотрудников, наряду с Web-порталами, возможно применение нового продукта IBM Workplace, объединяющий технологии Lotus с технологией Eclipse Rich Client. Workplace предоставляет пользователю такое же "мозаичное" окно, как и портал, но содержимое фрагментов мозаики обеспечивается локальными программами, которые, однако, устанавливаются с сервера. Помимо значительно более "умного" клиента Workplace дает своему пользователю возможность работать без режима непосредственной связи с сервером. Однако, когда такая связь устанавливается, происходит автоматическая синхронизация локальных программ и данных Workplace с их серверными версиями.

Что же касается коммуникаций между людьми, то в технологии порталов и Workplace вносятся такие достаточно хорошо отработанные в Lotus средства, как почта и календарь, командная чат-комната, управление командным документооборотом, дистанционное обучение и т.д., и т.п.

Поле того, как ИС собрана, ее нужно поддерживать. Эти функции обеспечиваются семейством продуктов IBM Tivoli. На конференции основное внимание было уделено возможностям продуктов Tivoli по отслеживанию выполнения БП. Существуют специальные наборы Java API, которые, будучи встроены в программный код, позволяют серверу замерять время реакции компонента. Но поскольку трудно рассчитывать, что все компоненты будут нести в себе такой встроенный код, Tivoli предоставляет собственные, внешние по отношению к серверу J2EE, средства, позволяющие следить за поведением компонента. На основании задаваемых приоритетов и бизнес-правил Tivoli может определять нарушения в поведении ИС и даже предсказывать будущие нарушения, экстраполируя тенденции изменения поведения.

Для управления Tivoli представляет ИС не в срезе ресурсов, а в срезе БП, в такой срез включаются все ресурсы - аппаратные и программные, - которые участвуют в выполнении БП. На верхнем уровне администратор видит БП системы, причем те БП, которые нарушают известные для Tivoli правила выделяются яркой пометкой. Далее представление БП может пройти несколько этапов детализации, на каждом из которых уточняется источник нарушения, в конечном итоге нарушителя можно локализовать до метода класса Java.

Tivoli также ведет и учет ресурсов, с возможностью динамического их перераспределения в соответствии с бизнес-приоритетами при изменении нагрузки.

Состав и структура портфеля продуктов IBM всегда находится в динамике. Похоже, сейчас изменения в этом отношении происходят наиболее интенсивно. Во-первых, происходит передача всех средств разработки в бренд Rational. Эта передача еще не закончилась, некоторые такие продукты еще остаются в бренде WebSphere, но в ближайшее время она должна завершится. Во-вторых, функции обеспечения коллективной работы, которые были прерогативой Lotus, переходят в другие бренды. Так некоторое время существовали параллельно два портальных сервера и, соответственно, средств разработки порталов - в Lotus и в WebSphere, - хотя они существуют и теперь, но рекомендуемыми фирмой средствами являются средства WebSphere. IBM Workplace забирает себе многие функции, которые раньше выполнялись исключительно Lotus Notes. Мы уверены, что бренд Lotus не исчезнет, но следует ожидать, что в ближайшее время он обретет какое-то "новое лицо".

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

Основными выводами, которые мы сделали из этой составляющей конференции, были следующие:

  1. Впервые фирма Microsoft была названа главным конкурентом. Разумеется, для нас это не было открытием. Поскольку новые версии Windows все в большей мере претендуют на то, чтоб стать полноценным сервером приложений для платформы .NET, Microsoft становится еще одной фирмой, производящей полный спектр промежуточного программного обеспечения. Поскольку эта сфера уже давно является для IBM стратегической, фирма не отдаст ее так легко, как в свое время она отдала сферу персональных вычислений. Поэтому самой жесткой конкурентной войной, которая начнется в ближайшее время (уже началась!) будет война между IBM и Microsoft на поле промежуточного программного обеспечения. Мы этого давно ожидали, но на мероприятиях IBM это было озвучено впервые.
  2. Увлекаясь в последнее время технологиями с открытыми стандартами, мы основное внимание уделяли разрабатываемым в этом русле продуктам с открытыми кодами (или, свободно распространяемым). Приходилось признать, что такие продукты, как правило, уступают продуктам Microsoft для платформы .NET по многим показателям, прежде всего - по совершенству средств разработки. Презентация IBM убедила нас в том, что коммерческие продукты для платформы J2EE, в том числе и средства разработки, ни в чем не уступают конкурентам.
  3. На наш взгляд, при сопоставлении с продуктами конкурентов были несколько неправильно выбраны приоритеты (но это только на наш вкус). Слишком часто на передний план выдвигались функциональные и эксплуатационные преимущества. Это безусловно важно, но во многих случаях добавление в продукт новой функции или повышение производительности - "дело наживное". Мы бы выдвинули на первый план другое направление, которому, впрочем, тоже уделялось внимание на конференции. Мы считаем, что главным конкурентным преимуществом продуктов IBM является их опора на открытые стандарты. Этим обеспечивается возможность совместной работы продуктов IBM с продуктами других производителей, развитие их в соответствии с известной "дорожной картой", возможность включения в ИС "унаследованных" ИТ-активов.

Отметим, что после проведения IBM Technology Day в Киеве в марте этого года это уже не первое мероприятие IBM в Украине, и это не может не радовать.


КаталогИндекс раздела