Документация
О системе
Назначение
Приложение «ИТ-Стратегия МБ» предназначено для управления реализацией ИТ-стратегии Группы Московская биржа. Система позволяет вести учёт сегментов инвестирования, программ, инициатив и задач, а также визуализировать их в виде интерактивного графа зависимостей и временной шкалы (роадмапа).
Ключевые возможности: автоматический расчёт здоровья по принципу светофора (GREEN / YELLOW / RED), ручная оценка статуса с контролем актуальности, управление рисками, развилками решений, обзорные отчёты, импорт/экспорт Excel, интеграция с Jira.
Иерархия объектов
Статусы жизненного цикла
Метки объектов
Система здоровья
Каждый объект имеет два индикатора здоровья:
Итоговый (эффективный) статус = ручной статус (если установлен) или автоматическое здоровье. Светофор: GREEN (всё в порядке), YELLOW (предупреждения), RED (проблемы).
Работа с системой
Дашборд
Главная страница (/) показывает сводную информацию по всему портфелю:
- Общее количество сегментов, программ, инициатив, задач и связей
- Диаграммы распределения по статусам, меткам и здоровью
- Таблица здоровья сегментов с агрегированными показателями
- Элементы, требующие внимания (просроченные, с проблемами)
- Прогресс вех, открытые развилки, последние изменения
- Кнопка «Рассчитать здоровье» для пересчёта всех объектов
Поиск
Глобальный поиск доступен в боковой панели и по сочетанию клавиш ⌘K (macOS) или Ctrl+K (Windows/Linux).
- Поиск выполняется по всем типам объектов: сегменты, программы, инициативы, задачи
- Ищет по названию, описанию, ответственному, ключевому описанию, AS IS и целевому состоянию
- Результаты сгруппированы по типу объекта с индикаторами здоровья
- Клик по результату — переход на карточку объекта
- Кнопка графа (иконка) — переход на граф с выделением найденного узла
- Навигация клавиатурой: стрелки ↑↓ для выбора, Enter для перехода, Esc для закрытия
Страницы объектов
Каждый тип объекта имеет страницу списка и страницу детальной информации:
- Списки (
/segments,/programs,/initiatives) — таблица с фильтрацией и кнопкой создания - Карточка объекта — редактирование полей, описание «as is», целевое состояние, ограничения, матрица влияния, атрибуты
- Вкладки — связи, вопрос-ответ (Q&A), развилки, задачи/инициативы, вехи, риски, история изменений
- Здоровье — автоматический и ручной индикаторы, описание проблем, кнопка пересчёта
Граф зависимостей
Страница /graph — интерактивная визуализация всех объектов и связей на основе @xyflow/react.
- Фильтрация по типам объектов, статусам и сегментам
- Переход из поиска — найденный объект автоматически выделяется на графе
- Создание связей через кнопку «Связь» — выбор источника и цели
- Контекстное меню для быстрых действий (открыть, создать связь)
- Кнопка «Здоровье» — запуск расчёта, результат отображается цветом узла
- Автоматическая раскладка (dagre): горизонтальная или вертикальная (настраивается)
- Zoom, pan, легенда типов связей
Роадмап (таймлайн)
Страница /roadmap — временная шкала (Gantt chart) с квартальными и годовыми разделителями.
- Иерархический вид: сегмент → программа → инициатива → задача
- Стрелки зависимостей: красные сплошные — пререквизиты, зелёные пунктирные — влияния
- Вехи отображаются ромбами: красные — ожидающие, зелёные — завершённые
- Настройки: показ/скрытие дат, статуса, ответственного и связей
- Фильтрация по типам, статусам и сегментам
- Зум (Ctrl + колесо мыши) и горизонтальное панорамирование
Связи между объектами
Три типа связей между объектами любого уровня иерархии:
Связи можно создавать/удалять на странице объекта (вкладка «Связи»), через граф и при создании развилок. Связи поддерживают якоря для корректного отображения стрелок на таймлайне (начало/конец).
Вехи
Вехи (Milestones) привязаны к инициативам. Каждая веха имеет описание, дату и статус завершения. Управление вехами доступно на странице инициативы.
- Отображаются на роадмапе в виде ромбов — клик для переключения статуса
- Учитываются при расчёте здоровья (просроченные вехи = RED, отсутствие вех = RED)
- Влияют на расчёт прогресса инициативы (30% вес)
Развилки решений
Развилки (Decision Forks) — вопросы, требующие решения, привязанные к инициативам или задачам.
- Каждая развилка содержит варианты решений с возможностью пометить утверждённый вариант
- Статусы: Открыта, Решена, Отложена
- Развилки могут быть привязаны к связям — нерешённая развилка на зависимости даёт RED
- Открытые развилки дольше 14 дней подсвечиваются в системе внимания
Отчёты
Для сегментов, программ и инициатив доступны HTML-отчёты (кнопка «Отчёты»). Для сегментов и программ система поддерживает 5 типов отчётов, каждый из которых ориентирован на свою аудиторию:
Ключевые KPI с трендом, требующие внимания вопросы (RED-инициативы, просроченные вехи, блокирующие развилки с зависимостями), стратегическая трансформация, упрощённая дорожная карта, матрица влияния.
Резюме, изменения за 2 недели, проблемы и риски, открытые решения, зависимости, ближайшие вехи, дорожная карта, детальный расчёт здоровья.
Информация о сегменте/программе с целями (AS IS / Ограничения / Цель), связями, дорожной картой и вехами. Структура и матрица влияния.
Все доступные блоки отчёта.
Ручной выбор блоков для включения в отчёт.
Для инициатив доступны пресеты «План завершения», «Полный» и «Кастомный». Кнопку «План завершения» также можно найти в быстрой карточке объекта на графе (для сегментов, программ и инициатив).
Блок, отвечающий на вопрос «что нужно сделать, чтобы завершить этот объект»:
- Обзор — прогресс (задачи + вехи), незавершённые задачи по статусам, ожидающие вехи, открытые развилки, нереализованные пререквизиты, открытые риски
- Процесс выполнения — вертикальный таймлайн с топологической сортировкой по зависимостям (PREREQUISITE/SEQUENCE), включая транзитивные вышестоящие зависимости (до 5 уровней), вехи и развилки из связанных объектов
Для каждого пресета (кроме «Полный» и «Кастомный») можно настроить состав блоков — нажмите «Настроить» рядом с выбранным пресетом в модалке, или настройте глобально на странице /settings.
Доступные блоки отчёта:
- Ключевые KPI (с трендом здоровья за 2 недели)
- Требует внимания руководства (RED-инициативы, просроченные вехи, блокеры, открытые развилки с зависимостями)
- Резюме с KPI: статус, здоровье (авто + ручной), описание, актуальность
- Стратегическая трансформация (компактный AS IS → Ограничения → Цель)
- Стратегическое видение, дерево структуры, граф зависимостей
- Встроенные Gantt-диаграммы (полная и упрощённая — только программы)
- Детальный расчёт здоровья, матрица влияния
- Проблемы и риски, открытые решения, зависимости и блокеры
- Ближайшие вехи, изменения за 2 недели
- План завершения (обзор + процесс выполнения с зависимостями)
Импорт / Экспорт
На странице /settings доступен обмен данными через Excel:
- Экспорт — выгрузка всех данных в .xlsx (листы: сегменты, программы, инициативы, задачи, вехи, связи)
- Импорт — загрузка из .xlsx с upsert-логикой (существующие записи обновляются, новые создаются)
- После импорта отображается статистика (количество объектов по типам)
Jira-интеграция
Все основные сущности поддерживают поле Jira Key для привязки к задачам Jira. Подключение настраивается в /settings: URL, email, API-токен, включение/выключение.
Настройки
Страница /settings позволяет:
- Переключать тёмную/светлую тему
- Выбирать направление графа (горизонтальное / вертикальное)
- Настраивать состав блоков для каждого пресета отчётов: «Для руководства», «Для менеджеров», «Обзор (Overview)»
- Редактировать названия и описания типов связей
- Настраивать подключение к Jira (URL, email, API-токен)
- Экспортировать/импортировать данные (Excel)
Алгоритмы и особенности
Здоровье инициатив: автоматический расчёт
Система выполняет 26 проверок для каждой инициативы. Если хотя бы одна проверка уровня RED срабатывает — статус RED; если только YELLOW — YELLOW; иначе — GREEN.
Проверки RED (критические проблемы)
| Код | Описание |
|---|---|
| INVALID_DATES | Дата окончания раньше даты начала |
| OVERDUE_NOT_STARTED | Дата начала прошла, но статус Черновик/Запланировано |
| OVERDUE_NOT_COMPLETED | Срок завершения прошёл, но инициатива не закрыта |
| NO_MILESTONES | Не заведено ни одной вехи |
| MILESTONES_OVERDUE | Есть просроченные незавершённые вехи |
| PREREQUISITE_NOT_MET | Пререквизитная зависимость не завершена |
| FORK_CONDITION_UNRESOLVED | Связь зависит от нерешённой развилки (OPEN/DEFERRED) |
| FORK_OPTION_NOT_APPROVED | Вариант развилки на связи не утверждён |
| TASKS_OVERDUE | Есть просроченные незавершённые задачи |
| TASKS_NOT_STARTED | Задачи не начаты вовремя (дата старта прошла, статус Черновик/Запланировано) |
| HIGH_RISK_OPEN | Открытый риск высокой критичности |
| RISK_NO_DATE | Открытый риск без срока митигации |
| RISK_OVERDUE | Просрочен срок митигации риска |
| MANUAL_STATUS_STALE | Ручной статус не обновлялся более 21 дня |
Проверки YELLOW (предупреждения)
| Код | Описание |
|---|---|
| ON_HOLD | Инициатива приостановлена |
| START_APPROACHING | До старта менее 14 дней, статус — Запланировано |
| END_APPROACHING | До дедлайна менее 14 дней |
| NO_OWNER | Не назначен ответственный |
| NO_DATES | Не указаны даты начала или окончания |
| NO_TASKS | Нет дочерних задач |
| ALL_TASKS_DONE | Все задачи завершены, но инициатива не закрыта |
| OPEN_FORKS | Есть открытые развилки |
| ENABLES_NOT_MET | Влияющая (ENABLES) зависимость не завершена |
| MEDIUM_RISK_OPEN | Открытый риск средней критичности |
| RISK_APPROACHING | До закрытия риска менее 14 дней |
| MANUAL_STATUS_AGING | Ручной статус не обновлялся 14–21 день |
Здоровье программ и сегментов
Для программ и сегментов используется агрегация по наихудшему статусу дочерних элементов плюс собственные проверки.
Приоритеты: RED (3) > YELLOW (2) > GREEN (1)
Агрегация: worst = max(child health priorities)
Если есть дочерний элемент с RED → родитель получает CHILDREN_RED (RED)
Если есть дочерний элемент с YELLOW → родитель получает CHILDREN_YELLOW (YELLOW)
Собственные проверки программ/сегментов:
- INVALID_DATES — дата окончания раньше начала (RED)
- OVERDUE_NOT_STARTED — не начата вовремя (RED)
- OVERDUE_NOT_COMPLETED — просрочена (RED)
- NO_OWNER — нет ответственного (YELLOW)
- NO_DATES — нет дат (YELLOW)
- ON_HOLD — приостановлена (YELLOW)
- MANUAL_STATUS_STALE/AGING — устаревший ручной статус (RED/YELLOW)
Ручной статус и контроль актуальности
Ответственный может установить ручной статус (GREEN / YELLOW / RED) с описанием и списком проблем. Ручной статус имеет приоритет над автоматическим:
Система контролирует актуальность ручного статуса:
- 14+ дней без обновления → предупреждение (YELLOW: MANUAL_STATUS_AGING)
- 21+ дней без обновления → проблема (RED: MANUAL_STATUS_STALE)
Каскадный пересчёт здоровья
При изменении любого объекта здоровье автоматически пересчитывается вверх по иерархии (в фоновом режиме):
При каждом пересчёте создаётся снимок здоровья (HealthSnapshot) с кулдауном 1 час, что позволяет отслеживать динамику через график тренда.
Расчёт прогресса
Прогресс инициативы
Взвешенная формула: 70% задачи + 30% вехи.
taskProgress = completedTasks / totalTasks
milestoneProgress = passedMilestones / totalMilestones
progress = round((taskProgress × 0.7 + milestoneProgress × 0.3) × 100)
// Если нет задач — 100% от вех; нет вех — 100% от задач; нет ничего — 0%
Прогресс программы
Процент завершённых инициатив (по статусу COMPLETED).
Система внимания (Attention)
Система автоматически собирает элементы, требующие немедленного внимания. Используется на дашборде для приоритизации действий.
| Тип | Уровень | Условие |
|---|---|---|
| RED_HEALTH | RED | Эффективное здоровье = RED |
| OVERDUE | RED | Просрочен срок завершения |
| MANUAL_PROBLEM | RED | Ручная проблема с severity=RED и resolved=false |
| HIGH_RISK | RED | Открытый риск высокой критичности |
| OPEN_FORK | YELLOW | Развилка открыта более 14 дней |
Управление рисками
Каждая инициатива может содержать список рисков (хранятся в JSON). Каждый риск имеет:
- Описание — текст риска
- Критичность — Высокая, Средняя, Низкая
- Срок митигации — дата, к которой риск должен быть обработан
- Статус — Открыт, Митигация, Закрыт
Риски влияют на автоматическое здоровье: открытый HIGH-риск → RED, отсутствие/просрочка срока митигации → RED, открытый MEDIUM-риск → YELLOW, приближение срока → YELLOW.
Матрица влияния
Каждый объект может иметь матрицу влияния — таблица, оценивающая степень воздействия на различные направления:
| Направление | Столбцы |
|---|---|
| Инфраструктура | МБ, НКЦ, НРД |
| Процессы | МБ, НКЦ, НРД |
| ИТ-платформы | МБ, НКЦ, НРД |
Уровни: нет влияния, незначительное, значительное, новое/критическое. Отображается в виде heatmap на карточке объекта и в обзорном отчёте.