← 자료실/sprintsLOW

Phase 2+3 Roadmap Re-integration — 2026-04-21 (v2.0 REVISED)

sprints/phase-2-roadmap-2026-04-21.md

Phase 2+3 Roadmap Re-integration — 2026-04-21 (v2.0 REVISED)

작성: 2026-04-21 (project-manager) · 근거: 기존 10건 승인본 + Sp06+ 리서치 v1.0 APPROVED (2026-04-21) + 메모리 13건 + Sprint 00/01 문서 문서 상태: v2.0 APPROVED (v1.0 2026-04-21 선작성 → 같은 날 PD Gap 회신 + Sp06+ 5대 결정 반영하여 재작성 → 2026-04-21 PD 신규 결정 4건 전량 승인) PD 결정 (2026-04-21, v2.0 신규 4건): - D1 휴식/Firebase 준비 주차 = V3 Sp05↔Sp06 통합 1주 (2026-07-13~07-20) — 회고 2h + Firebase 준비 6h + Phase 3 계획 2h + 번아웃 완충. 전체 종료일 2026-09-14 (1주 순연) - D2 Phase 2/3 공식 명명 = B 분리 (Phase 2 MVP Sp00~05 2026-07-13 / Phase 3 확장 Sp06~09 2026-09-14) - D3 Sp09 재검토 분기 사전 힌트 = D 무힌트 (Sp06~08 실측 후 Sp08 W2 종료일 2026-08-31 PD·game-designer·code-lead 3자 검토로 결정) - D4 Sp07 W1 game-designer 수치 선행 발주 = A Sp06 킥오프 동시(2026-07-13) — Sp06 코딩 중 속성 시트 병렬 작성. 2026-07-20 D-7 교차 검토 1h 예약 범위: Sp00~Sp09 총 10 스프린트 (Phase 2 = Sp00~Sp05 MVP 골격 / Phase 3 = Sp06~Sp09 확장 레이어) 제약: 감지·통합·권고만. Sp01~05 APPROVED + Sp06+ 5대 결정 일체 불변. 수치·구조·설계 변경 금지.

§0 v1.0 → v2.0 주요 변경점 (PD 30초)

  1. Gap 해소: v1.0의 Sp03↔Sp04 4주 / Sp04↔Sp05 6주+ gap은 PM 스케줄링 아티팩트로 확정 (PD 2026-04-21 회신). "방치형 RPG"는 장르명, 일정에는 방치 없음. 전 스프린트 gap 0주차로 연속 압축.
  2. Phase 3 신설: Sp06~Sp09 4개 스프린트 × 15h = 60h 추가. Phase 2(Sp00~Sp05 MVP) / Phase 3(Sp06~Sp09 확장 레이어)로 구분.
  3. 종료일 단축: v1.0 Phase 2 종료 2026-09-21 → v2.0 Phase 2 종료 2026-07-13(Sp05 W2) / Phase 3 종료 2026-09-07(Sp09 W2). 총 기간 20주 → 18주 (압축 2주 + 확장 8주 순증 6주).
  4. 의존성 그래프: R01~R28 + R29~R42 (14 노드 신규). Critical path는 Sp05 R26에서 Sp06 R30(MythicEssence 소비처) → Sp07 R35(저항) → Sp08 R38(프리셋) → Sp09 R40(분기)로 연장.
  5. 리스크 R1 번아웃 재평가: 18주 연속 → 중~고. 휴식 주차 1~2주 삽입 시나리오 V1 / Firebase 준비 주차 V2 / 통합안 V3 3종 제시 (§6 R1).
  6. PD 결정 요청 재정리: v1.0 D1~D5 중 D1(gap 이유) 해소, D4(Sp06+ 로드맵) 해소. 신규 D1~D4 4건 (§7).

§1 로드맵 요약 (PD 1분)


§2 Gantt 차트 (주차표)

기준: 2026-04-20 월요일 시작. 각 칸 = 1주. 색/기호:

