Неформальные требования
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
- Host создаёт сессию в боте → получает код.
- Гости
/join CODE.
- Host стартует
dice_board.
- Игроки ходят через inline-кнопки; бот шлёт обновлённые фото поля.
Сценарий B — только веб
- Host открывает сайт → «Создать комнату».
- Гости вводят код на
/join.
- Игра в браузере: клик по клетке, WebSocket-обновления.
Сценарий C — гибрид (основной)
- Host создаёт сессию на вебе, шлёт код в TG-группу.
- Часть игроков в боте, часть на сайте.
- Один зарегистрированный игрок открывает оба клиента — видит зеркало, управляет с последнего активного.
- Ходы синхронизируются на все каналы < 1 с.
Сценарий D — смена игры
- Партия
dice_board завершена.
- Host в лобби выбирает другую игру (Phase 3+).
- Тот же код, те же участники.
Приоритизация (MoSCoW)
| Must |
Should |
Could |
Won't (v1) |
| Сессии, код, join |
Регистрация, история |
Spectator mode |
VK интеграция |
| TG + веб sync |
Telegram Login |
Рейтинги |
Нативные apps |
| dice_board |
Привязка TG |
Турниры |
Монетизация |
| Картинки в TG |
|
|
|