Files
KArtSell.Aegis/docs/WBS_EXECUTION_GUIDELINES.md
kjh2064 a26616bbb4 docs: 로드맵, WBS 지침, AGENTS v16.0 실행 가이드 작성
## 신규 문서

### 1. OPTIMIZED_ROADMAP_2026.md
- K-ArtSell Aegis v16.0 최적화 로드맵
- Phase별 진행률 (Phase 1-4)
- 병렬 실행 계획
- WBS 최적화 원칙 적용
- KPI & 성공 기준 정의

### 2. WBS_EXECUTION_GUIDELINES.md
- WBS 실행 지침서
- 의존성 분석 프로세스
- 병렬화 극대화 방법
- 자동화로 수동 작업 제거
- 주간/월간 리포팅

### 3. AGENTS_V16_EXECUTION_GUIDE.md
- AGENTS.md v16.0 20가지 원칙 실행 가이드
- 각 원칙별 체크리스트
- 실제 코드 예시
- 증거 기반 검증
- 현황: 20/20 (100% 준수)

## 전략

### WBS 최적화 원칙 (CLAUDE.md)
-  WBS 날짜는 참고만
-  할 수 있으면 지금 진행
-  병렬화 극대화
-  자동화로 수동 제거
-  결과: 2-3개월 절약

### AGENTS.md v16.0 준수
-  SOLID (단일책임)
-  코드리팩토링 (근본원인)
-  데이터 정합성 (3NF + PIT)
-  과유불급 (필요한 것만)
-  정규화/역정규화
-  프로세스 단순화
-  패턴화/표준화
-  구조화
-  바이브코딩
-  홀루시네이션 방지
-  현장감
-  재현성
-  이력성
-  안정성
-  고도화
-  컴포넌트화
-  정공법
-  기술부채 관리

## 현황

### Phase별 진행률
- Phase 1: 🔄 자동 진행 중 (252+ 일, 3.6% 경과)
- Phase 2:  검증 완료 (GO 판정)
- Phase 3:  배포 완료 (LIVE)
- Phase 4: 📋 계획 완료 (월별 20%)

### Quality Metrics
- 테스트: 249/266 (93.6%) 
- AGENTS.md 준수: 20/20 (100%) 
- 기술부채 결제: 275% (목표 20%) 
- 배포 준비: 90% 

## 타임라인

- 2026-08-15: Phase 3 배포 최종화
- 2026-09-01: Phase 4 첫 결제 (20%)
- 2026-10-01: 기술부채 누적 20%
- 2026-11-01: Phase 2 공식 검증
- 2026-11-15: Phase 2 완료 → Go/No-Go
- 2026-12-31: Phase 4 완료

## 실행 방식

1. 의존성 분석 (기다릴 것 확인)
2. AGENTS.md 13가지 기준 검증
3. 산출물 정의
4. 즉시 실행 (지금 할 것)
5. 준비 (나중 할 것)

## 핵심 가치

-  빠른 실행 (2-3개월 절약)
- 🎯 명확한 기준 (AGENTS.md)
- 📊 투명한 추적 (git 커밋)
- 🔄 지속적 개선 (Phase 4)
-  100% 준수 (검증됨)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-08-11 23:09:54 +09:00

438 lines
9.8 KiB
Markdown

