Проектирование сервиса для подготовки мероприятий: ролевая модель, статусная модель, матрица уведомлений.
Дата мероприятия — единственный срок, который я за годы работы ни разу не двигал. Его нельзя сдвинуть на спринт и нельзя закрыть хотфиксом на следующей неделе: площадка снята, гости приглашены, артисты в контракте, за срыв прописан штраф. К конкретному часу конкретного дня должно быть готово всё.
Одно мероприятие — это параллельно звук и свет, монтаж сцены, декор, типографии с реквизитом, райдеры артистов, площадка, охрана, бар и кухня. Десятки подрядчиков, и отвечать приходится за каждого, включая тех, кто не отвечает за себя сам.
Несколько лет я работал в этой логике. Систему проектировал под процесс, который знаю изнутри, а не по описанию.
Спроектировать сервис, в котором команда готовит мероприятие: заводит проект, набирает участников, раздаёт задачи, отслеживает загрузку людей и статус подготовки.
Первый черновик дал 37 пользовательских историй сплошным списком. Без приоритетов, без группировки, с одним дублем. Оценить такой бэклог нельзя, разложить по релизам тоже.
| Модуль | Что закрывает |
|---|---|
| Event Management | Создание, редактирование, просмотр списка, архивирование мероприятия |
| People Management | Состав команды, добавление и удаление участников, смена исполнителей, ресурсная загрузка |
| Task Management | Поля задачи, действия, исполнители, дедлайны, канбан, фильтры, история изменений |
| Notification Center | Триггеры и адресаты уведомлений |
Модули можно отдавать в работу независимо. Event и Task Management дают работающий минимум, People Management и уведомления наращиваются следом.
| Роль | Ключевые права |
|---|---|
| Менеджер проекта | Полный доступ: мероприятие, состав, задачи, дедлайны, дашборды, загрузка всей команды |
| Стафф-менеджер | Всё в пределах своей команды, кроме удаления мероприятия. Видит ресурсную загрузку подчинённых |
| Старший исполнитель | Свои задачи плюс задачи младших коллег, смена их статусов |
| Исполнитель | Свои задачи, смена статуса кроме финального, канбан, сигнал «не успеваю» |
| Стейкхолдер | Только просмотр канбана и уведомления |
Перевод в Done доступен только менеджеру проекта, стафф-менеджеру или старшему исполнителю.
Решение выросло из практики. Декораторы говорят: сделаем. Спрашиваешь — объём большой, может, подключить ещё людей? Отвечают, что справятся. В день монтажа на площадку приезжает женщина с сыном-подростком, и оба в шоке от масштаба.
То же самое бывает с прокатом света и звука. То же с площадками, чьё локальное руководство обещает то, чего выдать не может. Всё это идёт по договорам, где за срыв предусмотрены штрафы.
Поэтому «сделаю» и «сделано» остаются словами исполнителя, а подтверждает тот, кто отвечает за результат.
У исполнителя есть отдельная возможность заранее сказать «не успеваю до дедлайна».
В творческой сфере умолчание и игнор — обычное дело. Человек тянет до последнего, потому что признаться тяжело, а ощущение такое, будто это нужно только тебе, а остальные делают одолжение.