주차주 시작일PhaseSp진행마일스톤·비고
W12026-04-20P2Sp00▓▓W1Sp00 킥오프 + D+1 Smoke Test 통과 [m]
W22026-04-27P2Sp00▒▒버퍼10건 승인본 부설 완료 + Sp06+ 리서치 APPROVED [m]
W32026-05-04P2Sp01▓▓W1Sp01 킥오프. TSV 3종→SO Importer 3SO 생성 [m]
W42026-05-11P2Sp01▓▓W2Lookup + Tests.Editor 신설 + 5~8 Green
W52026-05-18P2Sp02▓▓W1프레스티지 30항목 수치 시트 + TsvReader 공통화
W62026-05-25P2Sp02▓▓W2PlayerPrestigeState(struct+List) + JSON + 6훅. D-2 BuildSummary 축4 재확인 [!]
W72026-06-01P2Sp03▓▓W1Sp03 킥오프. IdleRewardCalculator 하이브리드
W82026-06-08P2Sp03▓▓W2IdleTicker + OnIdleReward 실배선 + Smoke 10h
W92026-06-15P2Sp04▓▓W1Sp04 킥오프. AffixPoolSO 실수치 + 셋 제외
W102026-06-22P2Sp04▓▓W2재롤 시스템 + 10빌드 시뮬 매트릭스
W112026-06-29P2Sp05▓▓W1Sp05 킥오프. Firebase + SeasonController + T1~T5
W122026-07-06P2Sp05▓▓W2Migrate 실배선 + Smoke 전체 루프. [m] Phase 2 종료
W132026-07-13P3Sp06▓▓W1Phase 3 시작. 이월 5건 소화 T1~T3 (Legendary / Essence 소비처 / SeasonEndModal)
W142026-07-20P3Sp06▓▓W2Firestore CF + 211행 한글명 이식
W152026-07-27P3Sp07▓▓W1속성 4종 enum + affix elementalDmgPct 4분기. [!] 어픽스 30 유지 검증
W162026-08-03P3Sp07▓▓W2저항 4종 + 프레스티지 "원소 피해" 연동 + Tests
W172026-08-10P3Sp08▓▓W1주간 이벤트 2종 Firestore weekly_ranking + CF
W182026-08-17P3Sp08▓▓W2프리셋 3~5 슬롯 + prestige.v2.json → v3 마이그
W192026-08-24P3Sp09▓▓W1재검토 분기. Sp06~08 실측 기반 택1 (Follower / 속성확장 / 수호자) [?]
W202026-08-31P3Sp09▓▓W2선택 분기 구현. [m] Phase 3 종료 / 전체 종료 2026-09-07

병렬 담당: W1 = game-designer 수치 시트 선행 / code-lead 인프라. W2 = code-lead 런타임·테스트 / PM D+7 중간점검 + D+14 회고. Phase 3는 Sp07 W1 속성 수치, Sp08 W1 이벤트 수치 시트에서 game-designer 재가동.

§2.1 옵션 삽입 시나리오 (휴식 / Firebase 준비)

시나리오삽입 위치주차종료일비고
V0 기본 (현재안)없음18주 연속2026-09-07번아웃 리스크 중~고
V1 휴식 1주 (권장)Sp06↔Sp07 사이 (W14 종료 후)+1주2026-09-14Phase 2 완주 후 1주 쉼. P3 진입 전 실측 관찰 겸용
V2 Firebase 선행 1주Sp04↔Sp05 사이 (W10 종료 후)+1주2026-09-14Sp05 T4 러닝커브 선행 흡수. Firestore 에뮬 학습
V3 통합 1주 (최적)Sp05↔Sp06 사이 (W12 종료 후)+1주2026-09-14Phase 2 종료 회고 + Phase 3 계획 + Firestore CF 선행 학습 동시 소화
V4 휴식 2주V3 + Sp08↔Sp09+2주2026-09-21번아웃 안전 최대치. 단 Phase 2 동일 종료 2026-07-13

PM 권장: V3 — 1주 비용으로 (a) Phase 2 완주 회고 / (b) Firebase Cloud Function 선행 학습 / (c) Phase 3 Sp06 이월 5건 우선순위 재확인 동시 해결. 번아웃 완충도 겸함.


§3 의존성 그래프 (확장)

§3.1 노드 (Phase 2 R01~R28 + Phase 3 R29~R42 신규)

