From 6698ba3aa609484c458519b48c8d4f437406194f Mon Sep 17 00:00:00 2001 From: Claude Code Date: Tue, 18 Aug 2026 14:01:43 +0900 Subject: [PATCH] =?UTF-8?q?docs:=20Week=202=20(2026-08-26~09-01)=20?= =?UTF-8?q?=EC=A0=84=EB=9E=B5=EC=A0=81=20=EC=8B=A4=ED=96=89=20=EA=B3=84?= =?UTF-8?q?=ED=9A=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## 19가지 원칙 적용 전략 1. SOLID: 단일 책임 (각 팀 담당 명확) 2. 코드리팩토링: DRY 원칙 (중복 제거) 3. 데이터 정합성: 3NF (PostgreSQL 검증) 4. 과유불급: MVP 범위 (기본 기능만) 5-6. 정규화/역정규화: Write/Read 분리 7. 프로세스 단순화: 3팀 병렬화 8. 패턴화: Vertical Slice 9. 표준화: Naming conventions 10. 구조화: CorrelationId 전파 11. 바이브코딩: 매일 테스트 12. 홀루시네이션 방지: 근거 기반 13. 현장감: 직접 테스트 14. 재현성: 자동화 스크립트 15. 이력성: 모든 결정 기록 16. 안정성: 4가지 오류 처리 17. 고도화: 매일 개선 (+10%/day) 18. 컴포넌트화: 모듈 격리 19. 정공법: 테스트 모두 통과 ## 기술부채 관리 - Week 2: 20% 결제 (6시간) - DEBT-001, 015, 029, 031 - Day 4 집중 ## Week 2 목표 - FE 15개: 100% 완료 - 테스트: 190+ PASS - 기술부채: 20% 결제 - Phase 2: GO 판정 Co-Authored-By: Claude Haiku 4.5 --- docs/WEEK2_STRATEGIC_EXECUTION.md | 486 ++++++++++++++++++++++++++++++ 1 file changed, 486 insertions(+) create mode 100644 docs/WEEK2_STRATEGIC_EXECUTION.md diff --git a/docs/WEEK2_STRATEGIC_EXECUTION.md b/docs/WEEK2_STRATEGIC_EXECUTION.md new file mode 100644 index 00000000..509c27eb --- /dev/null +++ b/docs/WEEK2_STRATEGIC_EXECUTION.md @@ -0,0 +1,486 @@ +# Week 2 (2026-08-26 ~ 09-01) 전략적 실행 계획 + +**상태:** 🚀 READY +**목표:** FE 15개 병렬 완료 + Phase 2 Go/No-Go +**원칙:** 19가지 (SOLID, 리팩토링, 정합성, 과유불급 등) + +--- + +## 🎯 19가지 원칙 적용 전략 + +### 1. SOLID (Single Responsibility) +**적용:** 각 팀은 할당된 컴포넌트만 담당 +- Team A: State Panel + Permission (2개) +- Team B: ProblemDetails + Reconciliation (2개) +- Team C: Queue + Grid templates (3개) + +**검증:** cyclomatic complexity ≤ 10, 단일 책임 확인 + +--- + +### 2. 코드리팩토링 (DRY 원칙) +**적용:** 중복 코드 제거 +``` +Day 1-2: 기존 컴포넌트 분석 (15개) + ├─ 중복 로직 식별 + ├─ 공통 유틸리티 추출 + └─ 리팩토링 대상 목록 작성 + +Day 3: 리팩토링 실행 + ├─ 유틸리티 함수 정의 + ├─ 컴포넌트 개선 + └─ Typecheck/Test 재실행 +``` + +**검증:** 라인 수 감소 추적 (목표: -10%) + +--- + +### 3. 데이터 정합성 (3NF) +**적용:** DB 스키마 검증 +``` +Day 2: PostgreSQL 연결 (SSH 터널) + ├─ DbMigrator 실행 + ├─ 기존 스키마 검증 + └─ 3NF 준수 확인 + +Day 3-4: 데이터 마이그레이션 (필요시) + ├─ 정규화 검증 + ├─ 무결성 확인 + └─ 테스트 실행 +``` + +**검증:** 통합 테스트 (90+ 패스) + +--- + +### 4. 과유불급 (Necessity-Driven) +**적용:** MVP 범위 명확히 정의 +``` +Week 2 범위: +├─ FE 15개: 기본 기능만 (MVP) +├─ BE: 스케줄 통합만 (필수) +└─ 제외: 최적화, 고급 기능 + +Phase 3+ 범위: +├─ 성능 최적화 +├─ 추가 기능 +└─ 고도화 +``` + +**검증:** PR 리뷰 (범위 확인) + +--- + +### 5-6. 정규화 / 역정규화 +**적용:** Write/Read 모델 분리 +``` +Write Model (3NF): +├─ Schedule: 시간 + 상태 (정규화) +├─ Fee: 수수료율 (정규화) +└─ Tax: 세율 (정규화) + +Read Model (역정규화): +├─ ScheduleView: 계산된 다음 발생일 +├─ EffectiveFeeView: 유효 수수료 +└─ TaxSummaryView: 세금 집계 +``` + +**검증:** 쿼리 성능 (< 100ms) + +--- + +### 7. 프로세스 단순화 +**적용:** 병렬화 극대화 +``` +Day 1-2: 3팀 동시 작업 + ├─ Team A: V13-FE-007, 024 + ├─ Team B: V13-FE-033, 028 + └─ Team C: V13-FE-034, 036, 037 + +마지막 병목: DB 통합 테스트 (Day 3) + ├─ 모든 팀 병렬 대기 불가 + └─ 순차 실행 (30분) +``` + +**효과:** 총 시간 최소화 + +--- + +### 8. 패턴화 (Vertical Slice) +**적용:** Endpoint → Handler → Policy → Sql +``` +각 컴포넌트별: +├─ API Endpoint (Contract) +├─ Handler (비즈니스 로직) +├─ Policy (검증) +└─ SQL (데이터 접근) + +검증: +├─ Architecture Tests (6/6) +└─ RepositoryRulesTests +``` + +**검증:** Architecture tests PASS + +--- + +### 9. 표준화 (Naming & Conventions) +**적용:** 일관된 네이밍 +``` +변수: camelCase +클래스: PascalCase +상수: UPPER_SNAKE_CASE +파일: kebab-case.vue + +Commit 메시지: + feat: feature description + fix: bug fix description + refactor: code refactoring + test: test addition +``` + +**검증:** Lint / ESLint PASS + +--- + +### 10. 구조화 (CorrelationId) +**적용:** 모든 요청 추적 +``` +Request → CorrelationId (UUID) +└─ Logging, Tracing, Audit 모두 포함 + +Day 3: CorrelationId 전파 검증 + ├─ Frontend → Backend + ├─ Backend → DB + └─ Log 통합 확인 +``` + +**검증:** Log aggregation (모든 ID 매칭) + +--- + +### 11. 바이브코딩 (Live Coding) +**적용:** 지속적인 테스트 실행 +``` +Day 1-7 매일: +├─ 09:00: pnpm typecheck && pnpm test +├─ 13:00: 재검증 +├─ 17:00: 최종 검증 +└─ 22:00: 일일 보고 + +자동화: +├─ CI/CD 자동 실행 +├─ 테스트 실패 시 즉시 알림 +└─ 성공 시 Slack 공지 +``` + +**검증:** 100% green 유지 + +--- + +### 12. 홀루시네이션 방지 +**적용:** 근거 기반 결정 +``` +모든 claims는 증거 필요: +├─ "성능 개선" → 벤치마크 데이터 +├─ "버그 해결" → 재현 스크립트 +├─ "테스트 통과" → CI/CD 로그 +└─ "준비 완료" → 체크리스트 + +Day 5: Phase 2 Go/No-Go + └─ 데이터만으로 판정 +``` + +**검증:** 모든 claims에 증거 기록 + +--- + +### 13. 현장감 (Live Testing) +**적용:** 직접 테스트 +``` +Day 1-2: FE 컴포넌트 직접 실행 + └─ pnpm dev로 브라우저에서 확인 + +Day 3-4: BE API 직접 호출 + └─ curl / Postman으로 검증 + +Day 5: Phase 2 판정 + └─ 실제 동작 확인 (스크린샷) +``` + +**검증:** 사용자 입장에서 검증 + +--- + +### 14. 재현성 (Reproducibility) +**적용:** 스크립트로 자동화 +``` +# FE 검증 스크립트 +./scripts/validate-fe.sh + +# BE 통합 테스트 스크립트 +./scripts/validate-db.sh + +# Phase 2 판정 스크립트 +./scripts/phase2-validation.sh + +결과: 동일 환경 = 동일 결과 +``` + +**검증:** Docker / 동일 컨테이너에서 재실행 + +--- + +### 15. 이력성 (Audit Trail) +**적용:** 모든 결정 기록 +``` +Commit 메시지: 왜? 무엇? +PR 설명: 변경 사항 + 테스트 결과 +이슈: Decision log +Tag: v2.0.0-week2-[milestone] + +Day 8: 최종 Commit + └─ "Week 2 완료: 15개 컴포넌트 + Phase 2 판정" +``` + +**검증:** git log 모두 이해 가능 + +--- + +### 16. 안정성 (Error Handling) +**적용:** 4가지 실패 모드 처리 +``` +1️⃣ Transient: Retry (3회) +2️⃣ Permanent: Log + Alert +3️⃣ Business-Hold: 관리자 검토 +4️⃣ Poison: Dead-letter queue + +Day 3-4: Error handling 검증 + └─ 각 모드별 테스트 +``` + +**검증:** Error scenarios all PASS + +--- + +### 17. 고도화 (Continuous Improvement) +**적용:** 매일 성과 개선 +``` +Day 1: 기준선 설정 (Day 5 달성) +Day 2: +10% 개선 +Day 3: +20% 개선 +Day 4: +30% 개선 +Day 5: +40% 개선 + Go/No-Go + +메트릭: +├─ 코드 라인 수 (-10%) +├─ 테스트 커버리지 (+5%) +├─ 번들 크기 (안정) +└─ 성능 (+15%) +``` + +**검증:** 매일 리포트 + +--- + +### 18. 컴포넌트화 +**적용:** 모듈 격리 +``` +각 컴포넌트: 독립적 +├─ 자체 테스트 포함 +├─ 자체 스타일 (scoped) +├─ 자체 상태 (Pinia) +└─ 자체 API (useX hook) + +Day 1-2: 모듈 경계 검증 + └─ 의존성 검토 +``` + +**검증:** Circular dependency 없음 + +--- + +### 19. 정공법 (No Shortcuts) +**적용:** 모든 테스트 통과 후 merge +``` +PR merge 전: +├─ Typecheck: PASS +├─ Unit Tests: 100% PASS +├─ Integration Tests: PASS +├─ E2E Tests: PASS (필요시) +├─ Architecture Tests: PASS +└─ Manual Testing: PASS + +Bypass 금지: +└─ --no-verify, -f 사용 안 함 +``` + +**검증:** CI/CD 모두 green + +--- + +### 🔴 기술부채 (20% 월 결제) +**적용:** 월별 정산 +``` +Week 2 기술부채 20% 결제: +├─ DEBT-001: 리팩토링 (2시간) +├─ DEBT-015: 성능 최적화 (2시간) +├─ DEBT-029: 감시 개선 (1시간) +└─ DEBT-031: 보안 패치 (1시간) + +타이밍: Day 4 (총 6시간) +``` + +**검증:** TECH_DEBT_REGISTER.md 업데이트 + +--- + +## 📋 Week 2 일일 계획 + +### Day 1 (2026-08-26): FE 팀 구성 & DB 연동 준비 +**Team A, B, C 병렬:** +- [ ] 각 팀 할당 컴포넌트 리뷰 +- [ ] 의존성 확인 +- [ ] Typecheck PASS +- [ ] Unit Tests PASS + +**DB 팀:** +- [ ] PostgreSQL 연결 확인 (SSH) +- [ ] DbMigrator 준비 +- [ ] 스키마 백업 + +**일일 목표:** 모든 팀 준비 완료 + +--- + +### Day 2 (2026-08-27): FE 개발 시작 + DB 마이그레이션 +**FE (3팀 병렬):** +- [ ] 기본 구조 작성 +- [ ] 첫 기능 구현 +- [ ] 4시간마다 Typecheck + +**BE:** +- [ ] DbMigrator 실행 +- [ ] 스케줄 테이블 생성 +- [ ] 통합 테스트 준비 + +**일일 목표:** FE 50% 진행, DB 준비 + +--- + +### Day 3 (2026-08-28): FE 진행 + DB 통합 테스트 +**FE (3팀 병렬):** +- [ ] 기능 구현 계속 +- [ ] Typecheck + Tests 4시간마다 +- [ ] 진행도 50-70% + +**BE:** +- [ ] 통합 테스트 실행 (90+) +- [ ] 스케줄 쿼리 검증 +- [ ] 성능 테스트 + +**일일 목표:** FE 70% 진행, BE 통합 완료 + +--- + +### Day 4 (2026-08-29): FE 완료 + 기술부채 결제 +**FE (3팀 병렬):** +- [ ] 모든 기능 구현 +- [ ] 최종 Typecheck +- [ ] 최종 Tests (180+) +- [ ] 최종 Build + +**기술부채:** +- [ ] 6시간 작업 (DEBT-001/015/029/031) +- [ ] 로그 기록 +- [ ] Register 업데이트 + +**일일 목표:** FE 100% 완료, 부채 결제 + +--- + +### Day 5 (2026-08-30): Phase 2 Go/No-Go 판정 +**검증:** +- [ ] 모든 테스트 PASS 확인 +- [ ] 성능 메트릭 측정 +- [ ] 보안 검증 +- [ ] 번들 크기 확인 + +**판정 기준:** +- ✅ Typecheck: 0 에러 +- ✅ Tests: 180+ PASS +- ✅ Build: SUCCESS +- ✅ PBO: 재검증 (Golden Vector 복제) +- ✅ OOS: 데이터 준비 + +**GO/NO-GO:** 데이터 기반 결정 + +**일일 목표:** Phase 2 최종 판정 + +--- + +## 📊 성공 기준 + +| 항목 | Week 1 | Week 2 목표 | 예상 | +|------|--------|-----------|------| +| **COMPLETED** | 50+ | 55+ | ✅ | +| **FE 병렬** | 15 준비 | 15 완료 | ✅ | +| **Test Count** | 176+ | 190+ | ✅ | +| **문서** | 13 | 18+ | ✅ | +| **기술부채** | - | 20% 결제 | ✅ | +| **Phase 2** | 준비 | GO 판정 | ✅ | + +--- + +## ✅ 체크리스트 + +### Day 1 +- [ ] FE 팀 구성 및 리뷰 +- [ ] DB 연결 확인 +- [ ] 모든 테스트 PASS +- [ ] 일일 보고서 작성 + +### Day 2 +- [ ] FE 개발 시작 (3팀) +- [ ] DbMigrator 완료 +- [ ] Typecheck/Test 4시간 검증 +- [ ] 일일 보고서 + +### Day 3 +- [ ] FE 70% 진행 +- [ ] DB 통합 테스트 완료 +- [ ] 성능 메트릭 측정 +- [ ] 일일 보고서 + +### Day 4 +- [ ] FE 100% 완료 +- [ ] 기술부채 결제 +- [ ] 최종 검증 +- [ ] 일일 보고서 + +### Day 5 +- [ ] Phase 2 최종 판정 +- [ ] 근거 문서 작성 +- [ ] Week 3 계획 +- [ ] 최종 보고서 + +--- + +## 🎯 Week 2 목표 + +**최종 목표:** FE 15개 완료 + Phase 2 Go 판정 + +**성공 지표:** +- ✅ 180+ 테스트 PASS +- ✅ 15개 컴포넌트 완성 +- ✅ 기술부채 20% 결제 +- ✅ Phase 2 GO 판정 + +--- + +**작성:** Claude Code +**상태:** 📋 READY FOR EXECUTION +**시작:** 2026-08-26 +**마감:** 2026-08-30 +**다음:** Week 3 (2026-09-02)