Перейти к основному содержанию

План внедрения StormBPMN Enterprise

Около 7 мин

План внедрения StormBPMN Enterprise

В этой статье описан полный план внедрения StormBPMN Enterprise на стороне заказчика: от закупки лицензий до продуктивного запуска. План верхнеуровневый — детали по каждому шагу находятся в соответствующих разделах документации.

Сводка проекта

StormBPMN Enterprise — корпоративная on-premise платформа для моделирования бизнес-процессов в BPMN 2.0. Полное описание возможностей и архитектуры — см. Схема архитектуры.

Документация описывает 4 уровня развёртывания (минимальная, базовая, корпоративная, полная). Рекомендация для полного внедрения — "Полная конфигурация" (11 компонентов). Детали — Системные требования.

Ориентировочные сроки

ФазаДлительностьПараллельно с
Фаза 0: Подготовка2-3 недели
Фаза 1: Инфраструктура1-2 недели
Фаза 2: Безопасность1-2 неделиФаза 3
Фаза 3: Мониторинг1 неделяФаза 2
Фаза 4: Бизнес-конфигурация1 неделя
Фаза 5: Интеграции (опционально)по запросу
Фаза 6: Бэкапы и DR1 неделяФаза 5
Фаза 7: Обучение от вендора + запуск~1 месяц
Фаза 8: Пост-запускongoing
Итого до продуктивного запуска~12-16 недель

Ключевые роли у заказчика

Важно

Без назначения этих ролей проект внедрения обречён на пробуксовку. Заказчик должен до старта проекта назначить конкретных людей и зафиксировать это приказом/распоряжением.

Обязательные роли

РольКто этоЗачем нуженБез него...
Владелец системы (бизнес)Руководитель уровня директора департамента / ЦФОПринимает решения о scope, приоритетах, бюджете. Отвечает за adoption. Устраняет организационные блокерыНет кворума на согласованиях, никто не двигает внутри организации
ИТ-владелец системыРуководитель ИТ-подразделения или назначенный тимлидПринимает технические решения (инфраструктура, интеграции, ИБ). Выделяет ресурсы ИТ-команды. Точка эскалации по техническим вопросамСерверы не выделяют, ИБ не согласовывает, сетевые доступы не открывают — проект стоит

Желательные роли

РольКто этоЗачем нужен
PM со стороны заказчикаВыделенный руководитель проектаКоординирует внутренние работы, трекает задачи на стороне заказчика
Администратор системыИнженер ИТ-отделаРеально руками разворачивает, настраивает, обновляет. Контактное лицо по эксплуатации
Администратор ИБСотрудник службы ИБСогласования, SIEM, аудит, доступы
Методолог / лид бизнес-аналитиковОпытный аналитикОпределяет методологию моделирования, обучает коллег, ведёт пилот
Champions (амбассадоры)2-3 активных пользователяЕвангелисты внутри организации, первая линия поддержки

Антипаттерны

  • "Владелец системы — это ИТ-директор, но он занят" — назначить заместителя с полномочиями
  • "Мы пока не определились, кто отвечает" — СТОП, не начинать проект
  • "У нас всё делает один админ" — риск bus factor = 1, требовать минимум двоих

Разделение зон ответственности

Команда Storm — поставщик лицензий и ПО. Основную работу по внедрению делает Заказчик. Команда Storm помогает консультациями и поддержкой.

Обозначения в таблицах:

  • Заказчик — полностью на стороне заказчика
  • Storm помогает — Заказчик делает, Команда Storm консультирует / отвечает на вопросы
  • Storm + Заказчик — совместная работа
  • Команда Storm — на стороне Storm

Фаза 0: Подготовка

ЗадачаКто
Назначить владельца и ИТ-владельца системыЗаказчик
Согласование с ИБ (заявки, матрицы доступов, все внутренние процедуры)Заказчик
Выделение серверных мощностейЗаказчик
Получение SSL-сертификатовЗаказчик
Резервирование DNS-имёнЗаказчик
Определение типа и количества лицензийStorm помогает
Предоставление лицензионного ключаКоманда Storm
Предоставление доступа к Docker-образам (registry token)Команда Storm
Предоставление документацииКоманда Storm

Фаза 1: Инфраструктура и установка

ЗадачаКто
Установка ОС, Docker, сетиЗаказчик
Перенос образа в корпоративный RegistryЗаказчик
Разворачивание всех компонентов (PostgreSQL, MinIO, Redis, Nginx и т.д.)Заказчик (по документации)
Запуск StormBPMN, первоначальная настройкаЗаказчик (по документации)
Активация лицензии (HAR — Команда Storm — ключ обратно)Storm + Заказчик
Помощь при проблемах с установкойStorm помогает