Phase 2 (Sp00~Sp05): R01~R28 — v1.0 §3.1 그대로 유지 (변경 없음, 본 문서 §3.3 시그니처 표 참조).

Phase 3 신규 노드:

[Sp06 이월 5건 — game-designer 수치 이미 APPROVED]
  R29  Legendary 고정 Power 6종 (affix_pool Q2, 장비종류별 차등)
  R30  MythicEssence 소비처 (sprint-05 Q7, 상점/크래프팅 + 지갑 확장) ★ CRITICAL PATH
  R31  SeasonEndModal UI (sprint-05 §7 MigrateSeasonalToPermanent 수신)
  R32  Firestore Cloud Function (sprint-05 Q5 seasonEndUtc 서버 권위화)
  R33  OptionItemRandom 211행 한글명 이식 (localization.csv 병합)

[Sp07 속성 시스템 — D2 4속성]
  R34  Element enum (Fire/Cold/Lightning/Poison)
  R35  elementalResPct 저항 4종 + stack_policy 하드캡 75% ★ CRITICAL PATH
  R36  affix_pool.tsv `elementalDmgPct` 1행 → 4분기 (30개 유지)
  R37  prestige Offense #7 "원소 피해" 4속성 분기 (선반영 활용)

[Sp08 이벤트 + 프리셋]
  R38  prestige.v2.json → v3.json presets[] 스키마 마이그 ★ CRITICAL PATH
  R39  Firestore weekly_ranking 컬렉션 + CF 주간 리셋
  R40a 주간 제한 던전 2종 스펙 (Legendary금지 / 공속부스트)

[Sp09 재검토 분기 — 미확정 택1]
  R40b Option A: 수호자(Guardian) 펫 전투 참여 확장 (15h) — 가장 유력
  R41  Option B: Follower NPC 1슬롯 (20h+ → 2 스프린트 분할) — 아트 리스크
  R42  Option C: 속성 6속성 확장 (Holy/Shadow 추가) (10h)

§3.2 엣지 (Phase 3 추가분)

R26 (Sp05 Migrate 발화자) ─┬─ R30 (MythicEssence 지갑 확장) ─┐
                          │                                   │
R27 (PlayerWalletState) ──┘                                   │
                                                              ├─ R38 (prestige v3) ─ R40* (Sp09 분기)
