나선형 모형
여러 번의 소프트웨어 개발 과정을 거쳐 점진적으로 개발 계획 수립 -> 위험 분석 -> 개발 및 검증 -> 고객 평가
폭포수 모형
이전 단계로 돌아갈 수 없음 -> 물이 흐르는 느낌 각 단계 확실하게 매듭짓고 검토 후 다음 단계 진행 전통적 소프트웨어 생명 주기 모형 고전적 생명 주기 모형
애자일 모형
민첩, 기민, 요구사항 변화에 유연하게 대응할 수 있도록 일정 주기를 반복하면서 개발하는 모형
핵심 가치 4가지 프로세스와 도구 < 개인과 상호작용 문서 < 실행되는 SW 계약 협상 < 고객과 협업 계획 < 변화에 반응
- 스크럼
- XP:
- 칸반
- Lean
- 기능 중심 개발
XP
고객 요구사항에 유연하게 대응할려고 고객 참여와 개발 과정의 반복을 극대화, 개발 생산성 향상
의사소통, 단순성, 용기, 존중, 피드백
주요 실천 방법
- 짝 프로그래밍
- 공동 코드 소유
- 테스트 주도 개발
- 전체 팀
- 계속적인 통합
- 리팩토링
- 소규모 릴리즈
기능 요구사항
시스템이 무엇을 하는지, 어떤 기능을 하는지 등의 기능이나 수행과 관련된 요구사항 시스템의 입력이나 출력으로 무엇이 포함되어야 하는지에 대한 사항 시스템이 어떤 데이터를 저장하거나 연산을 수행해야 하는지에 대한 사항 시스템이 반드시 수행해야하는 기능 사용자가 시스템을 통해 제공받기를 원하는 기능