Level 1 시작하기

기획자·PM을 위한 실습 과정 Level 1 + 심화 트랙 A~D

이슈와 PR 기록으로 완료 확률을 계산하고 병목을 찾고 통제를 증명한다

lab14-evm.htmlLevel 1 · 실습 14
EVM 계산기 화면
EVM 계산기가 기준일 10월 21일에 PV 63, EV 32, AC 42로 SPI 0.51, CPI 0.76을 계산하고 예상 완료일을 그린다.

주간 회의마다 나오는 “언제 끝나는가”, “어디서 기다리는가”, “승인 없이 들어간 변경은 없는가”에 GitHub CLI(gh)와 키트 스크립트로 답한다. Level 1에서 업무 6개짜리 백로그로 스프린트를 운영하고, 심화 트랙 네 개에서 같은 기록을 측정, 통제, 프로세스 마이닝, 프로젝트 관리 표준으로 넓힌다.

회차
22회 × 180분
실습과 모듈
45개
키트 스크립트
44개
실습 로그 사건
1,988건

명령과 실제 출력

다섯 과정의 키트 명령 8개를 차례로 실행한다

백로그 등록, EVM, 확률 예측, 병목 분석(Level 1), 관리도(A), 4-eyes 점검(B), 리뷰 배정 시뮬레이션(C), 우선순위 비교(D)의 명령과 출력이다. 출력은 키트 스크립트를 교안의 예시 데이터로 실행한 결과다.

~/gh-pm-lab Level 1
$ bash github-pm-starter-kit/forecast.sh --remaining 5 --throughput 2,3,1,4,2,3,2,0 --start 2026-10-26 --deadline 2026-11-06 | sed -n "/^| 확률/,/끝낼 확률/p"
| 확률 | 완료까지 | 그 주의 금요일 |
| - | - | - |
| 50% | 3주 | 2026-11-13 |
| 85% | 4주 | 2026-11-20 |
| 95% | 4주 | 2026-11-20 |

- 마감일 2026-11-06까지(2주) 끝낼 확률: 46%
  1. Level 1
  2. A
  3. B
  4. C
  5. D

PM이 매주 받는 질문

질문 다섯 개에 숫자로 답한다

아래 답은 모두 이 과정의 실습에서 키트 스크립트가 낸 값이다. 실습 데이터는 가상 사례인 Launchpad(업무 6개)와 Orbit(업무 260건)이다.

  1. Level 1

    이번 스프린트는 계획보다 얼마나 늦었고, 남은 일은 언제 끝나는가

    SPI 0.5185% 확률 완료일 11월 20일

    evm-report.sh, forecast.sh · 실습 14, 15

  2. 트랙 A

    이번 주 리뷰 대기가 줄어든 것은 개선의 결과인가, 늘 있는 흔들림인가

    6월 22일 주관리도에서 첫 신호(규칙 2)

    xmr.sh · A2

  3. 트랙 B

    승인 없이 main에 들어간 변경은 없는가

    129건 중 5건4-eyes 위반, 미해결 4건

    four-eyes.sh · B4

  4. 트랙 C

    리뷰어를 한 명 늘릴까, 리뷰 당번을 둘까

    5.6h 대 3.2h첫 리뷰 대기 중앙값, 시뮬레이션 200회

    review-sim.py · C3

  5. 트랙 D

    다음 분기에 여섯 가지 후보 중 무엇부터 하는가

    2,830만원입력 순서 대비 CD3 순서의 지연 비용 차이

    wsjf.sh · D4

Level 1180분 × 6회실습 29개선행 과정 없음

GitHub로 하는 PM

