> For the complete documentation index, see [llms.txt](https://swit-school.gitbook.io/qa-book/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://swit-school.gitbook.io/qa-book/testuvannya-igor/zagalni-osnovi-testuvannya/verifikaciya-ta-validaciya.md).

# Верифікація та валідація

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

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

<figure><img src="https://1453659619-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCJU6RN9sUUbpILgrNmIl%2Fuploads%2FqSVZRgSfc3jDwmvTgcqM%2F8c4e4f8bf96385b467c9ebdf50d218f2.jpg?alt=media&amp;token=a812cd4f-dd84-4663-9a5d-4cfd0643b4b4" alt=""><figcaption></figcaption></figure>

* Верифікація – це процес який включає в себе перевірку Plans, Requirement Specifications, Design Specifications, Code, Test Cases, Chek-Lists, etc.
* Верифікація завжди проходить без запуску коду.
* Верифікація використовує методи – reviews, walkthroughs, inspections, etc.
* Верифікація відповідає на питання “Чи робимо ми продукт правильно?”
* Верифікація допоможе визначити, чи є програмне забезпечення високої якості, але воно не гарантує, що система корисна. Перевірка пов’язана з тим, що система добре спроектована і безпомилкова.
* Верифікація відбувається до Валідації.

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

<figure><img src="https://1453659619-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCJU6RN9sUUbpILgrNmIl%2Fuploads%2FC93O7AGRe20ggnMrhfVa%2Fdepositphotos_50964867-stock-illustration-validation.jpg?alt=media&amp;token=d43265c8-a626-4713-9679-965187977bbf" alt=""><figcaption></figcaption></figure>

* Валідація завжди включає в себе запуск коду програми.
* Валідація використовує методи, такі як тестування Black Box, тестування White Box і нефункціональне тестування.
* Валідіція відповідає на питання “Чи робимо ми правильний продукт?”
* Валідація перевіряє, чи відповідає програмне забезпечення вимогам і очікуванням клієнта.
* Валідація може знайти помилки, які процес Верифікації не може зловити.
* Валідація відбувається після Верифікації.

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

<br>
