제품 요구사항 정의서 (PRD): SAP FCM 트레이닝 샌드박스 (Learning-ERP)
1. 프로젝트 개요 (Project Overview)
- 프로젝트명: SAP FCM 트레이닝 샌드박스 (Learning-ERP)
- 목적: 실제 SAP 운영 환경과 유사한 경험을 제공하되, 리스크 없이 자유롭게 전표 입력 및 결산 과정을 실습할 수 있는 웹 기반 시뮬레이터 개발.
- 타겟 사용자: SAP 입문자, 주니어 컨설턴트, 현업 사용자 등 회계/원가 프로세스 이해가 필요한 대상.
- 핵심 가치: "실패를 통해 배우는 안전한 샌드박스" - 단순 입력 연습을 넘어, 데이터의 흐름(Flow)과 오류 발생 원인을 시각적으로 학습.
2. 핵심 차별화 포인트 (Why it works?)
| 특징 | 설명 | 기대 효과 |
|---|---|---|
| 리스크 제로 (Zero Risk) | 실제 운영 서버가 아닌 격리된 샌드박스 환경 제공. | 데이터 오염 걱정 없이 초보자가 마음껏 전표 생성 및 삭제 테스트 가능. |
| 프로세스 가시화 (Visualization) | 입력 데이터가 FI(재무) - CO(관리) - SD(영업) 모듈 간 어떻게 흐르는지 시각화. | 단편적 업무 처리가 아닌 End-to-End 프로세스 이해도 향상. |
| 자동 피드백 (Auto Feedback) | 오류 발생 시 단순 에러 코드가 아닌, 원인과 해결책을 즉시 가이드. | "왜 틀렸는지"를 스스로 학습하고 교정하는 자기 주도적 학습 유도. (예: 잘못된 Cost Center 사용 시 올바른 센터 제안) |
3. 핵심 기능 요구사항 (Key Features)
3.1 시나리오 기반 미션 (Scenario-Based Missions)
사용자는 주어진 비즈니스 시나리오를 단계별로 수행하며 SAP 프로세스를 익힙니다.
-
시나리오 A: SD-FI 통합 (매출 인식)
- 미션: "비비고 만두 1,000박스 납품 후 매출 전표 생성하기"
- Flow: 판매 주문(SO) 생성 → 출고(GI) 처리 → 대금 청구(Billing) → 회계 전표(FI Doc) 자동 생성 확인.
- 학습 포인트: 물류(SD) 데이터가 회계(FI) 및 손익(CO-PA)으로 어떻게 연결되는지 확인.
-
시나리오 B: 기말 결산 (CO 배부)
- 미션: "기말 결산 시 제조 간접비 배부 수행하기"
- Flow: 공통비 발생(전표 입력) → 배부 사이클 실행 → 코스트 센터별 비용 귀속 확인.
- 학습 포인트: 간접비 배부 로직 이해 및 코스트 센터(Cost Center) 개념 체득.
3.2 CO-PA 분석 (Profitability Analysis)
- 기능: 사용자가 입력한 트랜잭션 데이터를 바탕으로 실시간 수익성 보고서(CO-PA Report) 생성.
- 시각화: 제품별, 고객별, 유통 채널별 수익성 대시보드 제공.
- 목적: 본인의 데이터 입력 행위가 최종 경영 지표(손익)에 어떤 영향을 미치는지 직관적으로 이해.
3.3 오류 시뮬레이터 (Error Simulator)
정상적인 흐름뿐만 아니라, 의도적인 오류 상황을 경험하게 하여 문제 해결 능력을 기릅니다.
- 차대변 불일치: 대차평형 원리 교육 (차변 합계 != 대변 합계 시 전표 전기 불가).
- 유효하지 않은 계정: 설정되지 않은 G/L 계정이나 코스트 센터 입력 시, ABAP 스타일의 에러 메시지(Message Class) 출력 및 원인 설명.
- 전기 기간 마감: 닫힌 회계 기간에 전기 시도 시 발생하는 오류 처리.
4. 기술 스택 및 시스템 아키텍처 (Tech Stack)
4.1 Frontend
- Framework: React.js 또는 Next.js
- UI/UX: SAP Fiori Design Guidelines를 참조하여 모던하고 직관적인 인터페이스 구축.
- SAP GUI의 복잡함은 덜어내고, 핵심 필드 위주로 구성.
- Flowchart 라이브러리(e.g., React Flow)를 활용하여 프로세스 흐름 시각화.
4.2 Backend
- Runtime: Node.js (Express/NestJS) 또는 Python (Django/FastAPI)
- Role:
- Validation Logic: 전표 입력 시 데이터 유효성 검증 (차대변 일치 여부, 마스터 데이터 존재 여부 등).
- Business Logic: 배부 로직, 원가 계산 등 시뮬레이션 엔진 구현.
4.3 Database (Simplified SAP Schema)
실제 SAP 테이블 구조를 학습 목적으로 단순화하여 PostgreSQL로 구현합니다.
| 테이블명 | SAP 원본 | 역할 | 주요 컬럼 (예시) |
|---|---|---|---|
| BKPF | Accounting Doc Header | 전표 헤더 | 클라이언트, 회사코드, 전표번호, 회계연도, 전표유형, 전기일, 통화 |
| BSEG | Accounting Doc Segment | 전표 개별 항목 | 전표번호, 항목번호, 전기키, G/L계정, 금액, 코스트센터, 수익센터 |
| CE1xxxx | Operating Concern | 경영 단위 (CO-PA) | 레코드유형, 기간, 제품, 고객, 판매수량, 매출액, 매출원가 |
| CSKS | Cost Center Master | 코스트 센터 마스터 | 관리회계영역, 코스트센터, 유효기간, 이름 |
| T001 | Company Code | 회사 코드 정보 | 회사코드, 회사명, 관할시, 통화 |
5. 데이터 모델링 전략
- 단순화: 수백 개의 SAP 필드 중 학습에 필수적인 핵심 필드(Key Fields)만 선별하여 스키마 설계.
- 관계(Relationship): 테이블 간 FK 관계를 명확히 하여 정합성 유지 (예: BSEG의 G/L 계정은 SKB1/SKA1 참조).
6. 향후 확장 계획
- ABAP 로직 뷰어: 백엔드 로직이 실제 ABAP 코드로 어떻게 구현되는지 Pseudo Code 형태로 보여주는 기능.
- 다국어 지원: 글로벌 SAP 프로젝트 상황을 가정한 다국어 인터페이스.