수업 전 준비에서 gh를 설치하고 로그인한 뒤, 1회차부터 이슈, 마일스톤, Project, PR로 2주 스프린트를 운영한다. 3회차부터는 그 기록을 WBS와 주경로, 획득가치관리(EVM), 몬테카를로 예측의 입력으로 쓰고, 5~6회차에는 가상 팀 Orbit의 6개월 로그로 프로세스 마이닝을 한다.

  1. 1회차업무 구조 만들기: 저장소, 마일스톤, 라벨, Project, 백로그 일괄 등록
  2. 2회차진행 읽기와 회의 운영: 막힘, PR 읽기, 주간 사전 리포트, 스프린트 종료
  3. 3회차PM 방법론 적용: WBS와 주경로, EVM, 흐름 지표와 확률 예측, 상태 보고
  4. 4회차기록 확장: 위키, 브랜치, 토론, 리드·래그, 프로세스 마이닝 첫걸음
  5. 5회차이벤트 로그와 병목: 로그 품질 점검, 프로세스 발견, PM4Py, 병목 분석
  6. 6회차인사이트와 개선: 적합성 검사, 묶음 비교, 개선 효과 어림, 정기 분석

내 실습 저장소에 남는 것

  • Project 보드와 업무 6개
  • 주간 사전 리포트
  • 스프린트 종료 기록
  • EVM·예측 보고
  • 위키
  • 프로세스 지도
  • 프로세스 분석 보고서
  • 개선안
Level 1 교안 열기
교안 화면
seed-backlog.sh를 미리 보기로 실행한 뒤 등록하는 터미널 화면
seed-backlog.sh를 미리 보기로 실행한 뒤 업무 6개를 이슈로 등록하고 Project에 추가한다. 실습 5.
직접 돌려 보기 · 실습 15

남은 업무는 언제 끝나는가: 몬테카를로 10,000회

과거 8주 처리량

23142320

시작 주 2026-10-26(월), 마감 2026-11-06(금). 매 시행마다 과거 처리량에서 한 주씩 뽑아 남은 업무가 0이 될 때까지 더한다.

마감까지 끝낼 확률46.0%
50% 확률11-13
85% 확률11-20
시행10,000

forecast.sh와 같은 난수(시드 42)와 같은 식으로 계산한다. 남은 업무 5건이면 키트의 출력과 같은 46.0%, 36.7%, 12.7%가 나온다.

트랙 A180분 × 4모듈선행: Level 1 실습 1~29

측정과 판단

같은 “리드 타임”도 정의에 따라 Orbit 로그의 중앙값이 9.3일, 62.7h, 5.9일, 33h로 달라진다. 트랙 A는 지표를 정의서로 고정하고, 주별 숫자의 오르내림이 신호인지 늘 있는 흔들림인지 관리도로 가르고, 예측을 기록해 보정하고, 대조군으로 개선 효과를 판정한다.

  1. A1
    측정 체계 설계이 지표는 어떤 결정에 쓰이는가. 두 사람이 계산하면 같은 값이 나오는가
  2. A2
    변동 읽기: 통계적 공정 관리이번 주 처리량이 적은 것은 신호인가, 늘 있는 흔들림인가
  3. A3
    추정, 예측, 보정“90% 확률로 이날까지”라고 한 예측은 실제로 몇 %가 맞았는가
  4. A4
    개선 효과 판정리뷰 당번이 효과가 있었다고 말하려면 무엇과 비교해야 하는가

남는 것

  • 지표 정의서 5개
  • 관리도와 신호 판정 규칙
  • 예측 보정 기록
  • 효과 판정 보고서
트랙 A 교안 열기
직접 돌려 보기 · A2

Orbit의 주별 첫 리뷰 대기, 어느 주부터 신호인가

중심선6.82h
상한13.70h
첫 신호(6월 이후)06-22
신호 주10

값은 xmr.sh가 Orbit 로그에서 계산한 주별 중앙값(업무 시간)이다. 신호는 규칙 1(한계 밖), 규칙 2(연속 3점 중 2점이 2시그마 밖), 규칙 3(한쪽에 연속 8점)으로 판정한다.

xmr.sh로 Launchpad의 8주 처리량을 관리도로 판정하는 터미널 화면
교안의 실습 터미널xmr.sh가 Launchpad의 8주 처리량 2, 3, 1, 4, 2, 3, 2, 0에서 상한 6.7을 계산하고 신호가 없다고 판정한다. A2.

