본문 바로가기
소프트웨어공학

SDLC 소프트웨어 개발 생명주기 총정리

by 매일기술사 2026. 3. 18.
SW Engineering · 한장정리

[기술사토픽] SDLC & 소프트웨어 개발 모델 완벽 정리 - 한장정리

소프트웨어 개발 생명주기(SDLC) 개념과 폭포수·나선형·프로토타입·RAD 모델의 특징·장단점을 비교 정리합니다. 정보관리기술사·컴퓨터시스템응용기술사 빈출 주제입니다.

SDLC 폭포수모델 나선형모델 프로토타입 RAD 정보관리기술사

Ⅰ. 소프트웨어 개발 체계화 기술, SDLC의 개요

개념: SDLC(Software Development Life Cycle)는 소프트웨어를 계획부터 폐기까지 체계적으로 개발·운영·유지보수하는 전 과정을 단계별로 정의한 프로세스 모델입니다.

특징: (1) 품질·비용·일정을 통합 관리하는 프레임워크 (2) 결함 발견이 늦을수록 수정 비용이 기하급수적으로 증가

① 계획
타당성 검토, 범위 정의, 자원 계획
 
② 요구분석
요구사항 수집·분석·명세화 → SRS
 
③ 설계
시스템 구조·DB·UI 설계
 
④ 구현
코딩, 단위 테스트, 코드 리뷰
 
⑤ 테스트
통합·시스템·인수 테스트, 결함 수정
 
⑥ 유지보수
오류 수정, 기능 개선, 성능 최적화

유지보수 비용이 전체 SDLC 비용의 60~80%를 차지하며, 결함은 발견 시기가 늦을수록 수정 비용이 급증하므로 초기 단계에서의 품질 관리가 핵심입니다.

Ⅱ. SDLC 주요 개발 모델 및 구성요소

모델 선택: 순차형(폭포수) · 반복형(나선형) · 프로토타입형 · 신속형(RAD)으로 분류되며 프로젝트 특성에 따라 선택합니다.

가. 순차형 모델 — 폭포수(Waterfall)

Royce(1970) 제안. 각 단계를 순차 진행하며 이전 단계 완료 후 다음 단계 진입. 요구사항이 명확하고 변경이 적은 프로젝트에 유리. 단, 후반부 변경 시 비용 급증.

나. 반복형 모델 — 나선형(Spiral)

Boehm(1988) 제안. 위험 분석(Risk Analysis)을 핵심으로 계획 → 위험분석 → 개발 및 검증 → 고객평가 사이클 반복. 대형·고위험 프로젝트에 적합.

① 계획
목표·대안·제약 설정
 
② 위험분석
위험 식별·평가·해결 → 프로토타입 제작
 
③ 개발 및 검증
코딩·테스트·품질 검증
 
④ 고객평가
사용자 평가 → 다음 사이클 계획
다. 구성요소 비교
SDLC 주요 개발 모델 구성요소
모델 제안자 핵심 특징
폭포수 Royce(1970) 순차 진행, 단계별 완료, 문서화 우수
나선형 Boehm(1988) 위험 분석 반복, 4단계 사이클, 대형 프로젝트
프로토타입 시제품 기반, 사용자 피드백, 요구 불명확 시
RAD J.Martin 60~90일 신속 개발, CASE 도구, 재사용 컴포넌트

Ⅲ. SDLC 모델 비교 및 선택 기준

SDLC 개발 모델 장단점 및 적용 기준 비교
구분 폭포수 나선형 프로토타입 RAD
반복 여부 없음 있음 (사이클) 있음 (피드백) 없음
장점 문서화 우수
이해 용이
위험 관리 강점
유연성
빠른 피드백
요구 구체화
빠른 납기
재사용 극대화
단점 변경 어려움
후반 오류 발견
관리 복잡
비용 높음
Scope Creep
문서화 부족
대규모 부적합
컴포넌트 의존
적합 상황 요구 명확
변경 적음
대형·고위험 요구 불명확 소규모·단기
개발 기간 장기 장기 중기 60~90일

요약: 요구 명확 → 폭포수 / 고위험·대형 → 나선형 / 요구 불명확 → 프로토타입 / 단기·소규모 → RAD 로 프로젝트 특성에 맞게 선택.

Ⅳ. 결론 및 전문가 의견

결론

SDLC는 소프트웨어 개발의 품질·비용·일정을 체계적으로 관리하는 핵심 프레임워크입니다.
향후 애자일·DevOps와의 융합, AI 기반 자동화 개발(Low-Code/No-Code), 지속적 배포(CD) 파이프라인으로 발전하며 SDLC의 경계가 점차 유연해지고 있습니다.

"SDLC는 단순한 개발 절차가 아니라 소프트웨어 품질을 '설계하는 기술'이며, 올바른 모델 선택이 프로젝트 성패를 결정한다."

블로그: 기술사 학습노트 · imt-log.tistory.com