Learning
토픽 112 / 192·소프트웨어 표준과 법제도

Mob Programming (몹 프로그래밍)

Mob Programming (몹 프로그래밍)

3명 이상의 팀원이 한 컴퓨터에서 하나의 태스크를 함께 수행하는 협업 개발 방식으로, Driver(타이피스트)와 Navigator(팀원 전체)가 협력하며 지식 공유와 집단 의사결정을 극대화하는 팀 프로그래밍 기법

목적: 팀 전체 지식 공유, 집단 코드 소유, 높은 코드 품질, 병목 제거, 학습 문화

특징: 팀 전체 참여, Driver 순환, 실시간 의사결정, 모든 코드 전원 검토

역할

  • Driver(타이피스트): 코드 입력만, 독자적 결정 금지, Navigator 지시 따름
  • Navigator(팀 전체): 방향 제시, 설계 결정, 문제 해결, Driver에게 구술

동작 방식

장점: 전원 지식 공유, 사일로 제거, 높은 코드 품질, 즉각적 의사결정, 팀 빌딩, 온보딩 최적

단점: 비용(전원 투입), 피로도, 내향적 성향에 어려움, 모든 작업에 부적합

적용 상황: 복잡한 문제, 신규 프로젝트 킥오프, 팀 빌딩, 중요 기능, 학습 목적

도구: 대형 모니터/프로젝터, Timer, 원격 시 화면 공유(Tuple, VS Code Live Share)

비교: Mob(팀 전체/높은 품질/비용 높음) vs Pair(2명/균형) vs Solo(1명/독립/속도 빠름)

연관: Pair Programming, XP, 애자일, 집단 코드 소유, 지식 공유