짝 프로그래밍에 대한 가이드를 찾기가 어려울 수 있다. 언제 짝을 할 것이며 얼만큼 할 것인가? 뭐, 그런 종류의 질문과 가이드 말이다.
저는 보통 P.P은 하루 중 최대 반나절 정도만 시행하는 걸 권장하며,
짝 프로그래밍을 하는 시기는
- 개발 업무 영역을 팀원 전체가 다 알게 하고 싶을 경우
- 버그를 찾고자 할 때
- 만들고자 하는 부분에 대한 명확한 그림이 그려지지 않을 때
- 새로운 신입을 팀 내에 빠르게 적응시키게 하기 위해서
사용하길 권장 합니다.
이때 주의할 점은
- 서로를 신뢰하고, 코드에 대한 지나친 소유욕을 갖지 않는 것
- 대화를 자주 나누되, 둘의 목표가 좋은 SW를 만드는 데에 있다는 것을 공유하며
- 대화를 논쟁으로 생각하지 말 것. (Winner, Loser 가 생겨서는 안된다.)
정도 입니다.
기타 다른 이야기들도 있지만, 마침 잘 정리해 놓은 좋은 참고 자료가 있어, 번역해서 올려봅니다.
PS.참! 어떤 곳에서는 USB 허브를 이용해서 자리 바꿔 안지 않고 아예 여러명이 키보드를 놓고 한다는 곳도 있더라구요. :)
--------- Started Here ---------
짝 프로그래밍 팁과 트릭 (Pair Programming Tips And Tricks)
시작하기
- 좀 도와 주시겠어요?
- 함께 하셔요! :)
페어 프로그래밍 도중에는
- 제가 해볼게요!
- 해보실래요?
- 제 계획은 이렇습니다. 뭔가하면...
- 어떤 식으로 하실 생각이신가요?
- 이제 무얼 할까요? 다음 단계를 뭐죠?
- 뭔가 빼먹은 건 없나 모르겠네요. 생각나시는게 있으세요?
- 우선 좀 짜 보죠.
- 방금 짠 코드는 잘 동작하는 것 같나요? 단위 테스트를 해 보죠.
- 무얼 테스트 하실건가요?
- 좀 더딘것 같은데요. 어떻게 되가죠?
- 잘 이해가 안돼요. 그림을 한 번 그려보시겠어요? 설명해 주세요!
휴식
- 좀 쉴까요?
- 그만 할까요?
- 자리를 바꿔보면 어때요?
- 나가서 좀 쉽시다!
경우에 따라서는
- 제가 잠시 혼자 살펴봐도 될까요? (페어 프로그램은 아니지만 집중적인 페어 프로그래밍후에 긴장 완화 시킬 수 있다. 단, 단지 '살펴보는' 수준일 경우에 한해서 말이다.
하지 말아야 할 것
-
짜증!
명심할 내용:
- 강요하지 말것. 페어 프로그래밍을 강요하면 오히려 페어 프로그래밍을 하는 것에 대한 사람들사이의 반감을 증가시킬 것이다.
- 혼자 너무 오래 코딩하지 말것. 돌아가면서 한다.
- 충분하게 코딩한 다음 키보드를 넘긴다.
- 의사소통하라. : 듣는 것, 말하는 것 둘 다.
- 자주 쉬어라. 쉬는 시간을 건너뛰진 말아라. (가이드라인: 초심자일 경우 15분, 숙련자의 경우는 45분)
- 짝도 나눈다. 다른 짝들과 바꿔본다.
- 즐겨라
- 믿음을 가질 것
- 우선은 자신이 잘못했을 가능성을 먼저
생각하여라 - 당신의 에러를 인식해라. 가능한 빨리.
- 자존심을 세우지 말아라
- 옆에 있는 사람을 놔눈채 혼자만 달리지 말자
- 적응에 따라 차차 속도를 높인다
- 당신보다 경험이 적은 사람과 함께 짝이 되어본다.
- 당신보다 경험이 많은 사람과 함께 짝이 되어본다,
- 코드는 짝 프로그래밍을 하는 두 사람중 어느 사람의 것도 아니다. 하지만 체크인 하기 전까지, 변경에 대한 책임은 둘에게 있다.
- 언제나 코드에 대화를 담기위해 노력하여라.
'Better SW Development' 카테고리의 다른 글
[가이드북] 형상관리(Subversion)와 이슈 관리(Trac)를 연동하여 프로젝트 개발 환경에 적용하기 (12) | 2009.01.19 |
---|---|
[번역 통합] 허드슨을 이용한 지속적인 통합 (Continuous integration with Hudson) (7) | 2009.01.15 |
이슈관리 공학도구(Trac) 소개 및 예제화면, FAQ (3) | 2009.01.12 |
[번역] 허드슨을 이용한 지속적인 통합(Continuous integration with Hudson) #4 (0) | 2009.01.06 |
XMPP 기반 메신저 Spark와 google talk 연동하기 (1) | 2009.01.05 |