Фаза 2: Безопасность

ЗадачаКто
Разворачивание и настройка Keycloak / ADFSЗаказчик
Интеграция Keycloak с ADЗаказчик
Настройка OAuth2 ENV в StormBPMNЗаказчик (по документации)
Настройка безопасности (CORS, отключение simple auth и пр.)Заказчик (по документации)
Прохождение чек-листа ИБЗаказчик
Консультации по настройке OAuth2, Claims, truststoreStorm помогает

Фаза 3: Мониторинг и SIEM

ЗадачаКто
Разворачивание Prometheus + GrafanaЗаказчик
Настройка SIEM-интеграцииЗаказчик
Настройка алертовЗаказчик
Предоставление endpoint-ов метрик и health checksУже в продукте

Фаза 4: Бизнес-конфигурация

ЗадачаКто
Настройка админ-панели (команды, доступы, email)Заказчик (по документации)
Определение модели доступа к диаграммамЗаказчик
Консультации по best practicesStorm помогает

Фаза 5: Интеграции (опционально)

ЗадачаКто
Разработка скриптов синхронизации (оргструктура, архитектура, BPM)Заказчик
Документирование REST APIУже в документации
Консультации по работе с APIStorm помогает

Фаза 6: Бэкапы, DR

ЗадачаКто
Настройка бэкапов, DR, процедуры обновленияЗаказчик (по документации)
Публикация changelog-ов и информирование о breaking changesКоманда Storm

Фаза 7: Обучение и запуск

ЗадачаКто
Обучение пользователей (программа ~1 месяц)Команда Storm проводит
Назначить участников, обеспечить доступ к stagingЗаказчик
Подготовка внутренних инструкций (под свои процессы)Заказчик
Пилот с сопровождением вендораStorm + Заказчик
Продуктивный запуск, рассылка инструкций, внутренняя поддержкаЗаказчик
Content Hub (BPMN-курс) в продуктеУже в продукте

Фаза 8: Пост-запуск

ЗадачаКто
Текущая эксплуатация и обновленияЗаказчик
Техподдержка (SLA Enterprise: ответ 16ч)Команда Storm
Новые версии и фичиКоманда Storm

Сводка: scope Команды Storm

  1. Лицензии — предоставляет и активирует ключи
  2. Образы — предоставляет доступ к Docker registry
  3. Документация — поддерживает в актуальном состоянии
  4. Обучение — проводит обучение пользователей (~1 месяц)
  5. Техподдержка — отвечает на вопросы, помогает с проблемами (SLA Enterprise)
  6. Консультации — помогает с настройкой, интеграциями, методологией
  7. Обновления — выпускает новые версии с changelog

Всё остальное — ответственность Заказчика.


Фазы внедрения

Закупка ──► Фаза 0        ──► Фаза 1          ──► Фаза 2+3      ──► Фаза 4
лицензий    Подготовка         Инфраструктура      Безопасность       Бизнес-
            Согласования       Базовая установка    Мониторинг         конфигурация
                                                                           │
                                                    Фаза 5 ──► Фаза 6 ──► Фаза 7 ──► Фаза 8
                                                    Интеграции  Бэкапы/DR  Обучение    Пост-запуск
                                                    (опц.)                 Запуск

Закупка лицензий (до старта проекта)

Важно

Это первый шаг. Без лицензии и доступа к образам нет смысла начинать остальное.

#ЗадачаКтоДетали
L.1Определить тип лицензииStorm + ЗаказчикNamed или Concurrent — см. Лицензирование
L.2Определить количество лицензийStorm + ЗаказчикNamed: по числу пользователей + 1. Concurrent: по пиковой нагрузке + 1
L.3Согласовать и подписать договорStorm + ЗаказчикВключая контракт поддержки (Enterprise SLA)
L.4ОплатаЗаказчик
L.5Предоставить доступ к Docker registry (token)Команда Storm
L.6Предоставить документациюКоманда Storm
L.7Согласовать бюджет на серверные мощностиЗаказчикСм. Системные требования

Активация лицензионного ключа произойдёт позже (после установки, Фаза 1) — через механизм HAR-архива.


Фаза 0: Подготовка и согласования

Согласование с ИБ

Ответственный: Администратор ИБ заказчика + ИТ-владелец системы

