<style>.lazy{display:none}</style>V-модель в тестировании программного обеспечения

V-модель в тестировании программного обеспечения

Содержание:

V-модель

V-модель – это высокодисциплинированная модель SDLC, в которой параллельно с каждым этапом разработки предусмотрен этап тестирования. V-модель является расширенной версией каскадной модели (Waterfall), в которой разработка и тестирование программного обеспечения выполняются последовательно. Она также известна как модель валидации или верификации.

V-модель тестирования

Ключевые термины в разработке ПО

SDLC (Software development lifecycle) – жизненный цикл разработки программного обеспечения. Это последовательность действий, выполняемых разработчиками для проектирования и разработки высококачественного программного обеспечения.

STLC (Software Testing Life Cycle) – жизненный цикл тестирования программного обеспечения. Он состоит из ряда мероприятий, регулярно проводимых тестировщиками для тестирования программного продукта.

Каскадная модель – представляет собой последовательную модель, разделенную на различные этапы разработки программного обеспечения. Каждый этап предназначен для выполнения определенной деятельности. Фаза тестирования каскадной модели начинается только после завершения реализации системы.

Пример для понимания V-модели

Предположим, перед вами поставлена задача разработать для клиента программное обеспечение. Теперь, независимо от вашей технической подготовки, попытайтесь сделать обоснованное предположение о последовательности шагов, которые вы будете выполнять для достижения этой задачи.

Правильная последовательность будет следующей:

Этапы разработки программного обеспеченияДействия, выполняемые на каждом этапе.
Этап сбора требованийСоберите у заказчика как можно больше информации о деталях и спецификациях желаемого программного обеспечения.
Этап проектированияПланирование языка программирования (Java, PHP, .net), базы данных (Oracle, MySQL и др.). которые подойдут для данного проекта, а также некоторые высокоуровневые функции и архитектуру.
Этап сборкиПосле этапа проектирования наступает этап сборки, который представляет собой не что иное, как написание кода программного обеспечения.
Этап тестированияДалее проводится тестирование программного обеспечения с целью проверки того, что оно создано в соответствии со спецификацией, предоставленной заказчиком.
Этап развертыванияРазвертывание приложения в соответствующей среде.
Стадия сопровожденияПосле того как система готова к использованию, в дальнейшем может потребоваться изменение кода по требованию заказчика.

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

Проблема каскадной модели

Как можно заметить, тестирование в этой модели начинается только после завершения реализации программного обеспечения.

Но если вы работаете над большим проектом, где системы сложны, легко упустить ключевые детали уже на самом этапе разработки требований. В таких случаях заказчику будет предоставлен совершенно неправильный продукт, и вам, возможно, придется начинать проект заново. Или же, если вам удастся правильно записать требования, но при этом вы допустите серьезные ошибки в дизайне и архитектуре программного обеспечения, вам придется перепроектировать его полностью, чтобы исправить ошибки.

Оценка тысяч проектов показала, что дефекты, возникшие в процессе разработки требований и проектирования, составляют почти половину от их общего числа.

Кроме того, стоимость исправления дефекта возрастает на протяжении всего жизненного цикла разработки. Чем раньше в жизненном цикле обнаружен дефект, тем дешевле его исправить.

Решение: V-модель

Для решения этой проблемы была разработана V-модель, в которой для каждой фазы жизненного цикла разработки существует соответствующая фаза тестирования

  • Левая часть модели представляет собой жизненный цикл разработки программного обеспечения – SDLC
  • Правая часть модели – жизненный цикл тестирования программного обеспечения – STLC
  • Вся фигура выглядит, как буква V, отсюда и название V – модель.

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

Хорошими примерами жизненных циклов разработки, основанных на итеративном методе, являются Rapid Application Development, Agile Development.

Заключение

Существует множество моделей жизненного цикла разработки. Выбор правильной модели зависит зависит от целей и задач проекта.

  • Тестирование не является самостоятельным видом деятельности, и оно должно адаптироваться к модели разработки, выбранной для проекта.
  • В любой модели тестирование должно проводиться на всех уровнях, т.е. начиная с требований и заканчивая сопровождением.

Перевод статьи «V-Model in Software Testing».

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *