UC--. <Краткое название сценария>
Назначение
Описывает пользовательский сценарий <краткое описание>. Связан с контекстом <context>.
Metadata
| Поле | Значение |
|---|---|
| ID | UC-<PREFIX>-<NNN> |
| Контекст | <context> (см. docs/06-services/<context>/) |
| Тип | основной / альтернативный / исключительный |
| Статус | draft / approved / deprecated |
Актор
| Поле | Значение |
|---|---|
| Роль | <Гость / Инвестор / Агент / Агентство / Девелопер / МенеджерПИН / СлужбаЗаботы / Администратор / System> |
| Permissions / scope | <permission list + scope: платформа/организация/группа проектов/проект> |
| Tenant | <TenantId = CompanyId или null для инвестора/гостя (ADR-0052)> |
| Record-level | <владелец/группа или не применяется> |
Предусловие
<условие 1>.<условие 2>.
Триггер
| Поле | Значение |
|---|---|
| Источник | UI button / API call / Schedule / Kafka event |
| Триггерящий элемент | <страница/feature/worker> |
Основной Поток
<шаг 1: что делает пользователь>.<шаг 2: что видит пользователь / что отправляет интерфейс>.<шаг 3: запрос к системе с моделью данных>.<шаг 4: система проверяет права и предусловия, применяет бизнес-правила сценария>.<шаг 5: система принимает доменное решение и меняет состояние (создаёт/обновляет сущность, выполняет переход статуса)>.<шаг 6: система сохраняет изменения и фиксирует факт — публикует доменное/интеграционное событие>.<шаг 7: система возвращает результат операции>.<шаг 8: пользователь видит обновлённый экран — новое состояние / подтверждение>.
Альтернативные Потоки
A1. <название альтернативы>
<шаг>.<шаг>.
Возвращается к основному потоку на шаг N или завершается.
A2. <название>
(аналогично).
Постусловие
<состояние системы после успешного выполнения>.<какие сущности появились/изменились/удалились>.
Возможные Ошибки
| Код | HTTP | Условие | Поведение клиента |
|---|---|---|---|
<CODE> | <status> | <когда> | <как клиент должен реагировать> |
Доменные События
| Событие | Когда поднимается | Subscribers |
|---|---|---|
<EventName> | <условие> | <list> |
Kafka Интеграционные События
| Событие | Topic | Когда публикуется | Consumers |
|---|---|---|---|
After<X>.v1 | pin.<area>.v1 | <условие> | <external services> |
Acceptance Criteria
| # | Критерий | Проверка |
|---|---|---|
| AC1 | <критерий> | <как тестировать> |
| AC2 | <критерий> | <как тестировать> |
Латентные / SLO-критерии (время ответа, доступность, throughput) здесь не допускаются — их место в README сервиса, секция «SLO».
Обратные ссылки
Автоссылки: где используется этот документ.
- Use Cases (1): UC-SEL-002. Шаринг подборки по ссылке (SharePopover + реферальная ссылка)
- scenarios (1): Кросс-сервисные сценарии PIN (OVR)
- algorithm-documentation-rules.md (1): Правила Документирования Алгоритма
- index.md (1): Шаблоны Документации
Связанные Документы
- API метод:
<file>. - Backend Command/Query:
<file>. - Domain entity:
<file>. - Frontend page/feature:
<file>. - State machine:
<file>(если применимо). - Runtime flow:
<file>(если применимо).
Префиксы Use Case ID (контексты PIN)
| Префикс | Контекст |
|---|---|
OVR | Overview / общесистемные и кросс-сервисные сценарии |
IDN | identity (авторизация, роли, permissions, scope) |
PRF | profile (персональные данные, документы, верификация) |
CHS | chessboard (проекты, здания, лоты, справочники) |
CTL | catalog (публичный каталог, лента, карточки, шахматка-витрина) |
PRC | invest-analytics (история цен, эконом-модель, доходность) |
RWD | rewards (вознаграждения, комиссионная политика) |
REF | referral (реферальные ссылки, привязка) |
CRM | crm (лиды, сделки, воронки, статистика) |
BKG | crm/booking (бронирование, программы покупки, оплата брони) |
FIX | crm/fixation (фиксация клиентов) |
OWN | investor-owner (объекты инвестора-собственника) |
NWS | news (посты, блоки, категории) |
PRM | promotion (пакеты продвижения, покупки, полиморфный таргет) |
FAV | favorites (избранное, заметки, слияние) |
SEL | selections (подборки, публичные ссылки, копии) |
ACT | user-activity (сессии, просмотры, действия) |
MSG | messenger (чаты, контакты, события чата) |
NTF | notifications (каналы, шаблоны) |
SUP | support (тикеты, арбитраж, база знаний) |
STA | dev-stats (статистика просмотров для застройщика, ClickHouse) |
User stories используют префиксы ролей: US-INV-* (инвестор), US-AGT-* (агент), US-DEV-* (девелопер),
US-MGR-* (менеджер ПИН) — реестр в docs/06-services/crm/use-cases/user-stories-deal.md.