Шлях 04Урок 2 / 10

Зберігайте простежуваність вимог під час зміни програмного забезпечення

Пов’язуйте результат для користувача з рішеннями, критеріями приймання, реалізацією та доказами. Оновлюйте зв’язки, коли припущення змінюються.

Практика10 хвПереглянуто

Видавець Як ми пишемо

Перевірте своє розумінняСпецифікація змінюється після підготовки архітектури й тестів. Що має відбутися?Виконайте вправу
Специфікація змінюється після підготовки архітектури й тестів. Що має відбутися?

Чого ви навчитеся

  • Писати спостережувану вимогу з явними межами.
  • Простежувати вимогу через зміну та її перевірки.
  • Виявляти подальші документи, на які впливає змінене припущення.

Опишіть поведінку, яку хтось може перевірити

«Створити сучасний експорт даних клієнтів» залишає важливі рішення відкритими. Запит не визначає користувачів, записів, полів або поведінки в разі відмови. Агент має або запитати, або зробити припущення. Незаписані припущення складно переглядати згодом.

Використайте вигадану вимогу з чіткою межею: автентифікований менеджер може експортувати дані активних клієнтів власної організації. Експорт містить ідентифікатор клієнта та відображуване ім’я. Він виключає контактні дані й архівні записи. Користувач без ролі менеджера не отримує експорт.

Усе ще потрібні рішення щодо формату, обсягу, часу відповіді та обробки відмов. Явно позначайте невідоме. Корисна специфікація виявляє невизначеність, а не приховує її у впевнених формулюваннях.

Відокремлюйте вимоги від вибору реалізації

Користувачу потрібен дозволений набір записів у придатному форматі. Запит до бази даних, бібліотека та структура endpoint — це вибір реалізації. Пов’язуйте їх із вимогою, не трактуючи кожен поточний вибір як постійну бізнес-потребу.

Записуйте важливе рішення з його контекстом, альтернативами та причиною. Наприклад, синхронний експорт може підходити для малих обсягів. Більший обсяг може потребувати фонової задачі та окремої перевірки авторизації завантаження.

За можливості зберігайте вимогу сталою, версіонуючи змінене рішення. Це допомагає рецензентам відрізняти іншу реалізацію від іншої обіцянки користувачам.

Створіть короткий ланцюг доказів

Використовуйте ідентифікатори, які залишаються зрозумілими під час перегляду. У цьому прикладі EXPORT-01 може позначати межу організації. Назва ілюстративна, це не обов’язкова система нумерації.

Зв’язокПриклад
ВимогаEXPORT-01: лише записи організації менеджера
Проєктне рішенняЗабезпечувати дотримання вимоги належності до організації на сервері, а не в браузері
РеалізаціяPR змінює запит і шлях авторизації
ПеревіркаЗапит до записів іншої організації відхилено
Докази випускуРезультат перевірки визначає прийняті commit і артефакт

Ланцюг має вказувати на справжні докази. Назва тесту з ідентифікатором вимоги не доводить, що його перевірка охоплює цю вимогу. Дослідіть тест і шлях продуктивного коду, який він виконує.

SSDF від NIST дає контекст для вимог і перевірки в безпечній розробці. Використовуйте простежуваність, щоб ці дії можна було перевірити, а не заради самої документації. Прочитайте фреймворк.

Перегляньте вплив зміненого припущення

Припустімо, бізнесу тепер потрібні архівні клієнти. Ця зміна впливає не лише на прапорець у запиті. Перевірте правила зберігання, авторизацію, очікуваний обсяг, пояснення користувачам і значення наявних звітів.

Позначте відповідні документи та перевірки для перегляду. Збережіть попереднє рішення, щоб оператор міг пояснити старіший випуск. Не переписуйте історію мовчки, щоб найновіший дизайн здавався неминучим.

Агент може допомогти знайти посилання та запропонувати оновлення. Відповідальні мають розв’язати суперечності вимог і прийняти змінену поведінку. Список файлів, що відповідають пошуку, — відправна точка, а не повне оцінювання впливу.

Зберігайте запис достатньо малим для використання

Записуйте рішення, що впливають на реалізацію, перевірку й експлуатацію. Не повторюйте ту саму вимогу в багатьох непов’язаних документах. Надавайте перевагу посиланням на одне підтримуване джерело.

Перед прийняттям зміни запитайте, чи рецензент може простежити її мету до фактичних доказів. Перед експлуатацією запитайте, чи відповідальний за сервіс може знайти відповідну межу та рішення про відновлення. Це практичні перевірки корисної простежуваності.

Виконайте вправу

Напишіть вимогу, за якою менеджер експортує дані активних клієнтів. Включіть дозволених користувачів, межу організації, поля, поведінку в разі відмови та вимірювану умову завершення. Пов’яжіть її з вигаданим тестом і випуском. Потім змініть вимогу, щоб включити архівних клієнтів, і перелічіть рішення, яких це стосується.

Завантажити робочий аркуш (Markdown)
Перевірте своє розуміння ↑

Продовжити навчання

Джерела та додаткові матеріали

Матеріали Taiga за темою

← Попередній урок: Поєднайте весь життєвий цикл програмного забезпечення