트랙 B180분 × 4모듈선행: Level 1 실습 9, 12, 18, 26, 29

GitHub로 하는 통제

“승인 없는 변경은 main에 들어가지 않는다”는 통제 목표를 규칙 세트, CODEOWNERS, 변경 요청 양식으로 강제하고, 병합된 PR 전체를 점검해 증적으로 남긴다. 감사인이 묻는 “그 통제가 실제로 동작했는가”에 명령 한 줄의 출력으로 답한다.

  1. B1
    기준선과 변경 통제변경 요청 양식, CODEOWNERS, 기준선 태그와 기준선 차이 보고
  2. B2
    규칙 세트, 승인, 접근main 규칙 세트와 통제 매트릭스, 접근 권한 점검
  3. B3
    추적성과 감사 증적릴리스에 들어간 변경을 PR과 업무까지 거슬러 잇는 추적 보고
  4. B4
    통제 점검 자동화PR 이벤트 로그, 4-eyes 점검, 주간 통제 점검 워크플로

남는 것

  • 변경 통제 절차서
  • 통제 매트릭스
  • 릴리스 추적 보고
  • 분기 통제 점검 보고
트랙 B 교안 열기
직접 돌려 보기 · B2, B4

병합된 PR 129건, 규칙 세트를 켜면 몇 건이 막히는가

2026-06-01부터 2026-08-28까지 병합된 PR 129건을 병합 순서대로 놓았다. 위반 5건은 버튼으로 고를 수 있다.

점검한 PR129
4-eyes 위반5
규칙 세트가 막았을 위반0 / 5

칸 하나가 PR 하나다. 색이 있는 칸을 고르면 four-eyes.sh가 판정한 내용을 보여 준다.

PR 목록과 판정은 B4의 예시 로그(b-pr-events.csv)를 four-eyes.sh로 점검한 결과다. 두 설정은 B2에서 Launchpad의 규칙 세트에 꺼져 있던 항목이다.

