stringtranslate.com

Проверка программного обеспечения

Верификация программного обеспечения — это дисциплина программной инженерии , языков программирования и теории вычислений , целью которой является обеспечение соответствия программного обеспечения ожидаемым требованиям.

Широкий охват и классификация

Широкое определение верификации связывает ее с тестированием программного обеспечения . В этом случае существуют два основных подхода к верификации:

В системе классификации вычислений ACM темы верификации программного обеспечения отображаются в разделе «Программное обеспечение и его разработка» в разделе «Создание программного обеспечения», тогда как верификация программ также отображается в разделе «Теория вычислений» в разделах «Семантика и рассуждение», «Рассуждение программ».

Динамическая проверка (тестирование, экспериментирование)

Динамическая проверка выполняется во время выполнения программного обеспечения и динамически проверяет его поведение; она обычно известна как фаза тестирования . Проверка — это процесс обзора. В зависимости от области применения тестов мы можем разделить их на три семейства:

Целью динамической проверки программного обеспечения является поиск ошибок, вносимых действием (например, наличием медицинского программного обеспечения для анализа биохимических данных) или повторяющимся выполнением одного или нескольких действий (например, стресс-теста для веб-сервера, т. е. проверки того, является ли текущий продукт действия таким же правильным, как и в начале действия).

Статическая проверка (анализ)

Статическая верификация — это процесс проверки соответствия программного обеспечения требованиям путем проверки кода перед его запуском. Например:

Проверка анализом - Метод проверки анализом применяется к проверке исследованием, математическими расчетами, логической оценкой и расчетами с использованием классических методов учебников или общепринятых компьютерных методов общего пользования. Анализ включает выборку и сопоставление измеренных данных и наблюдаемых результатов испытаний с рассчитанными ожидаемыми значениями для установления соответствия требованиям.

Узкая сфера применения

Если определить ее более строго, то верификация эквивалентна только статическому тестированию и предназначена для применения к артефактам. А валидация (всего программного продукта) эквивалентна динамическому тестированию и предназначена для применения к работающему программному продукту (не к его артефактам, за исключением требований). Обратите внимание, что валидация требований может выполняться статически и динамически (см. валидация артефактов ).

Сравнение с проверкой

Верификацию программного обеспечения часто путают с валидацией программного обеспечения. Разница между верификацией и валидацией :

Смотрите также

Ссылки