-
반응형
Waterfall 방식의 프로세스를 사용하지 않기 때문에, 산출물(개발문서)에 집중하지 않는다.
요구사항이 변경될때 마다 산출물을 변경하게 된다면 그 비용도 만만치 않으며, 그 비용 때문에 개발 시간 확보가 되지 않을 것이다.
[개발방법]
1. 고객과 개발자의 의사소통을 통하여 요구사항을 확인하고 스토리카드 작성
- 스토리카드란 기능에 명시 및 요구사항을 의미하며, 처음부터 완벽하게 작성하지 않고 차츰 완성해나간다.
2. 메타포를 이용하여 고객에게 시스템을 설명하고 팀원들과의 메타포를 이용하여 의사소통을 하여 오너쉽을 공유
- ※ 메타포 : 시스템을 설명하기 위한 표현방법
3. 페어프로그래밍을 하고 개발은 간략한 디자인을 추구하며 TDD를 통한 단위테스트와 리팩토링 수행
4. 고객과의 개발사항 확인과 요구사항 업데이트
위의 1~4까지 하나의 과정을 반복하여 개발한다.
[XP의 4가지 중요 요소들]1. 의사소통
개발요청을 한 고객과 개발자와의 직접적인 의사소통2. 간결한 디자인
디자인과 요구사항은 언제라도 변경될 수 있기 때문에 간결한 디자인을 한다)3. 즉각적인 피드백
시스템에 직접 도입함으로써 피드백을 확인한다.4. 자신감
개발자와 고객은 갑과 을의 관계가 아닌, 시스템을 함께 구축해가는 사람이다.
XP는 기본적으로 의사소통과 피드백을 전제로 하기 때문에 개발팀의 크기가 크다면 적용하는데 어려움이 있을 수 있다. 개발팀의 크기가 커질수록 모든 팀원의 의사소통의 비용도 만만치 않을 것이기 때문이다.
반응형