Национальный банк РТ в Казани, представляющий в Татарстане Центробанк РФ, в течение нескольких лет активно использует программный комплекс собственной разработки РАБИС-1 («Региональная автоматизированная банковская информационная система»). Как всякая «живая» система, РАБИС-1 постоянно развивается и совершенствуется. В данном случае это развитие организовано довольно сложно: с мест, из филиалов и отделений банка, заявки и требования на модификацию и доработки присылаются в центр разработки в Казани (еще один центр ответственности по модификации системы находится в Хабаровске). Согласует заявки и требования Департамент информационных систем (ДИС) Банка России в Москве. Непосредственно разработкой (написанием программного кода) занимаются специалисты московской компании «Технос-К», подрядчика банка, а тестирование этого кода проводится в Казани. Кроме того, казанский центр управляет частотой внесения изменений и сроками обновления версий системы.

Заказчик: Национальный банк Республики Татарстан Банка России, Казань

Партнер: «Аплана» (www.aplana.ru)

Задача: Постановка процессов разработки и сопровождения автоматизированной банковской системы для отделения ЦБ РФ в Казани

Решение: Создание системы АСС ТПК РАБИС-1

Предпосылки и цели проекта

Как известно, цикл разработки состоит из нескольких фаз: вначале формируются требования к приложению, затем проводится их анализ, потом проектирование. Далее идет собственно кодирование и, наконец, тестирование. До реализации проекта, о котором пойдет речь, запросы с мест на модификацию банковской системы высылались всем участникам процесса почтой. Если у кого-то возникали замечания, они так же почтой отсылались подразделению, сформировавшему данные требования. Таким образом, согласование заявки на разработку могло длиться сколь угодно долго. А если учесть, что заявки и требования поступали от различных подразделений банка регулярно, можно представить, насколько затянутым и непростым был процесс их реализации. В итоге и возникла задача автоматизации процесса обновления и сопровождения модульной банковской системы РАБИС-1.

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

В проекте банк планировал решить несколько задач. Первая из них — повысить качество процесса сборки системы, чего предполагалось достичь за счет структуризации потоков разработки, эффективного использования функциональных возможностей ПО IBM Rational ClearCase версии 2003.06.15 и организации централизованного стенда сборки. Вторая задача — сократить время сборки, систематизировав, а затем автоматизировав процесс на базе пакета сборочных скриптов, работающих на централизованном стенде и формирующих хранилище релизов. Чтобы автоматизировать процесс тестирования, необходимо было организовать хранилище версий, куда помещались бы результаты сборки очередного релиза. Безопасность каждой новой модификации РАБИС-1 планировалось обеспечивать за счет регламентирования самого процесса, а также за счет политики доступа к артефактам сборки на базе возможностей инструментария IBM Rational. Третья задача была связана с тем, что руководство банка хотело иметь в своем распоряжении оперативную информацию о процессе и результатах создания модификаций. И наконец, еще одна (и очень непростая) задача проекта — добиться снижения затрат на получение объекта тестирования и сократить время тестирования.

Реализация

Созданный специалистами компании «Аплана» продукт называется «Автоматизированная система сопровождения типового программного комплекса РАБИС-1» (АСС ТПК РАБИС-1). Система представляет собой набор процедур плюс инструментарий.

По словам руководителя проекта со стороны компании «Аплана», технического консультанта по продуктам IBM Rational Владимира Амелина, система сопровождения состоит из нескольких подсистем, базирующихся на инструментарии IBM Rational. Активно используются такие приложения семейства Rational, как ClearCase (версионный контроль), ClearQuest (управление изменениями), Rose (средство моделирования), Test Manager (управление тестированием), SoDA (генерация документов) и RequisitePro (управление требованиями).

Собственно, ПО IBM Rational ClearCase как раз и предназначено для того, чтобы разработчики могли наладить эффективный контроль версий артефактов проекта: документов, исходных текстов, моделей, репозиториев, конфигурационных файлов и т. д. В частности, с помощью ClearCase можно организовать версионный контроль не только отдельных файлов различных типов и директорий, но и целых рабочих пространств с их окружением.

«Одним из основных кирпичиков нашей автоматизированной системы сопровождения стала технология репликации данных MultiSite, так как система распределена географически, — поясняет Владимир Амелин. — Центральный сайт находится в казанском центре разработки по РАБИС-1, который выступает как Опорный объект информатизации (ООИ). Плюс к тому существует еще три сайта, примерно равные по значимости. Последний, принадлежащий хабаровскому Центру опережающего тестирования (ЦОТ), вошел в систему сопровождения как отдельный сайт в 2007 г. Таким образом, АСС распределена сейчас по четырем сайтам, но пользуются ею учреждения банка по всей России — от Москвы до Хабаровска. Это так называемые департаменты полевых учреждений, опорные пункты тестирования в регионах, — они могут через Web-интерфейс вводить свои требования и заявки на разработку непосредственно на казанский сайт».

Со всех сайтов организован доступ к единому набору репозиториев, где хранятся модели, тесты, требования. Например, компания «Технос-К» с помощью подсистемы управления требованиями структурирует требования по местам их использования, по уровням сложности, определяет связи между ними (проводит трассировку), затем вводит в систему сопровождения на своем сайте. Остальные участники процесса разработки видят структурированные требования и могут снабдить их своими комментариями. При этом RequisitePro помогает синхронизировать изменения, выявить возникающие в процессе обсуждения пересечения.

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

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

Немного о системе

Сам проект создания АСС ТПК РАБИС-1 ведет свое начало с 2005 г. С тех пор каждый год — это, по существу, новый этап проекта. Изменения в системе во многом связаны с добавлением новых сайтов АСС, использованием АСС для сопровождения смежных или аналогичных программных комплексов или перераспределением ответственности между участниками развития системы РАБИС-1. Соответственно все это требует перенастройки, в том числе прав доступа к репозиториям, схемы репликации, а также системы версионного контроля, где хранятся требования, модели, тесты, документация. Кроме того, пришлось вносить изменения и в репозиторий с утилитами, скриптами и другими артефактами — всем, что касается разработки и поддержки АСС. Модификация системы потребовалась при создании и присоединении к АСС ТПК РАБИС-1 нового сайта хабаровского центра в 2007 г.

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

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

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

Работать стало удобнее

Автоматизированная система сопровождения РАБИС-1, как и сама банковская система, находится в постоянном развитии. Тем не менее уже сейчас вполне уместно говорить о том, какие удобства с ее внедрением получили участники процесса модификации РАБИС-1.

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

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

Из общих итогов проекта специалисты «Аплана» отмечают следующее: реализована возможность реплицирования репозиториев подсистем с применением MultiSite; расширены возможности интеграции подсистемы управления запросами на изменения с остальными подсистемами. В ходе проекта был проведен реинжиниринг заданий к типовому программному комплексу РАБИС-1 в объеме подсистемы проведения электронных расчетов и наполнения репозитория требований, существующая система обработки запросов ТПК РАБИС-1 интегрирована с подсистемой управления запросами на изменения. И наконец, организовано централизованное хранение и коллективное использование артефактов в подсистеме управления требованиями с учетом распределения обязанностей между ДИС Банка России и разработчиком — компанией «Технос-К».

«Подобную систему можно создавать только на заказ, — комментирует Владимир Амелин, — на рынке есть лишь соответствующий инструментарий». Тем не менее в компании «Аплана» есть намерение сделать код системы сопровождения более абстрактным и универсальным, чтобы не разрабатывать аналогичные продукты с нуля, а воспользоваться набором настроек под специфику каждого конкретного проекта.