Логіка кроків без конкретного коду. Мета — зловити галюцинації і логічні діри ДО того як писати реальний код. Будь-яка людина (не лише розробник) має зрозуміти що відбувається.
Один абзац: вхід → ключові кроки → вихід. Що робить система коли користувач запускає сценарій.
1. Отримуємо <вхід> від <джерело>
2. Перевіряємо що <умова>
2a. Якщо ні → повертаємо <error>
3. Робимо A якщо B, інакше C
4. Викликаємо <зовнішня система> щоб …
5. Зберігаємо <стан> у <storage>
6. Повертаємо <результат>
…
…
Без конкретного типу — суть. Що зберігаємо, чому.
Перелік ключових «функцій» (чорних боксів) які треба написати. Без сигнатур, лише призначення.
validate_input(x) → перевіряє що …fetch_external_data(id) → …compute_result(a, b) → …persist_state(state) → …Якщо у specification було non-goals — нагадати їх тут на рівні логіки.
Логічні діри, що не зрозуміло. Розв'язати перед A (Architecture).