SDLC, STLC и модели разработки: Waterfall, V-Model, Agile
Почти в любой QA-команде ты рано или поздно услышишь слова SDLC, STLC, Waterfall, V-Model и Agile. Эти термины важны не потому, что их любят на собеседованиях, а потому что они помогают понять, в каком процессе живет продукт и где в нем находится QA. Когда тестировщик понимает жизненный цикл разработки, ему проще планировать проверки, вовремя подключаться к требованиям и объяснять, почему качество не начинается с кнопки Run regression.
Что такое SDLC
SDLC — это Software Development Life Cycle, то есть жизненный цикл разработки программного обеспечения. Он описывает путь продукта от идеи до поддержки в продакшене. Обычно туда входят анализ, проектирование, разработка, тестирование, релиз и сопровождение. Для QA это не просто теория. SDLC помогает видеть, где появляются риски: на этапе требований, при проектировании архитектуры, во время интеграций или на релизе.
- →SDLC отвечает на вопрос: как продукт создается от идеи до поставки.
- →QA важен почти на каждом этапе SDLC, а не только во время тестирования.
Что такое STLC
STLC — это Software Testing Life Cycle, жизненный цикл тестирования. Он описывает не весь путь продукта, а путь тестовой активности внутри разработки: анализ требований, планирование тестирования, подготовку тестовых данных, дизайн тестов, выполнение, отчетность и завершение цикла. По сути, STLC — это взгляд на работу QA как на отдельный процесс внутри общего SDLC.
- →STLC помогает структурировать работу QA.
- →Без понимания STLC тестирование быстро превращается в хаотичный набор проверок.
Waterfall: каскадная модель
В Waterfall этапы идут последовательно: сначала требования, потом дизайн, потом разработка, потом тестирование, потом релиз. Плюс этой модели — предсказуемость и понятная структура. Минус — поздняя обратная связь. Если требования плохие, проблема обычно становится заметной слишком поздно, когда изменения уже дорогие. Для QA в Waterfall особенно важно внимательно проверять требования и документацию, потому что на поздних этапах исправления стоят дороже.
- →Waterfall удобен там, где требования стабильны.
- →Для QA главный риск Waterfall — позднее обнаружение ошибок и ограниченная гибкость.
V-Model: усиление связи между этапами
V-Model выросла из Waterfall, но сильнее подчеркивает связь между этапами разработки и этапами тестирования. Например, требования связаны с приемочным тестированием, системный дизайн — с системным тестированием, архитектура — с интеграционным, а модульный дизайн — с unit-тестами. Для QA это хорошая модель, потому что она показывает: тестирование нужно планировать заранее, а не начинать только после завершения кода.
- →V-Model делает качество более предсказуемым.
- →Для QA это один из лучших способов объяснить, почему тестирование начинается задолго до релиза.
Agile: итеративная и гибкая разработка
Agile — это не одна конкретная схема, а семейство гибких подходов, в которых продукт развивается короткими итерациями. Работа идет маленькими кусками, обратная связь приходит быстрее, а требования уточняются по ходу движения. Для QA в Agile важны коммуникация, скорость реакции, умение работать с незавершенными требованиями и постоянное участие в жизни команды. QA здесь не стоит в конце цепочки, а встроен в ежедневный поток работы.
- →В Agile QA чаще включен в обсуждение требований и acceptance criteria.
- →Чем лучше коммуникация внутри команды, тем сильнее выигрывает качество.
Как меняется роль QA в разных моделях
В Waterfall QA часто подключается позже и больше работает с уже готовой функциональностью. В V-Model тестировщик заранее думает о проверках под каждый этап. В Agile QA — это участник повседневной продуктовой работы: он обсуждает требования, смотрит риски, тестирует по кускам, помогает команде принимать решения о готовности. На практике даже если компания говорит, что у нее Agile, реально внутри могут смешиваться подходы. Поэтому тестировщику полезно понимать не только определения, но и реальные последствия этих моделей.
- →Не существует одной идеальной модели для всех продуктов.
- →Сильный QA умеет адаптироваться к процессу, но при этом защищать качество.
Вывод
SDLC помогает увидеть весь путь продукта, STLC — путь тестирования внутри него. Waterfall показывает линейный подход, V-Model — связь между разработкой и тестированием, а Agile — постоянную адаптацию и короткий feedback loop. Для начинающего QA важнее не заучить красивые определения, а понять, как процесс влияет на риски, сроки и место тестировщика в команде.