💡Верификация и валидация
Эти два понятия тесно связаны с процессами тестирования и обеспечения качества. К сожалению, их часто путают, хотя отличия между ними достаточно существенны.
Верификация (verification) — это Процесс оценки системы или её компонентов с целью определения удовлетворяют ли результаты текущего этапа разработки условиям, сформированным в начале этого этапа. Т.е. выполняются ли наши цели, сроки, задачи по разработке проекта, определенные в начале текущей фазы.
С помощью верификации Вы можете удостовериться в том, что продукт сделан «правильно»: придерживаясь необходимых методик, инструментов и стандартов.
Отличия на практике:
С помощью верификации Вы можете удостовериться в том, что продукт сделан «правильно»: придерживаясь необходимых методик, инструментов и стандартов.
Делаем ли мы продукт правильно?
Делаем ли мы правильный продукт?
Реализована ли вся функциональность?
Правильно ли реализована функциональность?
Производится разработчиками
Производится тестировщиками
Включает статический анализ - инспектирование кода, сравнение требований и т.п.
Включает динамический анализ - выполнение программы для сравнения её реальной работы с установленными требованиями
Основывается на объективной оценке соответствия реализованных функций
Субъективный процесс, включающий личную оценку качества ПО
Верификация обеспечивает проверку правильности выполнения заданных функций и соответствия программного обеспечения требованиям заказчика, а также заданным спецификациям.
Верификация - это процесс, направленный на контроль качества программного обеспечения и обнаружение в нем ошибок.
Какие задачи решает верификация?
Выявление дефектов (ошибок, недоработок, неполноты и пр.) различных компонентов программного обеспечения (требований, проектных решений, документации, программного кода), что позволяет устранять их и поставлять пользователям и заказчикам более правильное и надежное ПО;
Выявление наиболее критичных и наиболее подверженных ошибкам частей создаваемой или сопровождаемой программной системы;
Контроль и оценка качества программного обеспечения во всех его аспектах;
Предоставление всем заинтересованным лицам (руководителям, заказчикам, пользователям и пр.) информации о текущем состоянии проекта и характеристиках его результатов;
Предоставление руководству проекта и разработчикам информации для планирования дальнейших работ, а также для принятия решений о продолжении проекта, его прекращении или передаче результатов заказчику.
Last updated