PE Notes · 사업관리
XP
XP의 가치와 짝 프로그래밍·TDD·리팩토링·CI·단순 설계를 스크럼과 가르고, 짧은 이터레이션의 공학 실천을 정리합니다.
리뷰가 좋다면 항상 하고, 시험이 좋다면 코드보다 먼저 씁니다. (eXtreme Programming)는 좋은 공학 습관을 극단까지 밀고 가는 애자일입니다. 짧은 이터레이션 위에 , , , , 단순 설계를 올립니다. 이 리듬과 역할을 주면, XP는 그 안의 코드 습관입니다.
가치와 원칙
의사소통은 문서보다 사람과 고객을 가깝게 둡니다. 단순성은 지금 필요한 것만입니다. 와 같은 칸입니다. 피드백은 시험·빌드·현장 반응을 빨리 받습니다. 용기는 나쁜 구조를 고치고 변경을 받아들입니다. 존중은 나중에 보탠 다섯 번째입니다.
원칙은 빠른 피드백, 단순성 가정, 점진 변화, 변화 포용, 품질 작업입니다. 올바르게를 빠르게보다 앞에 둡니다. 계획 게임은 스토리로 릴리스와 이터레이션을 짜고, 소규모 릴리스는 자주 작게 내보냅니다. 메타포는 팀이 공유하는 한 줄 그림입니다.
짝, TDD, 리팩토링, CI
짝 프로그래밍은 한 키보드에 두 사람입니다. 드라이버가 치고, 내비게이터가 방향과 구멍을 봅니다. 십수 분마다 자리를 바꿉니다. 리뷰가 커밋 뒤가 아니라 타이핑과 동시에 일어납니다. 지식도 같이 옮겨 갑니다.
TDD는 실패하는 시험을 쓰고(Red), 최소로 통과시키고(Green), 구조를 다듬습니다(Refactor). 리팩토링은 겉 동작을 두고 내부를 치웁니다. 단순 설계는 그 루프가 과잉 추상을 미리 깔지 않게 합니다. 지금 스토리에 없는 플러그인 포인트는 넣지 않습니다.
지속적 통합은 하루에 여러 번 본선에 합치고 빌드·시험을 돌립니다. 깨진 빌드를 방치하지 않습니다. 현대 파이프라인의 CI 칸이 여기서 왔습니다. 공동 소유는 누구든 어느 파일이든 고칩니다. 현장 고객은 팀 안에 앉아 우선순위를 그 자리에서 닫습니다. 지속 가능한 속도는 주 40시간 감각입니다. 야근으로 속도를 사지 않습니다. 고객 시험은 인수 조건을 고객이 글로 남깁니다.
| 실천 | 한 줄 |
|---|---|
| 짝 프로그래밍 | 실시간 리뷰·공유 |
| TDD | 시험 → 최소 코드 → 다듬기 |
| 리팩토링 | 동작 유지, 구조 개선 |
| CI | 자주 합치고 자동 시험 |
| 단순 설계 | 지금 필요한 것만 |
스크럼과 같이
스크럼은 PO·스크럼 마스터·개발팀, 스프린트, 백로그, 증분입니다. 기술 실천은 팀이 고릅니다. XP는 이터레이션이 더 짧고(흔히 1~2주), TDD·짝·CI를 이름으로 적습니다. 스프린트 중 범위는 스크럼이 더 잠그는 편이고, XP는 이터레이션 안 조정이 상대적으로 열려 있습니다. 실무는 스크럼 이벤트에 XP 공학을 넣는 하이브리드가 많습니다.
의 작은 증분은 XP의 소규모 릴리스와 맞습니다. 빈 껍데기를 자주 내는 것은 피드백이 아니라 소음입니다. 공공도 현장 사용자와 짧은 릴리스가 있으면 XP 감각을 일부 가져올 수 있습니다. 규제 산출은 자동화 시험과 빌드 이력으로 남깁니다.
| 비교축 | XP | 스크럼 |
|---|---|---|
| 무게 | 공학 실천 | 프로세스·역할 |
| 주기 | 1~2주 | 1~4주 스프린트 |
| 범위 변경 | 이터레이션 안 가능 쪽 | 스프린트 중 잠금 |
| 역할 | 고객·개발·코치 | PO·SM·개발팀 |
답안은 가치 네(다섯) 이름, 짝·TDD·리팩토링·CI·단순 설계, 스크럼 대비 표를 한 장에 닫습니다.