Skip to content
PПромтбук
RUEN
04Архитектура

Architecture Decision Record (ADR)

Зафиксировать архитектурное решение: контекст, варианты, выбор и trade-offs.

Напиши ADR для решения: {{decision}}.

Шаблон

# ADR-NNN: [короткое название]

**Дата:** YYYY-MM-DD
**Статус:** Proposed | Accepted | Superseded by ADR-XXX | Deprecated
**Авторы:** ...

## Контекст

Опиши проблему которую решаем. Без вариантов решения.

- Какие требования?
- Какие ограничения (бюджет, время, навыки, существующая система)?
- Какие предположения?
- Какие риски в воздухе?

3-5 абзацев.

## Варианты

Рассмотри 2-4 варианта. Для каждого:

### Вариант A: [название]
- **Описание:** что это
- **Плюсы:**
  - ...
  - ...
- **Минусы:**
  - ...
  - ...
- **Стоимость:** время / деньги / поддержка
- **Риски:** что может пойти не так

### Вариант B: ...

### Вариант C: ...

## Решение

Мы выбрали **Вариант X**.

**Почему именно этот:**
- ...
- ...

**Что мы СОЗНАТЕЛЬНО приняли:**
- Минус 1 — мы можем с этим жить, потому что ...
- Минус 2 — будем митигировать тем что ...

## Последствия

### Положительные
- ...

### Отрицательные
- ...

### Что становится труднее
- ...

### Что становится легче
- ...

## Ревизия

Когда стоит пересмотреть это решение:
- Если [условие 1]
- Если [условие 2]

## Связанные ADR
- ADR-XX: ...

## Открытые вопросы
- ...

Принципы хорошего ADR

  1. Контекст важнее решения. Через год важно понять ПОЧЕМУ, а не ЧТО.
  2. Покажи отвергнутые варианты. Без них не понятно почему выбран этот.
  3. Назови минусы выбранного. Решений без минусов не бывает. Если их нет — ты их не разглядел.
  4. Дата + автор обязательны. Через год: "что мы знали в этот момент?"
  5. Не редактируй после принятия. Если решение изменилось — новый ADR со ссылкой "supersedes XX".

Анти-паттерны

  • "Мы выбрали X потому что X лучше" — без сравнения
  • Только плюсы выбранного варианта
  • Контекст одной строкой
  • ADR на изменения внутри модуля (это не архитектурное решение)
К подразделу «Архитектура»
Похожие промты