Разработка системы «Альфа Бизнес Онлайн» на FLEXTERA для Альфа банка
Содержание 1.Система АЛБО 2.Архитектура АЛБО 3.Процесс развития АЛБО 4.Жизненный цикл релиза 5.Организация работ по разработке 6.Сборка приложения 7.Параллельная разработка
Система АЛБО АЛБО – система дистанционного банковского обслуживания для юридических лиц «Альфа Бизнес Онлайн» Внедрена в промышленную эксплуатацию в июне 2012 года Обслуживает ~3000 клиентов (рассчитана на клиентов) Бэк-офис: АБС Equation Системное ПО: IBM WAS, Oracle Работает на кластере из 2 железных серверов
Система АЛБО Содержит функциональность: –Рублевые платежи –Реестры платежей –Рублевые и валютные выписки –Валютные переводы* –Валютная конвертация* –Письма –Дэшборды – композитные страницы с быстрым доступом к любым операциям и информации * функциональность, находящаяся на завершающей стадии приемки
Система АЛБО
Шлюзы к внешним системам (облачная бухгалтерия, АКОЛ, мобильный банк) webclient Архитектура АЛБО webclient web browser adminws auditws corews refws reportws versionws timer db dbdb Фасад сотрудникаФасад клиента METADATA Рублёвые ПП db Бизнес модулиЯДРО (АЛБО) Рублёвые выписки db ЯДРО (FLEXTERA) webclient METADATA Валютные ПП db Конвертация Корреспонденция Справочники db Уведомления db Администрирован ие db Очередь запросов Шлюз к MQ db интеграционные шлюзы Шлюз к внешней системе
Процесс развития АЛБО Тестирование релиза Х в банке Тестирование патча Х в банке Разработка релиза Х Change requests Feature Requests Change requests Feature Requests Bug Fix Change requests Feature Requests Change requests Feature Requests Разработка релиза Х+1
Жизненный цикл релиза Аналитика и проектирование –Подготовка Vision –Подготовка BRD –Подготовка FSD –Подготовка имплементационного дизайна –Подготовка ОТАР Разработка –Разработка задач в отдельных ветках –Слияние всех задач в релизную ветку –Стабилизация Тестирование –Тестирование нового функционала –Регрессионное тестирование –Нагрузочное тестирование
Организация работ по разработке БД Oracle. Несколько БД серверов на команду. Сервер приложений IBM WAS. Развёрнут локально у каждого разработчика. Репозиторий кода SVN. Разработка несколькими подкомандами в отдельных ветках. Сборка - Apache Maven. На отдельном стенде Nexus репозиторий с библиотеками Flextera.
Сборка приложения Сборка автоматически на отдельном стенде с помощью TeamCity Checkout проекта с SVN Запуск юнит тестов Изменение версии проекта, commit изменений Формирование тега Сборка проекта по тегу Копирование сборки на тестовые стенды Отправка нотификации на команду о результате сборки
Параллельная разработка Цель: внедрять большее количество функционала за то же время без потери качества Решение: выполнять доработку АЛБО несколькими командами параллельно Процесс: –Задача декомпозируется на затрагиваемые модули –Каждый модуль может разрабатывать и тестировать отдельная команда –Главный интегратор собирает общий релиз и проводит регрессионное и нагрузочное тестирование