소프트웨어 개발 방법론
폭포수 · 프로토타입 · 나선형 · V-모델 · 애자일(XP/Scrum) — 주요 개발 방법론 5종.
나선형 모형의 4단계 반복(계획→위험분석→개발→평가)과 애자일 12원칙, XP 5가지 가치, Scrum 3 역할이 단답 빈출. 방법론별 장단점을 짝짓는 문제가 매회 출제.
소프트웨어 개발 방법론은 '어떤 순서로·어떤 원칙으로 개발할 것인가'를 규정한 프레임워크다. 시대순으로 폭포수 → 프로토타입 → 나선형 → 애자일의 흐름이 있으며, 각각 이전 방법론의 한계를 보완한다.
| 방법론 | 핵심 특징 | 장점 | 단점 |
|---|---|---|---|
| 폭포수 (Waterfall) | 순차적 단계 진행, 되돌아가지 않음 | 관리 용이, 문서화 강함 | 요구사항 변경에 취약 |
| 프로토타입 | 시제품을 먼저 만들어 요구사항 확인 | 요구사항 명확화 | 잦은 수정으로 일정 초과 위험 |
| 나선형 (Spiral) | 위험 분석 중심 반복 | 대규모 프로젝트에 강함 | 복잡, 관리 어려움 |
| V-모델 | 개발 단계와 테스트 단계 대응 | 각 단계마다 검증 | 유연성 낮음 |
| 애자일 (Agile) | 짧은 주기 반복, 변화 수용 | 변경 대응 빠름 | 문서 부족, 대규모 어려움 |
폭포수 (Waterfall)
단방향 · 전체 1사이클 · 요구 변경 반영 어려움애자일 (Agile / Scrum)
반복 · 2~4주 스프린트 × N회 · 요구 변경 수용| 축 | 폭포수 | 애자일 |
|---|---|---|
| 진행 | 단방향 선형 | 반복 사이클 |
| 산출물 | 마지막에 최종 배포 | 매 스프린트 작동 SW |
| 요구 변경 | 반영 어려움 | 환영·수용 |
| 적합 | 요구 고정·규제 산업 | 불확실성 높은 제품 |
나선형 4단계 — ① 계획 수립 ② 위험 분석 ③ 개발 및 검증 ④ 고객 평가. 한 사이클이 끝나면 다음 사이클로 넘어가며, 사이클마다 위험을 평가·대응한다.
애자일 4대 가치 (Agile Manifesto) — ① 프로세스·도구보다 개인과 상호작용 ② 포괄적 문서보다 작동하는 소프트웨어 ③ 계약 협상보다 고객과의 협력 ④ 계획 준수보다 변화에 대응
XP(eXtreme Programming)의 5가지 가치 — 의사소통(Communication), 단순성(Simplicity), 피드백(Feedback), 용기(Courage), 존중(Respect). 12개의 실천 방법(Pair Programming, TDD, Refactoring 등)을 가진다.
Scrum 3 역할 / 3 산출물 / 5 이벤트 - 역할: Product Owner, Scrum Master, Development Team - 산출물: Product Backlog, Sprint Backlog, Increment - 이벤트: Sprint, Sprint Planning, Daily Scrum, Sprint Review, Sprint Retrospective
위험 분석을 중심으로 계획→위험분석→개발→평가의 4단계를 반복하는 개발 방법론은?
애자일 선언문의 4대 가치를 쓰시오.
XP(eXtreme Programming)의 5가지 핵심 가치를 쓰시오.
Scrum의 3가지 역할(Role)을 쓰시오.
개발 단계별로 그에 대응하는 테스트 단계를 두어 V자 모양으로 연결하는 방법론을 ( ) 모델이라 한다.
애자일 방법론은 요구사항 변경에 취약하여 대규모 엔터프라이즈 프로젝트에 이상적이다.