3장. 애자일 소프트웨어 개발
신속한 소프트웨어 개발
신속한 개발과 인도 (Delivery)
- 대부분의 비즈니스 시스템에서 신속한 개발과 배포는 가장 중요한 요구사항이다.
- 변화하는 비즈니스 환경에 따라 안정적인 요구사항을 얻기가 힘들다.
- 시스템을 경험한 후에 요구사항을 명확히 알게되지만, 요구사항은 계속 변화한다.
기존 계획주도 프로세스의 한계
계획주도 프로세스는 신속한 소프트웨어 개발에 적합하지 않음
애자일 기법의 등장
- 익스트림 프로그래밍: 애자일 개발 방법
- 스크럼: 애자일 프로젝트 관리
애자일 개발
애자일 기법의 특징
1. 명세화, 설계 및 구현 프로세스가 중첩된다.
설계 문서화를 최소화하거나 시스템 구현을 위한 프로그래밍 환경에서 자동 생성한다.
2. 시스템을 증가분의 연속으로 구현한다.
최종 사용자와 다른 시스템 이해당사자가 각 증가분을 명세하고 평가하는데 참여한다.
3. 개발 프로세스를 지원하기 위해 방대한 도구를 사용하게 된다.
테스트 자동화 도구, 형상 관리와 시스템 통합을 지원하는 도구, UI를 자동으로 생성해주는 도구 등
고객과의 커뮤니케이션 활성화 + 문서 최소화