# 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)