- 5130 레거시 시스템 분석 (00_OVERVIEW ~ 08_SAM_COMPARISON) - MES 프로젝트 문서 - API/프론트엔드 스펙 문서 - 가이드 및 레퍼런스 문서
14 KiB
14 KiB
MES/ERP 프로젝트 진행 상황
마지막 업데이트: 2025-11-13 현재 Phase: Phase 0 ✅ 완료! + 프론트엔드 가이드 통합 ✅ 현재 Step: 백엔드 개발 로드맵 V2 완성, Phase 1 준비 완료
✅ 완료된 작업
Phase 0: 베이스라인 분석
- 프로젝트 로드맵 작성 (
MES_PROJECT_ROADMAP.md) - 진행 상황 추적 문서 생성 (
MES_PROGRESS_TRACKER.md) - 분석 전략 문서 작성 (
STEP_0_1_ANALYSIS_STRATEGY.md) ⭐- 기존 MD 문서 35개 발견 (api 8개 + mes_react 36개)
- 문서 우선 검토 → 코드 분석 → 쪼개서 저장 전략 수립
- 컨텍스트 누락 방지 방법론 정립
- Step 0.1 Phase A: 문서 우선 검토 ✅ 완료!
- API 문서 1개 분석 (
api_item_analysis_summary.md) - React 문서 3개 분석 (아토믹 디자인, 개발 가이드라인, 화면 명세)
- 비즈니스 문서 2개 분석 (견적 가이드, 유저 스토리)
- 문서 간 교차 참조 맵 생성 (
document_cross_reference_map.md) - 산출물: 7개 문서 (6개 요약 + 1개 교차 참조 맵)
- 핵심 발견: 가격 시스템 완성, 통합 품목 API 부재, 치수 연결 매핑 부재
- API 문서 1개 분석 (
- Step 0.1 Phase B: 코드 분석 ✅ 완료!
- Laravel API 코드 분석 (
api_code_analysis_summary.md) - React 프로젝트 코드 분석 (
react_code_analysis_summary.md) - Gap 검증 및 재사용 가능 컴포넌트 파악 (
api_gap_validation_report.md) - 산출물: 3개 문서 (API 분석 + React 분석 + Gap 검증)
- 핵심 발견:
- ✅ 통합 품목 조회 API 이미 구현됨 (ItemsController)
- ✅ 가격 통합 조회 API 이미 구현됨
- ⚠️ BOM 계산 API 부분 구현 (설계만)
- ❌ 치수 연결 매핑 시스템 부재 (비즈니스 핵심!)
- ❌ BOM formula/condition 필드 부재
- 🔴 ItemManagement.tsx 6,521 lines God Component (긴급 리팩토링 필요)
- Laravel API 코드 분석 (
- Step 0.1 Phase C: 통합 및 갭 분석 ✅ 완료!
- Critical Path 정의 (Phase 별 종속성 매핑)
- Phase 1-5 상세 개발 로드맵 수립
- 최종 종합 보고서 작성 (
PHASE_0_FINAL_REPORT.md) - 산출물: 1개 문서 (672줄, Week-by-Week 실행 계획)
- 핵심 산출물:
- ✅ dimension_mappings 테이블 스키마 설계
- ✅ product_components.formula/condition 필드 정의
- ✅ POST /api/v1/quotes/calculate API 스펙
- ✅ useItemForm hook 아키텍처 설계
- ✅ ItemListView → DataTable 리팩토링 패턴
- ✅ 14-22주 타임라인 (병렬 진행 시 14주)
- ✅ 리소스 계획 (2-3명) 및 비용 추정 (~4,325만원)
Phase 0 후속: 프론트엔드 가이드 통합 (2025-11-13)
- Next.js 15 프론트엔드 가이드 분석 ✅ 완료!
- ITEM_MANAGEMENT_MIGRATION_GUIDE.md 분석
- 하이브리드 아키텍처 요구사항 파악 (물리적 80% + 동적 20%)
- ItemMaster/BOMLine/BendingDetail 데이터 구조 상세 정의
- Laravel API 엔드포인트 스펙 추출
- 핵심 발견:
- ✅ 프론트: 고정 필드 우선 (80%) → 백엔드: 고정 필드 API 우선
- ✅ BOMLine.quantityFormula 필수 (Phase 0에서 부재 확인)
- ✅ BOM tree API 필요 (Phase 0에서 부재 확인)
- ✅ 파일 업로드 3종 (시방서, 인정서, 절곡도)
- ⚠️ 동적 템플릿 2차 목표 (선택적)
- 백엔드 개발 로드맵 V2 작성 (
BACKEND_DEVELOPMENT_ROADMAP_V2.md) ✅- 프론트 가이드 + Phase 0 Gap 통합 분석
- DB 스키마 확장 설계 (products, product_components, dimension_mappings)
- RESTful API 엔드포인트 상세 정의
- 우선순위 재조정 (P0: Migration + CRUD, P1: BOM 계산, P2: 동적 템플릿)
- Week-by-Week 타임라인 (6주)
- 프론트엔드 작업 제외: 백엔드 API 개발에만 집중
🎉 Phase 0 완료!
Phase 0 베이스라인 분석 100% 완료 - Phase 1-2 준비 완료 ✅
Phase 0 완료 요약
- ✅ Phase A: 핵심 문서 6개 분석 (7,065줄) → 7개 요약본
- ✅ Phase B: API 코드 11 files + React 6,521줄 분석 → 3개 분석 보고서
- ✅ Phase C: Gap 검증 + Critical Path + 최종 로드맵 → 1개 종합 보고서
- ✅ 총 산출물: 11개 문서 (Phase A 7개 + Phase B 3개 + Phase C 1개)
- ✅ Gap Analysis: 17개 Gap 발견 및 검증 완료
- ✅ 실행 계획: Phase 1-5 Week-by-Week 로드맵 수립
- ✅ 리소스 계획: 2-3명, 14-22주, ~4,325만원
📋 다음 액션
즉시 시작 가능 (백엔드만):
Phase 1: 백엔드 핵심 개발 (P0 - 우선순위 최상)
시작 명령:
"Phase 1 시작해줘" 또는 "products 테이블 Migration 작성해줘"
Week 1-2: DB 스키마 확장
-
Day 1-2: Migration 파일 작성
- products 테이블 확장 (프론트 가이드 필드 추가)
- product_components.formula/condition 추가
- Migration 실행 및 검증
-
Day 3-5: ItemsController 확장
- GET /api/items (필터링: itemType, search, category1)
- GET /api/items/:itemCode (BOM 포함)
- POST/PUT/DELETE 유형별 검증
-
Day 6-9: BOMController 신규 개발
- GET /api/items/:itemCode/bom (flat)
- GET /api/items/:itemCode/bom/tree (계층 구조)
- POST/PUT/DELETE BOM 라인
-
Day 10-12: FileController 확장
- POST /api/items/:itemCode/files (3종)
- 파일 검증 및 Storage 연동
-
Day 13-14: 통합 테스트
- Postman Collection 작성
- 버그 수정
Week 3-4: BOM 계산 및 매핑 (P1)
-
Day 15-16: dimension_mappings 테이블
- Migration 작성 및 실행
- DimensionMappingController
-
Day 17-20: BOM 계산 로직
- quantityFormula 파싱 (W, H, G 변수)
- POST /api/quotes/calculate
-
Day 21-23: 조건부 BOM
- condition 필드 파싱 및 평가
-
Day 24-28: 통합 테스트 및 최적화
Priority: 🔴 P0 (최우선) Resources: Backend 1명 예상 기간: 4-6주
⚠️ 프론트엔드 작업 제외
프론트엔드는 별도 프로젝트 (Next.js 15)에서 진행:
- ItemManagement 리팩토링
- useItemForm hook
- DataTable organism 활용
- BOM 에디터
백엔드는 API 개발에만 집중합니다.
권장 실행 전략
백엔드 API 우선 개발 (4-6주)
→ API 완성 후 프론트엔드 연동
→ 순차 실행으로 안정성 확보
📊 전체 진행률
| Phase | 상태 | 진행률 | 비고 |
|---|---|---|---|
| Phase 0 | ✅ 완료 | 100% | 베이스라인 분석 완료 🎉 |
| Phase 1 | 🟢 준비 완료 | 0% | 백엔드 핵심 개발 (3-4주) |
| Phase 2 | 🟢 준비 완료 | 0% | 프론트엔드 리팩토링 (4-7주) |
| Phase 3 | ⏳ 대기 | 0% | API 통합 (2-3주) |
| Phase 4 | ⏳ 대기 | 0% | 컴포넌트 확장 (4-6주) |
| Phase 5 | ⏳ 대기 | 0% | 최종화 (1-2주) |
| Phase 6-12 | ⏳ 대기 | 0% | 후속 모듈 |
전체 진행률: 8% (베이스라인 분석 완료, 개발 준비 완료)
Step 0.1 세부 진행률
- Phase A: 문서 우선 검토 (100% ✅)
- Phase B: 코드 분석 (100% ✅)
- Phase C: 통합 및 갭 분석 (100% ✅)
📝 주요 결정 사항
2025-11-13 (프론트엔드 가이드 통합 ✅)
- Next.js 15 프론트엔드 가이드 분석 완료:
- ✅ 하이브리드 아키텍처 확인: 물리적 페이지 80% + 동적 템플릿 20%
- ✅ ItemMaster 데이터 구조 상세 정의 (공통 + FG + PT + 인증)
- ✅ BOMLine.quantityFormula 필수 확인 (Phase 0 Gap #4)
- ✅ BOM tree API 필요 확인 (신규 발견)
- ✅ 파일 업로드 3종 필요 (시방서, 인정서, 절곡도)
- 백엔드 개발 로드맵 V2 수립:
- ✅ DB 스키마 확장 설계 완료 (products, product_components)
- ✅ RESTful API 엔드포인트 상세 정의
- ✅ 우선순위 재조정: P0 (Migration + CRUD) → P1 (BOM 계산) → P2 (동적 템플릿)
- ✅ 6주 타임라인: Week 1-2 (스키마), Week 3-4 (BOM), Week 5-6 (최적화)
- ⚠️ 프론트엔드 작업 제외: 백엔드 API 개발에만 집중
- 전략 변경:
- ❌ 병렬 실행 (백+프론트) → ✅ 순차 실행 (백엔드 우선)
- 이유: 프론트는 Next.js 15 별도 프로젝트, API 먼저 안정화
2025-11-12 (Phase 0 완료 ✅)
- Phase C (통합 및 갭 분석) 완료:
- ✅ Critical Path 정의: 치수 매핑 → BOM 필드 → 견적 API (7-13주)
- ✅ Phase 1-5 상세 로드맵 수립 (Week-by-Week 실행 계획)
- ✅ dimension_mappings 테이블 스키마 설계
- ✅ useItemForm/useItemValidation hook 아키텍처
- ✅ ItemListView → DataTable 리팩토링 패턴
- ✅ 병렬 실행 전략: Phase 1 + Phase 2 동시 진행 (14주 vs 22주)
- ✅ 리소스 계획: Backend 1명 + Frontend 1-2명
- ✅ 비용 추정: ~4,325만원 (인건비 기준)
- Phase 0 총괄:
- ✅ 11개 문서 생성 (Phase A 7개 + Phase B 3개 + Phase C 1개)
- ✅ 17개 Gap 발견 및 검증 완료
- ✅ 실행 가능한 개발 로드맵 수립
- 🎯 다음 단계: Phase 1 (백엔드) + Phase 2 (프론트) 병렬 시작 권장
2025-11-12 (Phase B 완료)
- Phase B.1 (Laravel API 분석) 완료:
- ✅ 통합 품목 조회 API 이미 구현됨 (ItemsController)
- ✅ 가격 통합 조회 API 이미 구현됨 (PricingService 완전 통합)
- ⚠️ BOM 계산 API 부분 구현 (BomCalculationController - 설계 BOM만)
- ❌ 치수 연결 매핑 시스템 부재 (dimension_mappings 테이블 없음)
- ❌ product_components.formula/condition 필드 부재
- Phase B.2 (React 코드 분석) 완료:
- ✅ ItemManagement.tsx 6,521줄 전체 분석 (13 sections)
- 🔴 God Component 발견: 40개 useState, 362줄 handleSaveItem, 1,911줄 List View
- ✅ QuoteManagement3Write.tsx BOM 계산 로직 구현 (프론트에서 직접 계산)
- ✅ 재사용 가능 컴포넌트 발견: 6 Molecules, 8 Organisms
- ❌ DataTable organism 미사용 (수동 Table 10회 작성)
- Gap 검증 완료: 17개 Gap 검증
- ✅ 해결: 2개 (#1, #7)
- ⚠️ 부분: 3개 (#3, #6, #16)
- ❌ 미해결: 9개 (#2, #4, #5, #8, #9, #11, #12, #14, #15)
- 🟢 프론트 완료: 3개 (#10, #11, #13)
2025-11-12 (Phase A 완료)
- MES/ERP 시스템을 12개 Phase로 나누어 진행하기로 결정
- 각 Step마다 개별 스킬을 호출하여 점진적으로 진행
- 기존 API 분석을 Phase 0에 포함하여 재사용 가능한 부분 파악
- 품목 기준관리(Phase 1)를 최우선으로 진행
- Phase A 완료: 핵심 문서 6개 분석 (7,065줄)
- 핵심 발견:
- ✅ 가격 시스템 완전 구현됨 (백엔드 90%, 프론트 0%)
- ❌ 통합 품목 조회 API 부재 (Critical Gap #1)
- ❌ 치수 연결 매핑 시스템 부재 (Critical Gap #2, 비즈니스 핵심!)
- ❌ 실시간 견적 계산 API 부재 (Critical Gap #3, 비즈니스 핵심!)
- ❓ BOM 계산식/조건식 필드 확인 필요 (Gap #4, #5)
- Gap Analysis: Critical 7개, Important 7개, Nice to Have 3개 발견
🔗 참고 문서
핵심 문서
- 전체 로드맵:
claudedocs/mes/MES_PROJECT_ROADMAP.md - 프로젝트 개요:
CLAUDE.md - 현재 작업:
CURRENT_WORKS.md
Phase 0 산출물
- 최종 보고서:
claudedocs/mes/00_baseline/PHASE_0_FINAL_REPORT.md - Gap 검증:
claudedocs/mes/00_baseline/docs_breakdown/api_gap_validation_report.md - API 분석:
claudedocs/mes/00_baseline/docs_breakdown/api_code_analysis_summary.md - React 분석:
claudedocs/mes/00_baseline/docs_breakdown/react_code_analysis_summary.md
2025-11-13 신규 문서
- 백엔드 로드맵 V2:
claudedocs/mes/00_baseline/BACKEND_DEVELOPMENT_ROADMAP_V2.md⭐- 프론트 가이드 + Phase 0 통합 분석
- DB 스키마 상세 설계
- RESTful API 엔드포인트 정의
- 6주 타임라인 + 테스트 전략
- 프론트 가이드:
claudedocs/mes/ITEM_MANAGEMENT_MIGRATION_GUIDE.md- Next.js 15 마이그레이션 가이드
- 하이브리드 아키텍처
- 데이터 구조 상세 (ItemMaster, BOMLine, BendingDetail)
📌 중요 메모
품목 기준관리 핵심 개념
- 항목(컬럼) → 섹션 → 페이지 → CRUD 화면 순서로 구성
- 고정 컬럼: products/materials 테이블의 실제 컬럼
- 가변 컬럼: attributes/options JSON 필드
- 카테고리별 테이블:
- 제품/부품 → products
- 원자재/부자재/소모품 → materials
- 확장성: 견적/생산 시스템의 기반이 됨
기술 스택
- Backend: Laravel 12 + PHP 8.2+
- Frontend: React (mes_react 프로젝트)
- Auth: Sanctum
- Multi-tenant: tenant_id + BelongsToTenant
- API Doc: Swagger
🚨 블로커 및 이슈
없음
⏱️ 예상 일정
- Phase 0 완료: ✅ 2025-11-12 (완료!)
- Phase 1 완료 예정: 2025-12-10 (3-4주 소요)
- Phase 2 완료 예정: 2026-01-07 (4-7주 소요, Phase 1과 병렬)
- Phase 3 완료 예정: 2026-01-28 (2-3주 소요)
- Phase 4 완료 예정: 2026-03-11 (4-6주 소요)
- Phase 5 완료 예정: 2026-03-25 (1-2주 소요)
- 전체 프로젝트 완료 예정 (병렬 실행): 2026-03-25 (14주 소요)
- 전체 프로젝트 완료 예정 (순차 실행): 2026-05-06 (22주 소요)
권장: Phase 1 + Phase 2 병렬 실행으로 8주 단축
세션 복구 방법
세션이 끊겼을 때
- 이 문서(
MES_PROGRESS_TRACKER.md) 확인 - "다음 액션" 섹션의 명령 실행
- 또는 "MES 프로젝트 이어서 해줘" 요청
이전 단계 검토가 필요할 때
# 전체 로드맵 확인
cat claudedocs/mes/MES_PROJECT_ROADMAP.md
# 완료된 문서 리스트 확인
ls -la claudedocs/mes/00_baseline/
ls -la claudedocs/mes/01_item_management/
# 특정 문서 확인
cat claudedocs/mes/00_baseline/existing_api_analysis.md