Роль тестировщика в жизненном цикле ПО

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

на изображение роль тестировщика в жизненном цикле ПО

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

Что такое жизненный цикл программного обеспечения

Жизненный цикл ПО (Software life cycle) – это совокупность этапов, которые проходит программа как система в процессе ее создания и использования.

Общепринятая модель состоит из следующих этапов:

  • Создание бизнес-идеи (концепции).
  • Определение требований к ПО.
  • Составление дизайна продукта.
  • Разработка.
  • Тестирование.
  • Установка и приемо-сдаточные испытания.
  • Эксплуатация и обслуживание.
  • Вывод из эксплуатации.

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

Тестирование на этапах жизненного цикла ПО

Существуют разные QA-подходы, модели, методы и инструменты. Главное – применять их правильно и вовремя. В данной статье мы расскажем о том, в чем состоит роль тестировщика для этих этапов жизненного цикла ПО.

Тестирование на этапе создания бизнес-идеи (концепции) ПО

Когда компания или просто стартапер придумал идею нового IT-продукта, ему важно понимать, насколько она реализуема. Для этого ее рекомендуется описать и исследовать с разных точек зрения. В основном этим занимаются маркетологи, финансисты, бизнес-консультанты и т.д. Айтишники здесь выступают больше в качестве экспертов.

Поэтому QA-инженеры здесь мало задействованы (по сравнению с другими этапами). Тестирование на данном этапе может применяться, например, в следующих случаях:

  • Экспертная оценка по объемам QA-работ для создания и обслуживания продукта.
  • Анализ баг-репортов из предыдущих аналогичных проектов для снижения стоимости разработки.
  • Если сделан прототип – тестирование прототипа.

Тестирование на этапе определения требований к ПО

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

На самом деле, грамотный QA-специалист может внести существенный вклад на данном этапе жизненного цикла ПО и сэкономить существенные средства клиенту. Например:

  • Обнаружение противоречий в функциях ПО еще на стадии «бумаги» (до кодинга).
  • Проверка интерпретаций формулировок с точки зрения QA (что заказчик и исполнитель в будущем будут одинаково трактовать некоторые «дефектоопасные» требования).
  • Подготовка к работам по тестированию (выбор целей, первая версия стратегии тестирования, шаблоны тестовой документации и т.п.).

Тестирование на этапе создания дизайна продукта

На этой стадии создаются макеты и прототипы продукта. Значит, тестировщик может начинать уже привычную для него работу – искать дефекты в них. Роль тестировщика в ходе дизайна продукта может быть следующей:

  • Поиск багов в прототипах продукта.
  • Проверка дизайна на соответствие требований к ПО.
  • Юзабилити-тестирование.
  • Тест-анализ ПО.
  • Создание стартовой документации для тестирования (стратегия тестирования, тест-план, тест-кейсы и др.)

Тестирование на этапе разработки ПО

На этом этапе у QA-специалистов начинается самая жаркая пора. Тестировщикам надо проверять результаты работы программистов на предмет возникающих ошибок. Чем раньше обнаружен дефект – тем дешевле его исправление. 

Здесь тестировщики могут проводить, например, следующие проверки:

  • Модульное тестирование (проверка отдельных модулей/компонентов ПО).
  • Интеграционное тестирование (проверка взаимосвязей между модулями).
  • Системное тестирование (проверка всей системы как единого целого).
  • Тестирование интерфейса.
  • Регрессионное тестирование (проверка ПО после обновления).

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

Тестирование на этапе тестирования ПО

Что значит тестирование тестирования? На самом деле, это нужна вещь, чтобы повысить производительность работы QA-специалистов.

Этим занимаются старшие грейды QA. Здесь проводится оценка эффективности тестовых процедур, задействованных инструментов тестирования, анализ найденных багов (чтобы уберечься от «парадокса пестицидов»), при необходимости – корректировка стратегии тестирования и других организационных QA-документов.

Тестирование на этапе установки и приемо-сдаточных испытаний

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

Тестирование на этапе эксплуатации и обслуживания

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

  • Регрессионное тестирование после обновления версий.
  • Проверка ПО на устройствах, не предусмотренных ранее (например, заказчика перевели на другие модели компьютеров или телефонов).
  • Исследование случаев непредвиденного использования продукта.

Тестирование на этапе вывода из эксплуатации

Обычно здесь тестировщики мало задействованы. Но при необходимости они могут делать, например, следующие вещи:

  • Проверка работоспособности систем клиента после деинсталляции продукта.
  • Ретроспективный анализ QA-мероприятий для продукта.
  • Разработка рекомендации по совершенствованию работы компании в целом и QA-отдела в частности (на будущее).

Резюме

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

на изображение автор Михаил Кулешов

Автор Михаил Кулешов

Михаил, профессиональный партнерский маркетолог, является основателем компании South Media OÜ, которая была создана в 2018 году и базируется в Таллинне. С 2016 года Михаил уехал из Финляндии и жил как настоящий «цифровой кочевник» в IT-индустрии, путешествуя по миру только с ноутбуком. Михаил работает и пишет статьи, связанные с IT-индустрией.