Notice
Recent Posts
Recent Comments
코드 위의 하루 (A Day on the Code)
Chapter 2 정리 - 소프트웨어 생명주기 완전 정복 본문
📌 과목 개요
- 과목명: 소프트웨어공학
- 교재: 『쉽게 배우는 소프트웨어공학 2판』 - 김치수 저
- 중간고사 범위: Chapter 1 ~ Chapter 6
- 시험 스타일: 각 생명주기 단계의 의미 설명, 개발 모델 비교, 장단점 서술 문제
📚 Chapter 2 핵심 개념 요약
1. 소프트웨어 생명주기(SDLC, Software Development Life Cycle)
- 소프트웨어가 기획 → 개발 → 운영 → 폐기되기까지의 전 과정
- 계획 → 분석 → 설계 → 구현 → 테스트 → 유지보수 단계로 구성됨
2. 각 단계 간단 요약
- 계획(Planning): 프로젝트 목적 설정, 범위, 일정 수립
- 분석(Analysis): 요구사항 수집 및 정제 (무엇을 만들 것인가?)
- 설계(Design): 시스템 구조 정의 (어떻게 만들 것인가?)
- 구현(Implementation): 실제 프로그램 개발
- 테스트(Testing): 오류 제거, 기능 검증
- 유지보수(Maintenance): 배포 후 수정/기능 추가
3. 개발 프로세스 모델
🔹 폭포수 모델(Waterfall)
- 각 단계를 순차적으로 수행
- 이전 단계로 되돌아갈 수 없음
- 문서화 철저, 일정 예측 용이
✔️ 장점: 구조적이고 명확한 계획 가능
✔️ 단점: 요구사항 변경 어려움, 초반 실수 → 전체 오류로 연결
🔹 프로토타입 모델(Prototype)
- 미리 **시제품(프로토타입)**을 만들어 사용자에게 피드백을 받으며 개발
- 요구사항 명확하지 않을 때 유용
✔️ 장점: 사용자와 의사소통 쉬움, 요구사항 변경 반영 용이
✔️ 단점: 시제품에 너무 의존하거나, 최종 제품 품질 저하 우려
🔹 반복적 모델(Iterative)
- 일정 기능 단위로 점진적 반복 개발
- 점점 완성도를 높여가는 방식
🔹 애자일 모델(Agile)
- 반복적 + 협업 중심
- 유연하게 변화에 대응
- 대표 방식: 스크럼(Scrum), XP
✔️ 장점: 빠른 피드백, 유연한 대응
✔️ 단점: 큰 프로젝트나 명확한 규격이 필요한 경우 부적합
📊 주요 모델 비교 요약
💡 자주 나오는 시험 유형
- 폭포수 vs 프로토타입 vs 애자일 모델 장단점 비교
- 각 개발 단계 설명
- 생명주기의 순서를 나열하거나 정의
- “요구사항이 명확하지 않을 때 적합한 모델은?” 같은 사례형 문제
🎯 교수님이 강조한 포인트
- 폭포수는 되돌아갈 수 없다는 점 꼭 기억
- 프로토타입은 요구사항 파악에 효과적
- 애자일은 반복 + 협업 기반이며, 고정된 요구사항보다 변화에 적합
📌 내 오답노트 & 복습 포인트
- 단계 순서를 틀리거나 빠뜨림 (계획-분석-설계 순서 주의)
- 프로토타입과 애자일의 차이 혼동
- 유지보수 단계를 단순히 오류 수정이라고만 오해함
📝 마무리 요약
- 소프트웨어 생명주기는 제품의 전 생애를 구조화한 개념
- 각 모델은 상황에 따라 적합한 방식이 다르며, 장단점 중심으로 외워두기
- 시험에서는 모델 비교, 개발 단계 순서, 적용 사례가 핵심
📘 다음 편 예고
《전공이 밥 먹여준다믄 - 소프트웨어공학 Chapter 3 정리》
요구사항 공학과 유스케이스 다이어그램 쉽게 정리하기
'🍚전공이 밥 먹여준다믄 > 📕 소프트웨어공학' 카테고리의 다른 글
Chapter 6 정리 - 테스트와 디버깅, 소프트웨어 품질의 완성 (0) | 2025.05.12 |
---|---|
Chapter 5 정리 - 형상관리와 변경관리의 모든 것 (0) | 2025.05.12 |
Chapter 4 정리 - 프로젝트 관리, WBS, 간트 차트 쉽게 정리하기 (0) | 2025.05.12 |
Chapter 3 정리 - 요구사항과 유스케이스 다이어그램 쉽게 정리하기 (0) | 2025.05.12 |
Chapter 1 정리 - 소프트웨어란 무엇인가? (2) | 2025.05.12 |