Мы продолжаем обсуждение проблем SOA с российскими заказчиками (см. www.pcweek.ru/themes/detail.php?ID=110517 и www.pcweek.ru/themes/detail.php?ID=110761). На сей раз на вопросы обозревателя PC Week/RE Андрея Колесова отвечает Олег Подкопаев, CIO банка “Русфинанс”, группа Societe Generale.
PC Week: SOA — это один из подходов к созданию ИТ-систем и реализации ИТ-проектов или это общий путь развития корпоративных ИС на современном этапе?
Олег Подкопаев: Концептуально SOA — стратегический подход к формированию всего ИТ-ландшафта предприятия и, более того, основное направление построения взаимоотношений между бизнесом и ИТ. Действительно, ИТ-подразделение является поставщиком некоторого набора сервисов, основные потребители которого — бизнес-подразделения. Для того чтобы правильно управлять уровнем бизнес-сервисов, им должны быть поставлены в соответствие сервисы приложений, далее инфраструктурные сервисы и т. п. Индикаторы производительности каждого сотрудника и ИТ в целом привязываются к уровню сервисов, за которые они отвечают. На базе сервисов строится стратегия развития и операционная деятельность ИТ. Таким образом, для достижения максимального результата сервисно-ориентированный подход должен присутствовать во всех областях, во всех срезах ИТ-деятельности.
На практике, конечно, использование концепции SOA зависит от степени ИТ-зрелости конкретной компании и тех задач, которые решаются в некоторой перспективе. В ряде случаев достаточным считается внедрение интеграционной платформы для обеспечения более качественного взаимодействия прикладных систем. При этом иногда даже сами сервисы могут в явном виде не выделяться и не поддерживаться. На более продвинутом этапе сервисный подход применяется в организации самих проектов, при взаимодействии с поставщиками информационных систем. Далее происходит привязка к бизнес-процессам компании и т. д.
PC Week: Есть ли критерии, по которым (хотя бы условно, на качественном уровне) можно было бы отличить SOA-проект от не-SOA?
О. П.: Действительно, сейчас повсеместно говорится о реализации SOA-проектов, но зачастую это оказываются проекты просто по интеграции систем либо разбиению ИС на функциональные модули и систему интерфейсов. По-моему мнению, SOA-проект должен обладать по меньшей мере следующими чертами:
- в рамках проекта должен быть определен список реализуемых бизнес-сервисов и поставленных им в соответствие сервисов прикладных систем;
- каждая система должна быть строго специализирована и предоставлять набор строго определенных сервисов, которые могут быть повторно использованы, что очень важно;
- системы должны быть равноправны, ни одна из них не должна трактоваться как центральная;
- взаимосвязь систем должна быть реализована через профессиональную интеграционную платформу, причем каждому сервису должен соответствовать один адаптер;
- бизнес-процесс в основном должен быть реализован непосредственно в интеграционной платформе, а не в какой либо из систем.
PC Week: В чем преимущества и недостатки (трудности) SOA-проектов?
О. П.: У SOA есть целый набор преимуществ. Прежде всего это хорошая структурированность проекта, поскольку формируется четкое понимание зоны ответственности каждой системы и соответственно каждого поставщика. Гибкость SOA с точки зрения планирования и ориентация на бизнес-сервисы позволяют запускать проект не в целом, а по мере востребованности каждого конкретного сервиса, т. е. реализовать на практике идею “сервис по требованию”. Отсюда и короткие сроки получения результата — он достигается значительно быстрее, чем в обычном проекте. С точки зрения ИТ важно, что в комплексном решении всегда есть возможность поменять одну из подсистем, не нарушая его целостности как в рамках данного проекта, так и впоследствии. Важно и то, что каждый поставщик занимается “своим делом”, а не всем проектом в целом, т. е. предоставляет ровно те услуги, по которым он обладает наибольшей экспертизой. Интеграция опять же поручается специализированной компании, имеющей опыт именно в интеграции. Ресурсное наполнение проекта осуществляется за счет всех поставщиков, а не за счет набора средств, имеющегося в распоряжении одного интегратора, что снижает риски ресурсного наполнения проекта.
В то же время, конечно, существуют и некоторые трудности или особенности, связанные с реализацией SOA-проектов. Например, за счет наличия большого количества участников усложняется организация и контроль проекта в целом. По этой же причине требуется более четко контролировать целостность решения, его непротиворечивость и эффективность. Для решения данных задач в организации желательно наличие практик проектного офиса и бизнес-аналитики.
Существуют риски последовательного (неодновременного) запуска сервисов, поскольку задержка в запуске каждого последующего сервиса уже напрямую влияет на основной бизнес организации. В целом получается, что SOA-проекты, как правило, более дорогие за счет использования дополнительного программного обеспечения интеграционной платформы.
PC Week: Можно ли сформулировать общие рекомендации: когда SOA нужно применять обязательно или желательно и когда SOA нельзя применять ни в коем случае?
О. П.: Здесь нет однозначного ответа, и решение об использовании SOA зависит от целого набора факторов: зрелости компании и ее ИТ-систем, целей и стратегии развития, наличия соответствующего опыта, ИТ-бюджета, в конце концов. В целом при построении новой компании, а также в случае коренной перестройки бизнеса или всего ИТ-ландшафта более логичным является использование SOA-подхода. Это даст значительные преимущества и по срокам, и по результатам, и по возможностям дальнейшего развития.
Но если в организации стабильная ситуация с точки зрения ИТ и бизнеса в целом, если даже с использованием устаревших технологий взаимодействие между системами прозрачно и эффективно либо основные бизнес-процессы реализованы в одной основной банковской системе и это не ограничивает существенно возможности дальнейшего развития, то, наверное, затевать перевод на SOA-платформу в этом случае было бы неправильно.
PC Week: Предполагает ли SOA более активное участие бизнеса в планировании и в реализации ИТ-проектов?
О. П.: На самом деле говорить руководству про SOA абсолютно бесполезно, за редким исключением. SOA является инструментом ИТ, методом реализации ИТ-задач — никому же не приходит в голову согласовывать с руководством, на каком языке писать программы — на Си или Java. Реализуется бизнес-проект и соответственно согласовывается бизнес-решение, а как оно реализуется — для бизнеса это безразлично. И в этом смысле участие бизнеса в проекте не меняется, если, конечно, до этого отношения между бизнесом и ИТ уже достигли должного уровня взаимопонимания.
PC Week: Изменяется ли в случае SOA соотношение участия в реализации проекта ИТ-подразделения заказчика и внешних исполнителей (консультантов, интеграторов)?
О. П.: Отношения между заказчиком и исполнителем изменяются, изменяется само понятие интегратора. В классическом, не-SOA, проекте под интегратором понимается компания, которая поставляет решение под ключ, является генеральным подрядчиком, отвечает “за всё”. Соответственно основная нагрузка ложится именно на такого интегратора, он — единая точка входа для заказчика.
При реализации SOA-проекта каждый участник отвечает за свою строго ограниченную часть и по большому счету “не видит” других участников — они для него прозрачны. Конечно, важную роль здесь играет внедренец интеграционной платформы, который как раз и обеспечивает взаимодействие систем на уровне сервисов. Но за целостностью всего решения с точки зрения и бизнес-процесса, и прикладной, и системной архитектуры должен следить заказчик (как правило, ИТ-подразделение заказчика). То же и с точки зрения организации проекта — именно заказчик контролирует целостность всего проекта (или программы). Соответственно возникают дополнительные нагрузки на ИТ-службы заказчика, но вообще-то они не совсем “айтишные” — речь идет о бизнес-аналитике и проектном управлении.
PC Week: Какова ваша общая оценка востребованности SOA на российском ИТ-рынке со стороны заказчиков?
О. П.: На данный момент SOA — довольно новое веяние на российском рынке. В основном внимание к данной технологии и методологии проявляют компании, активно развивающиеся или выходящие на новый рынок, требующие быстрого изменения бизнес-процессов и соответственно информационных систем. Это примерно 10—15% от общего количества. Другие пока присматриваются, ждут реального результата от внедрения SOA-проектов и при положительном варианте развития событий будут готовы в течение последующей пары лет рассмотреть варианты SOA-проектов — таких, я полагаю, 30—40% от общего количества. Остальные, как правило крупные компании, достаточно долго присутствующие на рынке, пока не заинтересованы кардинально менять свой ИТ-ландшафт (а внедрение SOA — это именно кардинальное, революционное изменение), поскольку при их масштабах и разнообразии систем это потребует действительно крупных инвестиций, как денежных, так и ресурсных.
Другое ограничение, не дающее возможности быстрому распространению SOA, — это отсутствие экспертизы, опыта реализации подобных проектов у интеграторов и консалтинговых компаний. К сожалению, на рынке сейчас присутствует крайне малое количество компаний, реально имеющих опыт реализации SOA-проектов — их просто единицы.