Жизненный цикл разработки ПО (SDLC, STLC)

Жизненный цикл разработки ПО (SDLC, STLC)

SDLC: Software Development Life Cycle

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

  1. Сбор и анализ требований (Requirements). Что нужно сделать, для кого, какие ограничения.
  2. Планирование и проектирование (Design). Архитектура, технологии, дизайн интерфейса, тестовая стратегия.
  3. Разработка (Development / Implementation). Написание кода и unit-тестов.
  4. Тестирование (Testing). Проверка соответствия требованиям, поиск дефектов.
  5. Развёртывание / релиз (Deployment). Доставка продукта пользователям.
  6. Сопровождение (Maintenance). Багфиксы, обновления, мониторинг, развитие.

Это общая канва. Разные методологии (Waterfall, Agile, V-Model) по-разному организуют переходы между этапами — этому будет отдельный урок 1.7.

Где появляется тестировщик

Распространённая ошибка — думать, что тестировщик включается на этапе «Тестирование». На самом деле зрелые команды вовлекают QA с самого начала:

  • На этапе требований — задаёт уточняющие вопросы, ловит противоречия, предлагает кейсы, о которых забыли аналитик и продакт.
  • На этапе дизайна — проверяет, можно ли вообще будет это протестировать, и закладывает тестовую стратегию.
  • На этапе разработки — пишет тест-кейсы параллельно с кодом, готовит тестовые данные.
  • На этапе тестирования — выполняет проверки, заводит баги, ретестит фиксы.
  • На этапе сопровождения — проверяет hotfix-ы, расследует продакшен-инциденты, строит регресс.

Чем раньше QA включён — тем дешевле итоговое качество.

STLC: Software Testing Life Cycle

STLC — это «вложенный» цикл внутри SDLC, описывающий жизненный цикл именно тестирования. Стандартно выделяют 6 этапов:

1. Анализ требований (Requirement Analysis)

QA читает спецификации и юзер-стори. Цель — понять, что вообще должна делать система, и убедиться, что требования тестируемы (есть чёткие критерии «работает / не работает»).

2. Планирование тестирования (Test Planning)

Создаётся Test Plan: что будем тестировать, какими инструментами, каким составом, в какие сроки, какие риски. Здесь же определяется скоуп — что не входит в это тестирование.

3. Разработка тест-кейсов (Test Case Development)

Пишутся тест-кейсы и чек-листы на основании требований. Готовятся тестовые данные. Делается review — проверка тест-документации командой.

4. Подготовка окружения (Test Environment Setup)

Поднимается тестовый стенд: нужная версия приложения, чистая база, доступы, тестовые аккаунты, mock-сервисы. На этом же этапе делается smoke-тест окружения — проверяем, что среда вообще работает.

5. Выполнение тестов (Test Execution)

Прогон тест-кейсов, фиксация результатов, заведение баг-репортов. Ретест после фиксов, регрессия. На больших фичах этот этап повторяется несколько раз.

6. Завершение цикла (Test Closure)

Подготовка отчёта: что протестировано, какие баги остались, какие риски. Ретроспектива: что сработало, что нет, как улучшить процесс в следующий раз. Архивация артефактов.

Точки выхода (Exit Criteria)

В каждой фазе STLC есть критерии входа и выхода — условия, при которых можно переходить к следующей фазе. Примеры:

  • Вход в Test Execution: тестовое окружение готово, тест-кейсы заревьюены, билд установлен.
  • Выход из Test Execution: все запланированные тест-кейсы выполнены, все critical-баги пофикшены и подтверждены, осталось не более N багов minor severity.

Чёткие критерии не дают команде «пропихнуть» сырую фичу в продакшен под предлогом «ну вроде всё ок».

SDLC и STLC рядом

Маппинг фаз SDLC и STLC

SDLCSTLC
Сбор требованийАнализ требований
ДизайнПланирование тестирования
РазработкаРазработка тест-кейсов + подготовка окружения
ТестированиеВыполнение тестов
Релиз / сопровождениеЗавершение цикла + регрессия на следующих итерациях

STLC не существует отдельно — он встроен в SDLC и его этапы идут параллельно с этапами разработки.

Что мы запомним

  • SDLC — общий цикл разработки продукта: от требований до сопровождения.
  • STLC — цикл тестирования внутри SDLC, состоит из 6 этапов от анализа требований до отчёта.
  • QA включается на самом раннем этапе — это уменьшает стоимость качества.
  • Критерии входа и выхода между фазами — главный инструмент защиты от «недотестированных» релизов.

Попробуйте интерактивную версию

Практические задачи, квизы и AI-наставник — бесплатный старт без карты

Перейти к практике