기-억하기 위해 기-록을

[정보처리기사 필기] section 003 XP(extreme Programming) 기법 본문

정보처리기사

[정보처리기사 필기] section 003 XP(extreme Programming) 기법

seopark 2024. 9. 1. 20:58

정보처리기사 필기 기본서 2024 학습 내용 기록

003 XP(extreme Programming) 기법

1) XP(eXtreme Programming)

https://www.youtube.com/watch?v=eazYN0Jkacc

XP란? 수시로 발생하는 고객의 요구사항에 유연하게 대응하기 위해 고객의 참여와 개발 과정의 반복을 극대화하여 개발 생산성을 향상시키는 방법

 

- XP는 짧고 반복적인 개발주기, 단순설계, 고객의 적극적 참여를 통해 소프트웨어를 빠르게 개발하는 것을 목적

- 릴리즈 기간을 짧게 반복하며 고객의 요구사항 반영에 대한 가시성 높임

- 릴리즈 테스트마다 고객을 직접 참여시킴으로써 요구한 기능이 제대로 작동하는지 고객이 직접 확인 가능

- 비교적 소규모 인원의 개발 프로젝트에 효과적

 

XP 핵심 가치

1. 의사소통 2. 단순성 3. 용기 4. 존중 5. 피드백

 

2) XP 개발 프로세스 

https://www.youtube.com/watch?v=_y-puluGJ4A

 

사용자 스토리

- 고객 요구사항을 간단한 시나리오로 표현

- 내용은 기능 단위로 구성, 필요한 경우 간단한 테스트 사항도 기재

 

릴리즈 계획 수립

- 몇 개의 스토리가 적용되어 부분적으로 기능이 완료된 제품을 제공하는 것을 릴리즈라고 함

- 부분 혹은 전체 개발 완료 시점에 대한 일정 수립

 

스파이크

- 요구사항 신뢰성 높이고 기술 문제에 대한 위험 감소시키기 위해 별도로 만드는 간단한 프로그램

- 처리할 문제 외의 다른 조건은 모두 무시하고 작성

 

이터레이션 

- 하나의 릴리즈를 더 세분화한 단위

- 일반적으로 1~3주 정도 기간으로 진행

- 이 기간 중에 새로운 스토리가 작성될 수 있고, 작성된 스토리는 진행 중인 이터레이션 혹은 다음 이터레이션에 포함될 수 있음

 

승인 검사 (=인수테스트)

- 하나의 이터레이션 안에서 계획된 릴리즈 단위의 부분 완료 제품이 구현되면 수행하는 테스트

- 사용자 스토리 작성 시 함께 기재한 테스트 사항에 대해 고객이 직접 수행

- 테스트 과정에서 발견한 오류사항은 다음 이터레이션에 포함

- 테스트 이후 새로운 요구사항이 작성되거나 요구 사항의 상대적 우선순위가 변경될 수 있음

- 테스트가 완료되면 다음 이터레이션을 진행

 

소규모 릴리즈

-릴리지를 소규모로 하면, 고객의 반응을 기능별로 확인할 수 있어 고객 요구사항에 좀 더 유연하게 대응 가능

- 계획된 릴리즈 기간동안 진행된 이터레이션이 모두 완료되면 고객에 의한 최종 테스트를 수행한 후 릴리즈, 최종 결과물을 고객에게 전달

- 릴리즈가 최종 완제품이 아닌 경우 다음 릴리즈 일정에 맞게 개발 계속 수행

 

* xp의 주요 실천 방법

https://www.youtube.com/watch?v=MRuItFbBfEE