[정보처리기사][요구사항확인] - 익스트림프로그래밍(XP)

컴퓨터/정보처리기사

728x90
반응형

XP (eXtreme Programming) - 익스트림 프로그래밍

애자일 모델의 대표적인 기법 중 하나. 

고객의 요구사항에 유연하게 대응하기 위해 고객의 참여와 개발 과정의 반복을 극대화시켜 생산성을 향상하는 방법이다.

 

  • 짧고 반복적인 개발 주기
  • 단순한 설계
  • 고객의 적극적인 참여 유도

릴리즈의 기간을 짧게 반복하여 고객의 요구사항 반영에 대한 가시성을 높이는 것

 

릴리즈 : 부분적으로 요구사항을 완료한 제품을 제공하는 것 (부분적 개발 완료)

가시성 : 보임의 정도 즉, 제품이 동작하는 결과물을 보다 명확하게 보여 줌

 

1.XP의 5가지 핵심 가치

  • 의사소통 (Communication)
  • 단순성 (Simplicity)
  • 용기 (Courage)
  • 존중 (Respect)
  • 피드백 (Feedback)

2.XP의 개발 프로세스

  • 릴리즈 계획 수립 (Release Planing) - 일정을 수립하는 과정
  • 이터레이션 (Iteration) - 실제 개발을 진행하는 과정
  • 승인(인수) 테스트 (Acceptance Test) - 완료된 개발 부분에 대한 검증 테스트
  • 소규모 릴리즈 (Small Release) - 고객에게 부분 결과물을 제공

3.XP의 주요 실천 방법

실천 방법 내용
짝 프로그래밍
(Pair Programming)
다른 사람과 함께 프로그래밍을 수행
개발의 책임을 공동으로 나눠 갖는 환경을 조성함
공동 코드 소유
(Collective Ownership)
개발 코드에 권한과 책임을 공동으로 소유함
테스트 주도 개발
(Test-Driven Development)
테스트 케이스를 기반으로 실제 코드를 구현함
따라서 구현의 목표가 명확하게 파악이 가능
전체 팀
(Whole Team)
개발에 참여하는 모든 구성원은 자신의 역할이 있고 역할에 따른 책임이 있음
지속적인 통합
(Continuous Integration)
모듈단위로 분할되어 개발된 코드들은 완료될 때마다 지속적으로 통합되어야 함
리팩토링
(Refactoring)
프로그래밍의 기능 변경 없이 시스템을 재구성
즉, 프로그램을 쉽게 이해하여 빠르게 수정할 수 있도록 구성
소규모 릴리즈
(Small Releases)
릴리즈 기간을 짧게 반복함으로 고객의 요구변화에 신속히 대응

 

728x90
반응형

Commnet

G91개발일지

Gon91(지구일)

91년생 공학엔지니어의 개발일지

TODAY :

YESTER DAY :

TOTAL :