📘 소프트웨어 생명 주기 모델과 테스트


📌 개요

소프트웨어 생명 주기(SDLC, Software Development Life Cycle)는
소프트웨어 개발 과정에서 요구사항부터 유지보수까지 단계별 활동과 산출물을 정의한 모델이다.

각 SDLC 모델마다 테스트 수행 시점과 방법이 다르며, 효율적인 품질 확보를 위해 적합한 테스트 전략이 필요하다.


📌 순차적 개발 모델 (Sequential Development Model)

폭포수 모델 (Waterfall Model)

1️⃣ 요구사항 분석

2️⃣ 구조 설계 단계

3️⃣ 상세 설계 단계

4️⃣ 코딩

5️⃣ 테스팅


V-모델 (Verification & Validation Model)


📌 진화적 개발 모델 (Evolutionary Development Model)


📌 애자일 개발 모델 (Agile Development Model)


🧠 핵심 정리

개발 모델 테스트 시점 / 방법 특징
폭포수 구현 후 테스트 계획적, 순차 진행, 초기 결함 발견 지연 가능
V-모델 개발 단계별 대응 테스트 개발 단계 ↔ 테스트 단계 대칭, 품질 확보 용이
진화적 반복적 테스트 + 사용자 피드백 초기 요구 불완전, 반복 개선 중심
애자일 반복 단위 테스트, TDD, CI 지속적 통합, 자동화, 빠른 피드백, 짝 프로그래밍

SDLC 모델 선택에 따라 테스트 시점, 범위, 전략이 달라진다.
폭포수 모델은 계획적 테스트, 애자일은 반복적·자동화 테스트, V-모델은 단계 대응 테스트가 핵심이다.