Зрелый архитектурный процесс - фактор успеха СОА-проекта Опыт применения идеологии SOA и влияние архитектурного процесса Эдуард Петренко Главный эксперт, архитектурный отдел, ДИТ Москва, 9 Сентября 2010 Группа ЮниКредит в цифрах и фактах Количество сотрудников: ~162,000 Отделений: ~ 9,600 Банковские операции в 22 странах Международная сеть в ~50 странах Активов в управлении: ~ € 185.5 млрд Сильные позиции на локальных рынках инвестиционного банкинга, лидирующие – в странах ЦВЕ Сегодня Группа ЮниКредит занимает лидирующие позиции в Италии, Германии и Австрии – странах с наиболее высоким уровнем дохода населения. Группа является безусловным лидером на быстроразвивающемся рынке стран Центральной и Восточной Европы, с долей рынка, превышающей в 2 раза долю ближайшего конкурента. 2 AGENDA 3 Понятие архитектурного процесса. Его развитие в ЮниКредит Банк Использование SOA в ЮниКредит Банк Влияние архитектурного процесса на следование SOA Зрелый архитектурный процесс - фактор успеха СОА-проекта 4 Понятие архитектурного процесса. Его развитие в ЮниКредит Банк Определение архитектурного процесса Понятие архитектурного процесса Архитектурный процесс (АП) - совокупность внутренних процедур предприятия, направленных на контролируемое изменение системной архитектуры в сторону целевой архитектуры. АП включает процедуры, влияющие на проектирование изменений, и процедуры контроля соответствия производимых изменений архитектурным решениям. Зрелый АП включает процедуры улучшения АП. Как и для любого процесса, для АП должны быть определены ключевые показатели эффективности процесса (KPI). 5 Определение архитектурного процесса - продолжение Понятие архитектурного процесса Архитектурный процесс включает в себя следующие подпроцессы: определение целевой архитектуры, ИТ-стратегии; стандартизация платформ; определение архитектурных принципов, используемых при принятии решений; контроль соответствия планируемых изменений стратегии и принципам; контроль соответствия реализуемых изменений запланированным ранее; каталогизация информационных систем; каталогизация интерфейсов (в смысле точка-точка); контроль объектов и исполняемых модулей ESB; каталогизация, планирование, описание сервисов; улучшение АП: развитие методологии, описание текущего ИТ-ландшафта, определение и измерение KPI АП; мероприятия по обмену знаниями внутри архитектурного подразделения; выделение и документирование архитектурных шаблонов (patterns); образовательная, просветительская деятельность внутри и вне ИТ. 6 Развитие архитектурного процесса - история Развитие архитектурного процесса Нынешняя структура ИТ в Банке была сформирована, в существенной части, под влиянием проекта по внедрению АБС FlexCube. К началу проекта формально АП в Банке отсутствовал. Фактически системная архитектура определялась руководителем отдела разработки. 2004 г. В проекте появляется подпроект AICR, задача которого – разработка архитектуры внедрения FCC. Проделывается первичная работа по документированию текущей архитектуры Банка, выработке шаблонов проектных документов. Конец 2006 г. В Департаменте ИТ создаётся Архитектурный отдел. Предпринимаются усилия как по сбору первичной информации по информационным системам и интерфейсам, так и по встраиванию в процесс разработки ПС разработки архитектурных решений и предоставлению в Архитектурный отдел информации по новым и изменяющимся системам. Корпоративная сервисная шина исторически контролируется Архитектурным отделом. 7 Развитие архитектурного процесса - начало Развитие архитектурного процесса Архитектурный процесс включает в себя следующие подпроцессы: определение целевой архитектуры, ИТ-стратегии; стандартизация платформ; определение архитектурных принципов, используемых при принятии решений; контроль соответствия планируемых изменений стратегии и принципам; контроль соответствия реализуемых изменений запланированным ранее; каталогизация информационных систем; каталогизация интерфейсов (в смысле точка-точка); контроль объектов и исполняемых модулей ESB; каталогизация, планирование, описание сервисов; улучшение АП: развитие методологии, описание текущего ИТ-ландшафта, определение и измерение KPI АП; мероприятия по обмену знаниями внутри архитектурного подразделения; выделение и документирование архитектурных шаблонов (patterns); образовательная, просветительская деятельность внутри и вне ИТ. 8 Развитие архитектурного процесса – подпроект AICR Развитие архитектурного процесса Архитектурный процесс включает в себя следующие подпроцессы: определение целевой архитектуры, ИТ-стратегии; стандартизация платформ; определение архитектурных принципов, используемых при принятии решений; контроль соответствия планируемых изменений стратегии и принципам; контроль соответствия реализуемых изменений запланированным ранее; каталогизация информационных систем; каталогизация интерфейсов (в смысле точка-точка); контроль объектов и исполняемых модулей ESB; каталогизация, планирование, описание сервисов; улучшение АП: развитие методологии, описание текущего ИТ-ландшафта, определение и измерение KPI АП; мероприятия по обмену знаниями внутри архитектурного подразделения; выделение и документирование архитектурных шаблонов (patterns); образовательная, просветительская деятельность внутри и вне ИТ. 9 Развитие архитектурного процесса – Архитектурный отдел Развитие архитектурного процесса Архитектурный процесс включает в себя следующие подпроцессы: определение целевой архитектуры, ИТ-стратегии; стандартизация платформ; определение архитектурных принципов, используемых при принятии решений; контроль соответствия планируемых изменений стратегии и принципам; контроль соответствия реализуемых изменений запланированным ранее; каталогизация информационных систем; каталогизация интерфейсов (в смысле точка-точка); контроль объектов и исполняемых модулей ESB; каталогизация, планирование, описание сервисов; улучшение АП: развитие методологии, описание текущего ИТ-ландшафта, определение и измерение KPI АП; мероприятия по обмену знаниями внутри архитектурного подразделения; выделение и документирование архитектурных шаблонов (patterns); образовательная, просветительская деятельность внутри и вне ИТ. 10 Зрелый архитектурный процесс - фактор успеха СОА-проекта 11 Использование SOA в ЮниКредит Банк Техническая платформа для реализации SOA Использование SOA в ЮниКредит Банк Техническая возможность внедрения SOA была обеспечена использованием в Банке интеграционной шины, построенной на технологиях IBM Websphere MQ и IBM Websphere Message Broker. IBM MQSeries начал использоваться в Банке с 2001г., с 2004 – Message Broker. Масштабируемость данной платформы позволила наращивать применение интеграции приложений в парадигме слабой связанности. Для эффективного использования платформы интеграции были выработаны стандарты, что позволило эффективно бороться со сложностью в интеграционной шине. Существенное время понадобилось для освоения платформы службами сопровождения, получения отказоустойчивых конфигураций, нахождения точек отказа, налаживания мониторинга. После решения этих проблем мы получили платформу, на которой можно реализовывать критические приложения. 12 Техническая платформа для реализации SOA Использование SOA в ЮниКредит Банк Итак, мы получили мощный инструмент для реализации передовых архитектурных концепций. 13 Подход к реализации SOA Использование SOA в ЮниКредит Банк Подход, который был использован – эволюционный. По возможности, в новых проектах накапливались повторно используемые сервисы. Это – как сервисы, имеющие бизнес-смысл (SRVCIF, SRVACC, SRVPMT, SRVLON, SRVDEP), так и технологические, например, SRVBOIR – сервис сопоставления идентификаторов бизнес-объектов (используется при реализации бизнес-сервисов). Сложным понятийным переходом явился отказ от мышления точка-точка при проектировании интеграционных решений. Это отразилось даже в изменении подхода к именованию объектов. 14 Пример применения идеологии SOA: ABS Service На ESB реализован компонент ABSService, предоставляющий приложениям - клиентам информацию о счетах, движениях, кредитах, депозитах и т.д., изолирующий пользователя от знания о разных АБС, распределения продуктов между ними. 15 Зрелый архитектурный процесс - фактор успеха СОА-проекта 16 Влияние архитектурного процесса на следование SOA Доводы в пользу архитектурного процесса Влияние архитектурного процесса на следование SOA Одним из первых антипаттернов SOA является перенос беспорядка (silo) из области прямых межсистемных взаимодействий в сервисную шину. Такой перенос – явное следствие отсутствия проектировочных усилий со стороны архитекторов решения. Создание сервисов требует дополнительных усилий со стороны руководителей проектов: интегрировать приложения, создавая сервис, дольше и дороже. Кроме того, добавляется технологический риск, если разработчик слабо знаком с интеграционными технологиями. Возникает конфликт интересов между руководителем проекта и архитектором. Для того, чтобы идея SOA не зачахла и принесла-таки долгожданный возврат инвестиций, у архитектора в этом конфликте должны быть сильные позиции. Наличие в организации архитектурного процесса означает наличие документов, регламентирующих процесс и затверждающих позиции архитектора. Одним из компонентов архитектурного процесса в приведённом выше определении является создание и поддержание реестра сервисов – неотъемлемого компонента SOA. Кроме того, важной частью АП является интенсивный обмен знаниями внутри архитектурного подразделения, что позволяет, например, избежать дублирования сервисов – другого распространённого антипаттерна SOA 17 Наблюдения, выводы Техническая платформа, сама по себе, создаёт в организации только техническую возможность для внедрения SOA. Успех SOA-проекта, то есть эффективный возврат инвестиций, возможен только при наличии архитектурного подразделения, обладающего достаточной компетенцией и полномочиями для определения архитектуры вносимых в ИТландшафт изменений. Компетенция и полномочия архитектурного подразделения определяются, в существенной степени, степенью зрелости архитектурного процесса. 18