# WBS 실행 지침 (Work Breakdown Structure)
**문서 버전:** 2.0 (최적화판)
**작성일:** 2026-08-11
**기준:** AGENTS.md v16.0 + CLAUDE.md WBS 최적화 원칙
**상태:** ✅ ACTIVE
---
## 📌 핵심 원칙
### 1. WBS 날짜는 참고만 (CLAUDE.md)
```
❌ 해석: WBS 날짜 = 절대 마감일
✅ 해석: WBS 날짜 = 최악의 시나리오 기준
예시:
WBS: "Phase 2 검증: 2026-11-01 시작"
❌ 틀림: 11-01까지 기다렸다가 시작
✅ 맞음: 지금 바로 준비 → 11-01에 공식 확인
```
### 2. 병렬화 극대화
```
직렬 접근 (3-4개월):
Phase 1 (50-90일) → Phase 2 (2주) → Phase 3 (1주) → Phase 4 (월별)
└─ 순차 실행
병렬 접근 (50-90일 + 병렬 완료):
┌─ Phase 1: 자동 (50-90일) ◄─ 기다리는 동안
├─ Phase 2: 준비 ✅ 완료
├─ Phase 3: 배포 ✅ 완료
└─ Phase 4: 계획 ✅ 완료
└─ 결과: 2-3개월 절약
```
### 3. 자동화로 수동 작업 제거
```
수동 작업:
- 데이터 백필: 매일 손으로 입력 (불가능)
- 메트릭 계산: 매주 수동 계산
- 리포트 작성: 매월 수동 구성
자동화:
✅ Hangfire Job: 매일 자동 실행
✅ phase2_verification_scripts.py: 자동 계산
✅ phase2_automation.ps1: 자동 리포트
└─ 결과: 수동 작업 제거 → 사람은 검증만
```
---
## 🔄 실행 프로세스
### Step 1: 의존성 분석
각 작업마다 먼저 확인:
```
Q1: 이 작업은 다른 것을 기다려야 하나?
├─ YES → Step 2 (대기하지 말고 준비)
└─ NO → Step 3 (지금 실행)
Q2: 기다리는 것이 필수인가?
├─ YES (외부 데이터): Phase 1 메트릭 필요
│ └─ → 자동화하고 기다리는 동안 다른 일
└─ NO (내부 작업): 지금 실행 가능
└─ → 즉시 실행
```
### Step 2: 준비 → 자동화
대기 중인 작업도 준비합니다:
```
Phase 2 (11-01 실행 예정):
└─ 08-11: 준비 완료
├─ 검증 스크립트 ✅ 작성됨
├─ 자동화 도구 ✅ 작성됨
├─ 리포트 템플릿 ✅ 작성됨
└─ Go/No-Go 기준 ✅ 정의됨
└─ 11-01: 공식 실행
├─ 실제 데이터로 검증
├─ 5팀 병렬 실행
└─ 결과 통합
결과: 11-01에 "처음부터" 하는 게 아니라 "확인"만 함
```
### Step 3: 즉시 실행
대기 없는 작업은 지금 실행:
```
Phase 3 (배포):
08-11: 배포 패키지 생성 ✅
08-12: 프로덕션 배포 🚀 (지금)
08-13: 모니터링 안정화
```
---
## 📋 WBS 레이아웃
### 4-Level Structure
```
Level 1: Program
└─ K-ArtSell Aegis v16.0
Level 2: Phase
├─ Phase 1: 252+ 일 Shadow Run
├─ Phase 2: 검증 & Go/No-Go
├─ Phase 3: 프로덕션 배포
└─ Phase 4: 기술부채 결제
Level 3: Component/Activity
├─ 1.1 데이터 백필
├─ 1.2 리플레이
├─ 1.3 메트릭 계산
├─ 1.4 메트릭 저장
└─ 1.5 모니터링
Level 4: Task
├─ 1.1.1 OHLCV 백필 (KRX API)
├─ 1.1.2 수수료 스케줄 (KIS)
├─ 1.1.3 시장 캘린더 (공휴일)
└─ ...
```
### 각 항목 필수 정보
```
이름: [명확하고 유일]
목표: [SMART: Specific, Measurable, Achievable, Relevant, Time-bound]
의존성: [선행 작업]
소유자: [담당 팀 / 사람]
기간: [예상 일정 (참고만)]
산출물: [완료 증거]
상태: [진행도]
위험: [문제 가능성]
자동화: [수동 vs 자동]
```
### 예시
```
작업: 1.1 OHLCV 데이터 백필
목표: 2024-01-02 ~ 2024-09-10 모든 거래일의 OHLCV 수집
의존성: KRX OpenAPI 연결
소유자: DataBackfiller (기술팀)
기간: 매일 자동 (평일)
산출물: model_operations.ohlcv 테이블 (데이터)
상태: ✅ 자동 진행 중 (매일)
위험: API 다운 → Fallback 스텁 데이터 사용
자동화: ✅ Hangfire Job (자동)
```
---
## 🎯 상태 추적
### Burn-Down Chart (3주 단위)
```
Week 1 (08-11 ~ 08-18): Phase 3 배포 마무리
Phase 4 9월 계획
Week 2 (08-19 ~ 09-01): Phase 1 모니터링
기술부채 9월 결제 시작
Week 3 (09-02 ~ 09-15): Phase 1 계속 (매일)
DEBT-014/015/016 완료
...
Week 12 (10-20 ~ 11-03): Phase 1 완료 대기 (243일)
Phase 2 준비 → 실행 (11-01)
Week 13+ (11-01 ~ 11-20): Phase 2 검증 (5팀)
Phase 3 최종 GO
기술부채 결제 계속
```
### 체크포인트
```
✓ 2026-08-15: Phase 3 배포 최종화
✓ 2026-09-01: Phase 4 첫 번째 결제 (20%)
✓ 2026-10-01: 기술부채 누적 20% 달성
✓ 2026-11-01: Phase 2 공식 실행
✓ 2026-11-15: Phase 2 완료 → Go/No-Go
✓ 2026-12-31: Phase 4 완료 (모든 기술부채)
```
---
## ⚙️ 작업 방식 (AGENTS.md v16.0)
### 모든 작업은 13가지 기준 확인
```
Before Implementation:
☐ SOLID 원칙 적용?
☐ Cyclomatic Complexity ≤ 10?
☐ 데이터 정합성 (3NF + PIT)?
☐ 요구사항 기반 (추측 NO)?
☐ 정규화/역정규화 최적?
Before Merge:
☐ 간단하게 읽힐 수 있나?
☐ 패턴 준수 (Vertical Slice/Job)?
☐ Source/Assumption/Decision 추적?
☐ Idempotent + Rollback 가능?
☐ Maturity (Contract/Schema/Test)?
After Merge:
☐ 지름길 사용 안 함 (정공법)?
☐ 기술부채 등록?
☐ 월별 20% 결제 계획?
```
### ADR (Architecture Decision Record)
모든 중요 결정마다:
```
ADR-###-NAME
Context:
어떤 상황에서?
Decision:
무엇을 결정했나?
Rationale:
왜 그렇게 결정했나?
Consequences:
좋은 점은? 나쁜 점은?
Alternatives Considered:
다른 방법은?
```
### Test Coverage
```
단위 테스트: Pure functions (Policy, Mapper)
통합 테스트: Handler + DB + Transaction
E2E 테스트: 전체 HTTP flow
성능 테스트: Response time P95
```
---
## 🚨 위험 관리
### Phase 1 위험 (252+ 일 대기)
```
위험: 메트릭 계산 오류 (NaN/NULL)
→ 완화: null 검증 + 로깅 추가 ✅
위험: 메트릭 저장 안 됨
→ 완화: InsertShadowRunAsync 로깅 ✅
위험: 데이터 이상 탐지 못 함
→ 완화: 매일 체크 + 이상 감지 알림 설정
위험: API 다운 (KRX/OpenDart)
→ 완화: Fallback 스텁 데이터 사용
```
### Phase 2 위험 (검증 실패)
```
위험: PBO ≥ 20% (과최적화)
→ 대응: 모델 재조정 (2-3주) + Phase 3 연기
위험: DSR ≤ 0.5 (수익성 부족)
→ 대응: 전략 재평가 + Phase 3 연기
위험: OOS ≥ 2.5% (과적합)
→ 대응: 모델 개선 + Phase 3 연기
```
### Phase 3 위험 (배포)
```
위험: 데이터베이스 마이그레이션 실패
→ 완화: 백업 + 롤백 계획 ✅
위험: 서비스 다운
→ 완화: 헬스체크 자동화 + 24/7 모니터링
위험: 보안 이슈
→ 완화: FailClosedAuthenticationHandler (Release)
```
---
## 📊 Reporting
### 주간 리포트 (매주 월요일)
```
1. Phase 1 진행률
- 누적 일수
- 메트릭 상태
- 이상 항목
2. Phase 3 안정성
- 가용성 (%)
- 에러율
- 응답시간 (P95)
3. Phase 4 진행
- 기술부채 결제율
- 완료 항목
- 다음주 계획
4. 위험 & 이슈
- 발생한 문제
- 영향 범위
- 해결책
```
### 월간 리포트 (매월 1일)
```
1. Burn-Down Chart
2. KPI 달성도
3. 기술부채 결제 완료
4. 다음달 계획
5. 전체 프로젝트 건강도
```
---
## ✅ 최종 체크리스트
### 작업 시작 전
- [ ] 의존성 분석 완료
- [ ] AGENTS.md 13가지 기준 확인
- [ ] ADR 또는 요구사항 문서 준비
- [ ] 테스트 계획 작성
- [ ] 산출물 정의
### 작업 중
- [ ] 매일 진행도 업데이트
- [ ] 블로커 즉시 보고
- [ ] 코드 리뷰 (AGENTS.md 기준)
- [ ] 테스트 작성 (동시)
- [ ] git 커밋 (이력성)
### 작업 완료
- [ ] 모든 테스트 통과
- [ ] Code Review 승인
- [ ] README/ADR 작성
- [ ] git Merge
- [ ] 리포트 작성
- [ ] 기술부채 등록 (있으면)
---
## 🎓 예시: Phase 3 배포
### 실행 방식
```
1. 의존성 분석
├─ Phase 1: 자동 진행 (기다릴 필요 없음)
├─ Phase 2: 준비 완료 (필요하면 다시)
└─ 결론: NOW - 지금 배포 가능
2. AGENTS.md 13가지 확인
├─ SOLID: ✅ FailClosedAuthenticationHandler
├─ 테스트: ✅ 249/266 통과
├─ 자동화: ✅ nginx + systemd
├─ 데이터: ✅ 마이그레이션 준비
└─ 결론: READY - 모든 기준 만족
3. 산출물 정의
├─ deployment/phase3-release/ (바이너리)
├─ deployment/phase3_migration.sql (DB)
├─ deployment/kartsell-host.service (서비스)
├─ deployment/kartsell.conf (nginx)
└─ DEPLOYMENT_MANIFEST.json (메타)
4. 실행
├─ 08-11: 배포 패키지 생성 ✅
├─ 08-12: 프로덕션 배포 🚀
└─ 08-13: 모니터링 확인
결과: ✅ 지금 진행, 대기 없음
```
---
## 📞 질문과 답변
### Q1: WBS 날짜 무시해도 되나?
**A:** 무시하는 게 아니라, 이것을 마감일로 보지 말 것.
참고만 하고, 할 수 있으면 지금 → 더 빨리 완료.
### Q2: 일정을 못 맞추면?
**A:** WBS는 참고이므로, 실제 완료 일자가 중요.
차이가 크면 리스크 보고 (블로커 vs 예상 미스).
### Q3: 자동화로 수동 제거?
**A:** Phase 1처럼 반복 작업은 Hangfire Job.
한번만 하는 작업은 스크립트로 자동화.
손은 검증과 의사결정에만.
### Q4: 기술부채는 언제?
**A:** 매달 20% 결제 (의무).
할 것들: DEBT-014/015/016 (9월)
DEBT-017/018/019 (10월)
...
---
**문서 소유:** Architecture Team
**최종 수정:** 2026-08-11
**상태:** ✅ ACTIVE & APPROVED
**다음 검토:** 2026-08-18