R28 (IMythicConstraint) ─── R29 (Legendary Power) ────────────┤
R11 (BuildSummary) ──── R37 (Offense #7 원소피해 4분기) ──────┤
R18 (AffixPool) ──── R36 (elementalDmgPct 4분기) ──── R34 ──┤
                                                              │
R22 (SeasonController) ──── R31 (SeasonEndModal) ─────────────┤
R23 (Firebase init) ──── R32 (Cloud Function) ── R39 (weekly) ┘
R18 수치 ──── R33 (211 한글명) ── (병렬, 비블로킹)
R34 (Element) ── R35 (저항 stack_policy) ── R37 연동

§3.3 고정된 API 시그니처 (Phase 3 추가 계약)

계약정의처소비처상태
PlayerWalletState.AddMythicEssence(int) / SpendMythicEssence(int)Sp05 R27Sp06 R30 상점 로직✅ Sp05 APPROVED
OnSeasonEnd(SeasonEndPayload) 이벤트Sp05 R22 발화Sp06 R31 UI 구독✅ Sp02 tech-sketch §6 훅 3건 중 1건
AffixPool elementalDmgPct 4분기 시 총 30개 유지Sp07 R36기존 Sp04 10빌드 매트릭스 테스트 재실행⚠ Sp07 W1 착수 시 code-lead 검증 필수 (31~33 누출 차단)
Element enum (4값)Sp07 R34R35·R36·R37 공유⚠ Sp07 W1 game-designer 표준 명칭 확정 필요
PrestigeSaveDto v2 → v3 (presets[] 추가)Sp08 R38모든 기존 세이브 마이그 필수⚠ Sp05 v1→v2 마이그 패턴 그대로 재활용
weekly_ranking Firestore 스키마Sp08 R39Sp06 R32 CF 재활용⚠ Sp08 W1 게임디자이너 이벤트 수치 선행 필요

§4 병목 식별 (재산출)

§4.1 Critical Path 재산출

Sp01 R02 (DropRateTableSO)
  → Sp02 R10 (PlayerPrestigeState)
    → Sp02 R11 (BuildSummary 축4)
      → Sp03 R14 (IdleRewardCalculator)
        → Sp03 R15 (IdleTicker)
          → Sp03 R17 (OnIdleReward 배선)
            → Sp05 R26 (MigrateSeasonalToPermanent 발화)
              → Sp06 R30 (MythicEssence 소비처 + Wallet 확장)
                → Sp07 R35 (elementalResPct 저항 stack_policy)
                  → Sp08 R38 (prestige v3 presets 마이그)
                    → Sp09 R40* (분기 택1)

총 길이: 11 노드 × 2~4h 평균 = 약 26~36h 직렬 공수. 20주 일정 창 대비 크게 여유 (가용 180~270h).

§4.2 병렬 가능 구간 (Phase 3 추가)

구간game-designercode-lead비고
Sp06 W1(없음 — 이월 5건 수치 Sp05까지 전부 APPROVED)R29~R31211행 한글명은 단순 CSV 머지
Sp07 W1Element 명칭 표준 + 저항 75% 하드캡 수치 + elementalDmgPct 4분기 밸런스R34 enum + R35 stack_policygame-designer 재가동 첫 스프린트 풀과제
Sp08 W1주간 이벤트 2종 수치 (층 기준 / DPS 기준) + 보상 곡선 (MythicEssence 50/100/200)R38 v3 스키마 + R39 CF 스켈레톤game-designer 2주 연속 가동
Sp08 W2프리셋 3~5 슬롯 기본 배분 샘플 ("폭딜/방치/드롭")R38 마이그 실구현 + UI 버튼
Sp09 W1Sp06~08 실측 데이터 분석 → 분기 추천—PD 결정 D4 유예 분기

결론: Phase 3는 game-designer 풀가동 구간(Sp07~Sp08). Phase 2와 반대 패턴. Sp06 킥오프 전 game-designer Sp07 W1 수치 선행 발주 권고.

§4.3 잠재 병목 3개 (실제 위험)

  1. 축4 BuildSummary 필드 확정 지연 — Sp02 W2 (기존 v1.0 R2, 유지).
  2. Firebase 첫 도입 러닝커브 (Sp05 T4) — 설계 3h 낙관, 실제 8~12h 가능 (기존 v1.0 R1, 유지). Sp06 R32 Cloud Function이 동일 러닝커브 재현 가능성 높음 → Sp06 R32 6h 버퍼 권고 (설계 4h → 실측 6~8h 대비).
  3. 신규 — Sp07 elementalDmgPct 1→4 분기 시 어픽스 30개 유지 — affix_pool.tsv 30행 스키마를 31~33으로 누출시키면 Sp04 APPROVED 10빌드 매트릭스 테스트 재실측 필요. W1 코드리뷰에서 차단해야 함.

§5 공수 재계산

§5.1 스프린트별 공수 (Phase 3 추가)

스프린트W1W2합계버퍼출처
(Sp00~Sp05 동일)v1.0 §5.1 참조76~87h+3~4h기존 산출 유지
Sp06R29 4h + R30 3hR31 3h + R32 4h + R33 1h15h+2h (Firestore CF 러닝커브)sp06-plus-lever §5.1
Sp07R34 3h + R36 3h + R35 설계 2hR35 구현 2h + R37 2h + Tests 2h + 통합 1h15h+1.5hsp06-plus-lever §5.1
Sp08R40a 4h + R39 4hR38 3h + R40a UI 3h + Tests 1h15h+1.5hsp06-plus-lever §5.1
Sp09분기 추천·분석 2h + 착수 준비 3h구현 10h (분기별 변동)15h+2hsp06-plus-lever §5.1

§5.2 총 공수 합산

§5.3 가용 시간 vs 공수 (18주 연속)

구간주 수주당 가용 h총 가용 h공수여유
Phase 2 (Sp00~Sp05)12주10~15h120~180h76~87h + 3~4h33~93h
Phase 3 (Sp06~Sp09)8주10~15h80~120h60h + 7h13~53h
전체 18주 연속20주10~15h200~300h146~158h42~154h

옵션 삽입 영향 (V3 통합 주차 +1주):

결론: 공수는 안전권. 시간 문제 아닌 번아웃 리스크가 지배적.


§6 리스크 & 병목 액션 (6건, R1 재평가)

R1. 번아웃 리스크 (재평가 — 중~고) ⚠ NEW

R2. Firebase 첫 도입 러닝커브 (Sp05 T4) — 유지

R3. Sp02 W2 BuildSummary 필드 확정 지연 — 유지

R4. Sp07 어픽스 30 → 31~33 누출 차단 ⚠ NEW

R5. 컴파일 회귀 2~3h 버퍼 미흡 — 유지

R6. Sp09 분기 결정 지연 ⚠ NEW


§7 PD 결정 요청 (4건, 재정리)

#질문옵션PM 관찰기한
D1휴식/준비 주차 삽입 시나리오V0 기본(없음) / V1 Sp06↔Sp07 / V2 Sp04↔Sp05 / V3 Sp05↔Sp06 (권장) / V4 2주V3가 번아웃·Firebase·회고·계획 1주 비용으로 4가지 동시 해결2026-06-29 Sp05 킥오프 전
D2Phase 2/3 구분 공식 명명 여부(A) Phase 2만 Sp09까지 단일 확장 / (B) Phase 2(Sp00~Sp05 MVP) + Phase 3(Sp06~Sp09 확장 레이어) 분리 (권장) / (C) 명명 없음외부 커뮤니케이션·마일스톤 관리상 B가 명확. MVP 완성 2026-07-13 선포 가능2026-05-04 Sp01 킥오프 전
D3Sp09 재검토 분기 사전 힌트(A) 수호자(Guardian) 확장 유력 / (B) Follower NPC 유력 / (C) 속성 6종 확장 유력 / (D) 실측 데이터 100% 위임sp06-plus-lever §5 Option A 수호자 확장이 비용 15h로 가장 타이트. PD 선호 힌트 있으면 Sp08 W2 선행 설계 착수 가능2026-08-10 Sp08 킥오프 전
D4game-designer Sp07 W1 수치 선행 발주 타이밍(A) Sp06 킥오프와 동시 (2026-07-13 발주) / (B) Sp06 W2 중(2026-07-20) / (C) Sp07 W1 진입 후(2026-07-27)Element 명칭·저항 75%·4분기 밸런스 3건은 2~3h 소요. A가 안전. Phase 3 진입 동시 game-designer 재가동 공식화2026-07-13 Sp06 킥오프 전

v1.0 해소 항목: D1(gap 이유) / D2(Sp04 일정) / D3(Sp05 일정) / D4(Sp06+ 로드맵) = 4건 해소. v1.0 D5(Firebase 도입 타이밍)는 v2.0 D1 V2/V3 시나리오로 흡수.


§8 Sprint 00 이월 체크리스트 (2026-05-04 Sp01 킥오프 전 재확인)

v1.0 §8 6건 그대로 유지. 추가:


§9 업데이트 트리거

§9.1 본 로드맵 갱신 조건

트리거행동
매 스프린트 종료(D+14)PM이 §2 Gantt 해당 주차 결과 반영 + §5 실 공수 대비 추정 비교 + §6 리스크 소진 여부 체크
PD 결정 변경§7 D1~D4 변경 시 §2 Gantt·§5 공수 재계산
Sp05 W2 종료(2026-07-13)Phase 2 종료 공식 마일스톤 + V3 시나리오 채택 시 삽입 주차 실행 결과 반영
Sp08 W2 종료(2026-08-24)Sp09 분기 택1 결정 반영 + R40*/R41/R42 중 선택 노드 확정
외부 의존 발생Firebase SDK / Firestore CF / Unity 6 LTS 패치 / Addressables 2.x breaking

§9.2 갱신 주기


§10 메타정보


(끝 — v2.0 REVISED, 2026-04-21 PM 재작성)