four-eyes.sh로 Launchpad v0.1.0의 PR을 점검하는 터미널 화면
교안의 실습 터미널four-eyes.sh가 Launchpad v0.1.0의 PR 기록에서 미해결 위반 2건(#22, #26)을 찾는다. B4.

트랙 C180분 × 4모듈선행: Level 1 실습 22~29

프로세스 마이닝 심화

Level 1의 프로세스 마이닝은 업무 하나를 사례 하나로 보았다. 트랙 C는 업무, PR, 사람이 얽힌 기록을 객체 중심 이벤트 로그(OCEL 2.0)로 다루고, 발견 알고리즘을 비교하고, 리뷰 대기를 대기열로 보고 시뮬레이션으로 배정 정책을 고르고, 진행 중인 업무의 지연을 예측해 경보로 운영한다.

  1. C1
    객체 중심 이벤트 데이터사례 하나로 줄이면 숫자가 어떻게 바뀌는가
  2. C2
    발견과 적합성 심화알고리즘마다 다른 모델 중 무엇을 고르는가, 날짜를 몰라도 변화를 찾는가
  3. C3
    대기열, 자원, 시뮬레이션리뷰어 추가와 리뷰 당번 중 어느 쪽이 대기를 더 줄이는가
  4. C4
    예측 모니터링과 운영열린 업무 중 늦어질 것을 미리 아는가, 경보는 하루 몇 건이 적당한가

남는 것

  • Orbit OCEL 파일
  • 모델 비교 보고
  • 시뮬레이션 정책 비교표
  • 경보 기준과 모델 문서
트랙 C 교안 열기
직접 돌려 보기 · C3

PR 첫 리뷰를 누구에게 맡기는가

첫 리뷰 대기 중앙값6.4h
대기 85%14.2h
가장 많이 맡은 사람의 몫50%
처리 시간 중앙값37.9h

점 하나가 첫 리뷰를 기다리는 PR 하나이고, 오른쪽으로 갈수록 오래 기다린 것이다. 첫 리뷰가 오면 점이 사라지고 기다린 시간 자리에 눈금이 남는다. 화면은 업무 1시간을 0.35초로 줄여 3~5월의 배정 비율과 리뷰어별 응답 지연을 보여 준다. 아래 숫자는 review-sim.py를 3~5월 로그로 추정해 200회 반복한 평균이다(관측값 6.8h, 52%, 36.8h).

review-sim.py로 리뷰 배정 정책을 비교하는 터미널 화면
교안의 실습 터미널review-sim.py가 3~5월 로그로 리뷰어별 응답 지연을 추정하고, 배정 정책 네 가지를 200회씩 시뮬레이션해 비교한다. C3.

트랙 D180분 × 4모듈선행: Level 1 실습 1~16

프로젝트 관리 본류

Level 1에서 쓴 2주 Iteration과 회고는 스크럼에서, 마일스톤 마감일, 주경로, 획득가치, 위험 등록부는 PMBOK과 PRINCE2 같은 예측형 관리에서 왔다. 트랙 D는 무엇을 가져와 쓰는지 맞춤 원칙으로 적고, 일정 위험을 확률로 계산하고, 결정 요청과 우선순위를 GitHub 기록으로 운영한다.

  1. D1
    표준과 방법론 맞춤어떤 표준의 무엇을 가져오고 무엇을 버렸는가
  2. D2
    불확실성과 리스크마감까지 남은 위험을 P50·P80·P90과 마감 확률로 말한다
  3. D3
    이해관계자, 소통, 의사결정누가 결정권을 갖고, 나쁜 소식은 언제 알리는가
  4. D4
    팀, 거버넌스, 가치여러 일이 같은 사람을 두고 경쟁할 때 무엇을 먼저 하는가

남는 것

  • 팀 맞춤 원칙
  • 일정 위험 분석 보고
  • 소통 계획과 결정 요청 양식
  • 포트폴리오 우선순위표
트랙 D 교안 열기
직접 돌려 보기 · D4

후보 6건의 순서만 바꿔도 지연 비용이 달라진다

총 지연 비용22,420만원
가장 작은 순서와의 차이+2,830만원

한 팀이 후보를 하나씩 끝낸다고 보고, 후보마다 주당 지연 비용 × 완료 주차를 더한다. 입력은 D4의 예시 포트폴리오(d-portfolio.tsv)이고, 값은 wsjf.sh의 출력과 같다.

sra.sh로 일정 위험을 분석하는 터미널 화면
교안의 실습 터미널LP-04의 3점 추정을 고친 일정으로 sra.sh가 P50·P80·P90 완료일과 마감일까지 끝낼 확률 34.7%를 계산한다. D2.

수업이 끝나면

결과물은 내 저장소의 파일로 남는다

모든 실습은 학습자 작업 폴더 ~/gh-pm-lab에서 진행하고, 결과는 pm-lab/의 Markdown, CSV, JSON 파일과 GitHub의 이슈, Project, 위키, 워크플로로 남는다. 다음 프로젝트에서는 키트의 업무 목록과 양식만 바꿔 같은 명령을 다시 쓴다.

  • 24개이슈 양식, PR 양식, 워크플로, 보고서 양식
  • 44개Bash와 Python 스크립트. 대부분 GitHub에 쓰지 않고 읽기만 한다
  • 2개예시 사례. Launchpad(업무 6개)와 Orbit(업무 260건, 사건 1,988건)
~/gh-pm-lab/pm-lab
├── backlog-map.tsv               실습 5
├── sprint-1-report.md            실습 12
├── evm-history.csv               실습 14
├── status-2026-10-21.md          실습 16
├── event-log.csv                 실습 20
├── process-analysis-report.md    실습 27
├── proposal-blocked.md           실습 28
├── metrics/                      A1
├── signal-rules.md               A2
├── forecast-history.tsv          A3
├── effect-report.md              A4
├── trace-v0.1.0.md               B3
├── orbit-ocel.json               C1
├── model-compare.md              C2
├── sim-a.md                      C3
├── model-card.md                 C4
└── tailoring.md                  D1

전체 커리큘럼

22회차, 회차마다 180분

Level 1GitHub로 하는 PM6회 · 실습 29개

1회차 · 업무 구조 만들기

관리 구조 설계, 환경과 저장소, 마일스톤과 라벨, 업무 하나 작성하기, Project와 관리 필드, 백로그 일괄 등록, 스프린트와 보기

2회차 · 진행 읽기와 회의 운영

상태 변경과 PM 조회, 막힘과 의존성, PR과 커밋 읽기, 스프린트 운영 이슈, 주간 사전 리포트, 범위 변경과 종료, 종합 실습

3회차 · PM 방법론 적용

PM 방법론 지도, WBS와 주경로, 획득가치관리(EVM), 흐름 지표와 확률 예측, 위험과 상태 보고

4회차 · 기록 확장과 프로세스 마이닝 입문

위키로 결정과 보고 모으기, 브랜치와 PM 데이터, 로그 읽기와 논의 정리, 마일스톤과 리드·래그, 프로세스 마이닝 첫걸음

5회차 · 이벤트 로그와 병목

2단계 분석 계획, 이벤트 로그 설계와 품질 점검, 프로세스 발견, PM4Py로 모델 발견과 평가, 병목 찾기

6회차 · 인사이트와 개선

적합성 검사, 인사이트 도출, 개선안과 효과 어림, 개선 확인과 정기 분석

트랙 A측정과 판단4모듈

A1 · 측정 체계 설계

GQM, ISO/IEC/IEEE 15939 정보 모델, 척도와 조작적 정의, DORA·Flow·SPACE, 선행·후행 지표, 지표 정의서

A2 · 변동 읽기: 통계적 공정 관리

분포와 백분위, 사이클 타임 산점도, XmR 관리도, 신호 판정 규칙, 리틀의 법칙과 그 조건

A3 · 추정, 예측, 보정

PERT, 계획 오류와 참조 집단 예측, 몬테카를로 보강, 보정과 브라이어 점수, 사전 부검

A4 · 개선 효과 판정

전후 비교의 함정, 이중차분, 단계적 도입, 중단 시계열, 효과 크기와 검정력, 카플란·마이어

트랙 BGitHub로 하는 통제4모듈

B1 · 기준선과 변경 통제

변경 요청 양식, CODEOWNERS, 기준선 태그와 변경 대장, 기준선 차이 보고, 변경 통제 절차서

B2 · 저장소 통제: 규칙 세트, 승인, 접근

main 규칙 세트, 통제 매트릭스(목표, 설정, 판정, 우회, 증적 명령, 점검 주기, 담당), 접근 권한 점검

B3 · 추적성과 감사 증적

릴리스 추적 보고, 빈 곳 판정 표, 증적 보존 규칙

B4 · 통제 점검 자동화

PR 단위 이벤트 로그, 통제 규칙 파일, 4-eyes 점검, 통제 점검 워크플로, 분기 통제 점검 보고

트랙 C프로세스 마이닝 심화4모듈

C1 · 객체 중심 이벤트 데이터

OCEL 2.0(JSON, SQLite), 평탄화와 수렴·발산, 객체 중심 직접 이어짐 그래프

C2 · 발견과 적합성 심화

발견 알고리즘 비교, 선언적 제약 발견, 규칙 파일 개정안, 통계 검정으로 찾는 프로세스 표류

C3 · 대기열, 자원, 시뮬레이션

대기열 마이닝, 조직·결정 마이닝, SimPy 시뮬레이션의 검증과 정책 비교

C4 · 예측 모니터링과 운영

접두사 기반 결과 예측, 시간 순 평가와 보정표, 경보 기준과 하루 경보 목록, 모델 문서

트랙 D프로젝트 관리 본류4모듈

D1 · 표준과 방법론 맞춤

주요 표준과 방법론 비교, 같은 Launchpad를 세 방식으로 운영할 때의 대응표, 팀 맞춤 원칙

D2 · 불확실성과 리스크

리스크 이슈 양식, 결정 나무, 3점 추정 일정 위험 분석, 예비 일정 산정, 리스크 소진 표

D3 · 이해관계자, 소통, 의사결정

이해관계자 분석표, 소통 계획, 결정 요청 양식, 결정 대기 목록과 매일 점검 워크플로

D4 · 팀, 거버넌스, 가치

용량과 WIP 한도, 관문 기준, WSJF·CD3 포트폴리오 우선순위, 효익 추적 계획

수강 대상

GitHub 웹을 써 본 기획자, PM, 디자이너

  • 주간 회의 전에 진행 상황을 이슈와 PR 기록으로 미리 읽고 싶은 PM
  • “언제 끝나는가”에 날짜 하나 대신 확률로 답하고 싶은 기획자
  • 개발 프로세스의 병목을 감이 아니라 로그로 보여 주고 싶은 팀 리드
  • 승인, 변경, 릴리스 기록을 감사 증적으로 정리해야 하는 담당자

준비물

계정
GitHub 계정. 실습 저장소는 1회차에 새로 만든다
도구
GitHub CLI 2.97.0 이상, jq 1.6 이상
셸
macOS·Linux 터미널, Windows는 Git Bash 또는 WSL
Python
실습 24와 트랙 A·C의 일부 스크립트에서 3.9 이상
수업 전 준비 페이지 보기

자주 묻는 질문

시작하기 전에

명령줄을 처음 쓴다. 따라갈 수 있는가

수업 전 준비 페이지가 gh 설치, gh auth login, 권한 점검을 단계별로 안내하고, 1회차 실습 1은 셸 변수와 실습 저장소 만들기부터 시작한다. 교안의 모든 명령에는 복사 버튼과 실제 출력이 함께 있고, 진도를 놓쳤을 때는 catch-up.sh가 실습 1~5의 결과를 한 번에 만든다.

회사 저장소나 실제 데이터가 있어야 하는가

필요 없다. Level 1은 1회차에 만든 실습 저장소에 Launchpad 업무 6개를 키트 스크립트로 등록해 진행한다. 5~6회차와 트랙은 가상 팀 Orbit의 합성 로그(업무 260건, 사건 1,988건)를 쓴다. 실제 팀의 기록이 아니므로 그대로 내려받아 실습한다.

트랙은 어떤 순서로 듣는가

Level 1을 마친 뒤 어느 트랙이든 고른다. 트랙끼리는 순서가 없고, 각 트랙 안내 페이지에 필요한 Level 1 실습이 적혀 있다. 트랙 D는 읽기와 토론이 많아 격주 세미나로 운영할 수도 있다.

스크립트가 내 저장소를 바꾸지는 않는가

GitHub에 쓰는 스크립트는 백로그 등록, 진도 따라잡기, 의존성 연결, 위키 동기화 네 개다. 백로그 등록은 --dry-run으로 계획을 먼저 보여 주고 y 입력을 기다린다. 나머지 스크립트는 GitHub를 읽기만 하거나 로컬 파일만 읽는다.

교안의 명령은 어느 버전 기준인가

GitHub.com과 gh 2.101.0을 기준으로 하고, 최소 2.97.0에서 동작한다. 기준일은 2026-10-07이다. 명령의 옵션과 출력 형식은 gh 2.101.0의 도움말과 소스 코드로 확인했다.

첫 180분이 끝나면 내 Project 보드가 생긴다

1회차가 끝나면 실습 저장소에 출시 목표 2개, 라벨 7개, 업무 6개, Project 하나와 필드 셋, 스프린트 두 개, 보기 세 개가 만들어져 있다.

다섯 과정 22회차 Level 1 시작하기