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

Неформальные требования

User Stories

Сессии и лобби

ID User Story
US-01 Как ведущий, я хочу создать сессию с кодом, чтобы скинуть его друзьям в Telegram-чат.
US-02 Как гость, я хочу войти по коду без регистрации, чтобы начать играть за 30 секунд.
US-03 Как host, я хочу видеть список подключённых (веб/TG), чтобы понимать, кто готов.
US-04 Как host, я хочу выбрать игру из каталога, не создавая новую комнату.
US-05 Как host, я хочу сменить игру после окончания, оставаясь в той же сессии.

Кросс-клиент

ID User Story
US-06 Как игрок, я хочу играть из Telegram с картинкой поля и кнопками.
US-07 Как игрок, я хочу играть в браузере с интерактивным полем 6×6.
US-08 Как зарегистрированный пользователь, я хочу открыть веб на ноутбуке и TG на телефоне и видеть одно состояние игры.
US-09 Как игрок, я хочу, чтобы ход с TG мгновенно отображался на вебе у других участников.

Аккаунт и история

ID User Story
US-10 Как постоянный игрок, я хочу зарегистрироваться по email, чтобы сохранять историю.
US-11 Как пользователь, я хочу привязать Telegram к аккаунту для единого профиля.
US-12 Как пользователь, я хочу просмотреть прошлые партии dice_board с итогом.

Игра dice_board

ID User Story
US-13 Как игрок, я хочу бросить 2 кубика и выбрать клетку из двух вариантов.
US-14 Как игрок, я хочу снять фишку соперника, если выбрал занятую им клетку.
US-15 Как игрок, я хочу получить доп. бросок, если выпал дубль на кубиках (d1 = d2).
US-16 Как игрок, я хочу увидеть победу при 3 в ряд на обоих клиентах.

Job Stories

Гость в TG: Когда друг кидает код в чат, я хочу нажать /join и сразу видеть поле, чтобы не читать длинные правила.

Host: Когда вечеринка затянулась, я хочу переключить игру в той же комнате, чтобы не собирать всех заново.

Registered: Когда играю регулярно, я хочу один логин на веб и TG, чтобы статистика не терялась.

Сценарии использования

Сценарий A — только Telegram

  1. Host создаёт сессию в боте → получает код.
  2. Гости /join CODE.
  3. Host стартует dice_board.
  4. Игроки ходят через inline-кнопки; бот шлёт обновлённые фото поля.

Сценарий B — только веб

  1. Host открывает сайт → «Создать комнату».
  2. Гости вводят код на /join.
  3. Игра в браузере: клик по клетке, WebSocket-обновления.

Сценарий C — гибрид (основной)

  1. Host создаёт сессию на вебе, шлёт код в TG-группу.
  2. Часть игроков в боте, часть на сайте.
  3. Один зарегистрированный игрок открывает оба клиента — видит зеркало, управляет с последнего активного.
  4. Ходы синхронизируются на все каналы < 1 с.

Сценарий D — смена игры

  1. Партия dice_board завершена.
  2. Host в лобби выбирает другую игру (Phase 3+).
  3. Тот же код, те же участники.

Приоритизация (MoSCoW)

Must Should Could Won't (v1)
Сессии, код, join Регистрация, история Spectator mode VK интеграция
TG + веб sync Telegram Login Рейтинги Нативные apps
dice_board Привязка TG Турниры Монетизация
Картинки в TG