Верифікація та валідація (Verification and Validation)
Last updated
Last updated
Верифікація: Доведене об'єктивними результатами дослідження підтвердження того, що певні вимоги були виконані. (ІSO 9000)
Валідація: Доведене об'єктивними результатами дослідження підтвердження того, що вимоги для очікуваного конкретного використання програми були виконані. (ІSO 9000)
Верифікація – це підтвердження шляхом подання об'єктивних доказів виконання даним робочим елементом встановлених вимог. (ГОСТ 56920)
Валідація демонструє, що робочий елемент може використовуватись користувачами для вирішення визначених ними завдань. (ГОСТ 56920)
Верифікація - це перевірки, які у процесі розробки програмного забезпечення відповіді питанням: “Чи правильно ми розробляємо продукт?”. Це зокрема. включає перевірку документації: requirements specification, design documents, database table design, ER diagrams, test cases, traceability matrix тощо. Верифікація гарантує, що ПЗ розробляється відповідно до стандартів та процесів організації, покладаючись на та статичні методи тестування (тобто без запуску ПЗ, але, наприклад, з unit/integration tests). Верифікація є превентивним підходом (Preventative approach).
Етап верифікації
Діючі лиця
Опис
На виході
Review бізнес / функціональних вимог
Команда розробки / клієнт для бізнес-вимог
Це необхідний крок не тільки для того, щоб переконатися, що вимоги зібрані та/або коректні, а й для того, щоб переконатися, чи вони здійснені.
Завершені вимоги, які готові до використання на наступному етапі – дизайні
Review дизайну
Команда розробки
Після створення дизайну команда розробників ретельно переглядає його, щоб переконатися, що функціональні вимоги можуть бути виконані за допомогою запропонованого дизайну.
Дизайн готовий до імплементації
Проходження коду (Code Walkthrough)
Окремий розробник
Написаний код перевіряється на наявність синтаксичних помилок. Це більш буденно і виконується індивідуальним розробником на основі коду, розробленого ним самим
Код готовий до unit testing
Перевірка коду (Code Inspection)
Команда розробки
Це вже формально. Фахівці в даній галузі та розробники перевіряють код, щоб переконатися, що він відповідає бізнес-цілям та функціональним цілям
Код готовий до тестування
Test Plan Review (внутрішньою командою QA)
QA команда
План тестування проходить внутрішню перевірку командою QA, щоб переконатися в його точності та повноті
Test plan готовий до передачі зовнішнім командам (Project Management, Business Analysis, development, Environment, client, etc.)
Test Plan Review (зовнішнє)
Project Manager, Business Analyst, і Developer
Формальний аналіз test plan, щоб переконатися, що графік та інші міркування команди QA відповідають іншим командам та всьому проекту
Підписаний або затверджений test plan, на якому ґрунтуватиметься діяльність із тестування
Test documentation review (Peer review)
Члени команди QA
Експертна перевірка – це коли члени команди перевіряють роботу один одного, щоб переконатися, що у самій документації немає помилок.
Документація із тестування готова до передачі зовнішнім командам
Test documentation final review
Business Analyst and development team.
A test documentation review щоб переконатися, що test cases охоплюють усі бізнес-умови та функціональні елементи системи
Тестова документація готова до виконання
Валідація - це процес оцінки кінцевого продукту, щоб перевірити, чи він відповідає потребам бізнесу та очікуванням клієнтів, тобто. відповідає питанням: “Чи правильний ми розробили продукт?”. Валідація є динамічним тестуванням, тобто. відбувається за допомогою виконання коду та прогону тестів на ньому (UAT/CAT, usability, все що завгодно). Валідація є реактивним підходом (Reactive approach).
Якщо спробувати навести дуже спрощений приклад, уявимо страву в ресторані. Верифікація включатиме перевірку технологічної карти, оцінку процесу приготування (температури, часу тощо). Протягом цього процесу можна буде бути впевненим, що страва вийде саме тим, яке замислювалося і в результаті формально ми його приготуємо. Валідація ж - це, по суті, спробувати страву, щоб переконатися, чи справді вийшло те, що очікував бізнес і клієнт.
Джерело:
Дод. матеріал: