6️⃣Верифікація та валідація

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

Верифікація (Verification) – це статична практика перевірки документів, дизайну, архітектури, коду, тощо

  • Верифікація – це процес який включає в себе перевірку Plans, Requirement Specifications, Design Specifications, Code, Test Cases, Chek-Lists, etc.

  • Верифікація завжди проходить без запуску коду.

  • Верифікація використовує методи – reviews, walkthroughs, inspections, etc.

  • Верифікація відповідає на питання “Чи робимо ми продукт правильно?”

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

  • Верифікація відбувається до Валідації.

Валідація (validation) – це процес оцінки кінцевого продукту, необхідно перевірити, чи відповідає програмне забезпечення очікуванням і вимогам клієнта. Це динамічний механізм перевірки та тестування фактичного продукту.

  • Валідація завжди включає в себе запуск коду програми.

  • Валідація використовує методи, такі як тестування Black Box, тестування White Box і нефункціональне тестування.

  • Валідіція відповідає на питання “Чи робимо ми правильний продукт?”

  • Валідація перевіряє, чи відповідає програмне забезпечення вимогам і очікуванням клієнта.

  • Валідація може знайти помилки, які процес Верифікації не може зловити.

  • Валідація відбувається після Верифікації.

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

Last updated