#ЗадачаАртефакт
0.1Заявка на размещение нового ПО в корпоративной сетиЗаявка по форме ИБ
0.2Согласование архитектуры и компонентного составаСхема архитектуры
0.3Согласование сетевых портов и протоколовМатрица доступов из Системные требования
0.4Согласование метода аутентификации (Keycloak/ADFS/OAuth2)Безопасность — OAuth2
0.5Согласование хранения данных (PostgreSQL, MinIO)Карточка ИС в реестре ИБ
0.6Согласование интеграции с SIEM (Syslog)Безопасность — SIEM
0.7Проверка Docker-образов на уязвимости (Cosign-подпись)Отчёт сканирования
0.8Согласование отключения простой аутентификацииЧек-лист ИБ
0.9Согласование политики резервного копированияОбслуживание — Backup
0.10Согласование использования AI-функций (если планируется, отдельный проект)Оценка рисков ИБ
0.11Получение SSL-сертификатов (wildcard или per-host)Сертификаты + ключи

DNS и сертификаты

Зарезервировать DNS-имена:

DNS-имяНазначение
bpmn.company.ruОсновное приложение StormBPMN
auth.company.ruKeycloak (если отдельный)
s3.company.ruMinIO Console (опционально)
grafana.company.ruМониторинг (опционально)

Выбор среды развёртывания

ВариантПлюсыМинусы
Docker ComposeПростота, быстрый стартНет оркестрации, ограниченный HA
KubernetesМасштабирование, HA, разделение FRONT/BACKСложнее настройка
PodmanИмпортозамещение, rootlessМеньше экспертизы на рынке

Фаза 1: Инфраструктура и базовая установка

Цель: Развернуть все компоненты, запустить StormBPMN, активировать лицензию, провести smoke-тест.

Кто делает: Заказчик по документации, Команда Storm помогает при проблемах.

Документация:

Результат: приложение доступно по HTTPS, smoke-тест пройден (вход, создание диаграммы, S3, PlantUML, PDF, collaborative editing).


Фаза 2: Безопасность и интеграция с IdP

Цель: Настроить SSO (Keycloak/ADFS), отключить простую аутентификацию, закрыть чек-лист ИБ.

Кто делает: Заказчик, Команда Storm консультирует по OAuth2.

Документация: Безопасность — OAuth2, Keycloak, ADFS, Claims, CORS, custom SSL, чек-лист.

Результат: вход только через SSO, чек-лист ИБ из документации пройден.


Фаза 3: Мониторинг, логирование, SIEM

Цель: Настроить сбор метрик, алерты, аудит-логирование в SIEM.

Кто делает: Заказчик.

Документация:

Результат: метрики собираются, алерты срабатывают, аудит-события доходят до SIEM.


Фаза 4: Конфигурация бизнес-логики

Цель: Настроить команды, email, доступы, кастомное меню.

Кто делает: Заказчик по документации, Команда Storm консультирует по best practices.

Документация:

Результат: бизнес-настройки выполнены, чек-лист верификации из документации пройден.


Фаза 5: Интеграции (опционально)

Выполняется только по запросу Заказчика, если есть потребность в интеграции с внешними системами.

Кто делает: Заказчик разрабатывает, Команда Storm консультирует по API.

Документация:


Фаза 6: Бэкапы, DR, обновления

Цель: Настроить резервное копирование, протестировать восстановление, определить RPO/RTO, освоить процедуру обновления версий.

Кто делает: Заказчик по документации.

Документация:

Результат: бэкапы автоматизированы, restore протестирован, DR-процедуры документированы.


Фаза 7: Обучение и запуск

Обучение от вендора (проводит Команда Storm)

Длительность: ~1 месяц. Обучение проводит команда StormBPMN. Формат, расписание и программа согласуются отдельно.

Ориентировочная программа:

БлокАудиторияФормат
Базовое моделирование BPMNВсе пользователиВебинар / workshop
Реестр процессов, согласование, регламентыАналитикиWorkshop
Архитектурные элементы и оргструктураАрхитекторыWorkshop
Collaborative editing, building blocksПродвинутые пользователиWorkshop
REST API и интеграцииРазработчики заказчикаWorkshop
Администрирование и эксплуатацияАдмины, ops-инженерыWorkshop

Дополнительно: BPMN-курс в Content Hub (встроен в продукт, самообучение).

Что должен подготовить заказчик

  • Назначить участников обучения по каждому блоку
  • Обеспечить доступ к staging-среде для практики
  • Выделить внутренних Champions/амбассадоров (2-3 человека)
  • Подготовить внутренние инструкции (под свои процессы, оргструктуру)

