[시나공] 소프트웨어 생명주기 & 개발 방법론 정리 (폭포수, 애자일, XP, 스크럼)
2026. 2. 21. 20:06ㆍCertifications/정보처리기사 실기
1️⃣ 소프트웨어 생명주기 (Software Life Cycle)
✅ 1. 개념
소프트웨어 생명주기(SDLC) 는
소프트웨어를 개발하기 위한 설계·운영·유지보수 등의 과정을 단계별로 나눈 것
즉, 개발 전 과정(Planning → Maintenance)을 체계적으로 정의한 모델이다.
✅ 2. 표현 방식
소프트웨어 생명주기는 다음 3가지로 표현된다.
- 개발 단계
- 각 단계의 주요 활동
- 각 단계의 산출물
🔎 한줄 정리
개발의 전체 흐름을 단계별로 구조화한 체계
2️⃣ 폭포수 모형 (Waterfall Model)
✅ 1. 개념
이전 단계로 돌아갈 수 없다는 전제하에, 각 단계를 확실히 마무리한 후 다음 단계로 진행하는 방식
✅ 2. 특징
- 가장 오래된 전통적 생명주기 모형
- 고전적 생명주기 모형
- 단계별 순차 진행
- 결과에 대한 철저한 검토 및 승인 후 다음 단계 진행
- 한 단계가 끝나야 다음 단계로 이동 가능
🔎 한줄 정리
순차적 · 문서 중심 개발 방식
3️⃣ 나선형 모형 (Spiral Model)
✅ 1. 개념
여러 번의 개발 과정을 반복하며 점진적으로 완성도를 높이는 모델
제안자: 보헴(Boehm)
✅ 2. 4가지 주요 활동
- 계획 수립
- 위험 분석
- 개발 및 검증
- 고객 평가
→ 위 과정을 반복 수행한다.
🔎 한줄 정리
위험 분석 기반의 반복 개발 모델
4️⃣ 애자일(Agile) 모형
✅ 1. 개념
고객 요구사항 변화에 유연하게 대응하기 위해 반복 주기로 개발하는 방식
✅ 2. 특징
- 특정 방법론이 아닌 철학
- 고객과의 협업 강조
- 짧은 개발 주기 반복
- 빠른 피드백 반영
✅ 3. 대표적 개발 방법
- 스크럼(Scrum)
- XP(eXtreme Programming)
- 칸반(Kanban)
- Lean
- FDD(기능 중심 개발)
🔎 한줄 정리
변화에 빠르게 대응하는 반복 개발
5️⃣ 애자일 4가지 핵심 가치
- 프로세스와 도구보다 개인과 상호작용
- 방대한 문서보다 실행되는 소프트웨어
- 계약 협상보다 고객과 협업
- 계획을 따르기보다 변화에 대응
6️⃣ 소프트웨어 공학 (Software Engineering)
✅ 1. 개념
소프트웨어의 위기를 극복하기 위해 연구된 학문
✅ 2. 목적
- 품질 향상
- 생산성 향상
✅ 3. 기본 원칙
- 최신 프로그래밍 기술 적용
- 지속적 품질 검증
- 명확한 기록 유지
7️⃣ 스크럼 (Scrum)
✅ 1. 개념
애자일 개발 프로세스 중 하나
✅ 2. 주요 프로세스
- 스프린트 계획 회의
- 스프린트 (2~4주 반복 개발)
- 일일 스크럼(Daily Scrum) 회의 (15분)
- 스프린트 검토 회의
- 스프린트 회고
8️⃣ XP (eXtreme Programming)
✅ 1. 개념
고객 참여와 반복 개발을 극대화한 방법론
✅ 2. XP 5가지 핵심 가치
- 의사소통 (Communication)
- 단순성 (Simplicity)
- 용기 (Courage)
- 존중 (Respect)
- 피드백 (Feedback)
9️⃣ XP 주요 실천 방법
- Pair Programming (짝 프로그래밍)
- Collective Ownership (공동 코드 소유)
- TDD (Test-Driven Development) (테스트 주도 개발)
- Whole Team
- Continuous Integration (지속적 통합)
🎯 전체 비교 정리
| 구분 | 핵심 키워드 |
|---|---|
| 폭포수 | 순차적, 되돌아갈 수 없음 |
| 나선형 | 위험 분석, 반복 개발 |
| 애자일 | 변화 대응, 고객 협업 |
| 스크럼 | 2~4주 반복, 회의 중심 |
| XP | TDD, 짝 프로그래밍, 지속적 통합 |

2025 시나공 퀵이지 정보처리기사 실기 단기완성
(저자: 강윤석, 김용갑, 김우경, 김종일 | 출판사: 길벗)
※ 본 글은 위 교재를 참고하여 학습 목적으로 재정리한 내용입니다.
'Certifications > 정보처리기사 실기' 카테고리의 다른 글
| [시나공] 개발 방법론·비용 산정·일정 관리·품질 표준 정리 (0) | 2026.02.25 |
|---|---|
| [시나공] 객체지향 개념 및 UML 확장 이론 (1) | 2026.02.24 |
| [시나공] 요구사항 명세·개발 프로세스 보완 정리 (0) | 2026.02.22 |
| [시나공] 요구사항 분석 기법 정리 (자료흐름도, SADT, HIPO) (0) | 2026.02.22 |
| [시나공] UML 핵심 정리 – 클래스/시퀀스/활동/상태 다이어그램 비교 (0) | 2026.02.22 |