32 lines
1.8 KiB
Markdown
32 lines
1.8 KiB
Markdown
# Functional Requirements Rules
|
|
|
|
## Формат
|
|
- `FR.<номер>. <Название>`
|
|
- Нумерация инкрементальная внутри документа.
|
|
|
|
## Правила
|
|
- FR расширяют шаги сценария.
|
|
- FR не копируют шаги сценария без добавления новой информации.
|
|
- Для интеграционных шагов FR обязательны.
|
|
- Если в сценарии есть вызов внешнего API / сервиса / БД, нужен отдельный FR на интеграцию.
|
|
|
|
## FR для интеграционных шагов
|
|
Для интеграционного FR обязательно раскрывать:
|
|
- как формируется запрос;
|
|
- откуда берется каждый значимый атрибут запроса;
|
|
- какой downstream вызывается;
|
|
- какой ответ считается успешным;
|
|
- какие ответы и ситуации считаются бизнес-ошибкой;
|
|
- какие ситуации считаются технической ошибкой;
|
|
- как downstream-ответ маппится в контракт текущего слоя.
|
|
|
|
## FR для шагов доступа к БД
|
|
Если шаг читает или пишет БД, FR должен по возможности включать:
|
|
- таблицу или набор таблиц;
|
|
- логику фильтрации;
|
|
- логику сортировки;
|
|
- логику пагинации;
|
|
- пример SQL или близкий к рабочему псевдо-SQL.
|
|
|
|
Если СУБД и диалект не заданы, допускается сделать рабочее предположение и явно зафиксировать его.
|