Пилотный запуск

ЗадачаДлительность
Выбрать пилотную группу (10-20 пользователей)
Пилотная эксплуатация с сопровождением вендора2-3 недели
Собрать обратную связь, исправить проблемы2-3 дня

Продуктивный запуск

  • Массовая миграция пользователей (через SSO — автоматически при входе)
  • Рассылка инструкции всем пользователям
  • Организовать внутренний канал поддержки (первая линия)
  • Мониторинг adoption-метрик (DAU, кол-во диаграмм)

Go/No-Go критерии

  • Все компоненты развёрнуты и работают (smoke-тест пройден)
  • SSO интегрирован и протестирован
  • SIEM-логирование работает и согласовано с ИБ
  • Мониторинг настроен, алерты срабатывают
  • Бэкапы настроены, восстановление протестировано
  • Лицензия активирована
  • Пилотная группа провела тестирование без критичных багов
  • Обучающие материалы подготовлены
  • DR-процедуры документированы и протестированы
  • Контакт поддержки StormBPMN подтверждён

Фаза 8: Пост-запуск

Текущее сопровождение (ответственность заказчика)

ЗадачаЧастота
Обновление версий StormBPMN (по changelog)По мере выхода
Ротация SSL-сертификатовДо истечения
Тестовый restore из бэкапаЕжемесячно
Ревью SIEM-логовЕженедельно
Мониторинг использования лицензийЕжемесячно
Обновление KeycloakПо мере выхода патчей

Выделение мощностей

Минимальные и рекомендуемые требования — см. Системные требования.

Сводка: 16-24 vCPU, 20-34 GB RAM, 270-420 GB SSD для полной конфигурации.

Варианты размещения

ВариантОписаниеКогда
Один сервер24 vCPU, 32 GB, 500 GB SSDДо 100 пользователей
Два сервера (App + DB)App: 16/16 GB. DB: 8/16 GB, 500 GB100-200 пользователей
Kubernetes кластер3+ ноды, auto-scaling200+ пользователей

Среды

СредаНазначениеРесурсы
StagingОбкатка обновлений, тестирование интеграций~50% от прода
ProductionОсновная работа100%

Рекомендация

Обязательно иметь staging-среду для тестирования обновлений перед продакшн.


Команда проекта и RACI

Роли на стороне заказчика

РольОписаниеКол-во
PM проектаКоординация, сроки, риски1
Системный администраторСерверы, Docker, сеть1-2
Администратор ИББезопасность, SIEM, доступы1
DevOps-инженерCI/CD, мониторинг, автоматизация1
Бизнес-аналитик (лид)Методология, обучение, пилот1
Разработчик интеграцийREST API, скрипты синхронизации1
Команда StormЛицензия, поддержка, консультации, обучениеVendor

RACI-матрица

ЗадачаPMSysAdminИБDevOpsBADevVendor
Согласование с ИБACRIIIC
Выделение серверовARICIIC
Установка инфраструктурыIRIRIIC
Настройка SSOIRACIIC
Настройка SIEMICRCIIC
Настройка мониторингаIIIRIIC
Бизнес-конфигурацияIIIIRIC
Интеграции (API)IIIICRC
Обучение пользователейIIIICIR
Пилот и запускACCCRCC
Бэкапы и DRIRIRIIC

Риски и митигации

#РискВероят.ВлияниеМитигация
1Задержка согласования с ИБВысокаяВысокоеПривлечь ИБ с первого дня, начать до закупки серверов
2Несовместимость с корпоративным ADСредняяВысокоеKeycloak как прослойка, тест на staging
3Нехватка серверных ресурсовНизкаяСреднееЗапас 30%, мониторинг с первого дня
4Проблемы при обновлении версийСредняяВысокоеStaging-среда, бэкап перед каждым обновлением
5Низкое adoption пользователямиСредняяВысокоеПилот, обучение, Champions, Content Hub
6Потеря файлов (сбой MinIO)НизкаяКритическоеРегулярные бэкапы, мониторинг диска
7Утечка JWT-секретаНизкаяКритическое64+ символов, ENV не в UI, ротация
8Блокировка лицензий (expiration)НизкаяКритическоеМониторинг сроков, заранее обновлять ключ
9Требование импортозамещения (Docker — Podman)НизкаяСреднееПоддержка Podman/CRI-O подтверждена

Критерии приёмки

Система считается внедрённой, когда выполнен результат каждой фазы и пройдены Go/No-Go критерии перед продуктивным запуском.