{ "schemaVersion": "1.0", "title": "사내 교육 LMS 시스템", "lang": "ko", "prd": { "oneLiner": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다.", "goal": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다.", "whyNow": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다.", "category": "사내 운영 시스템", "platforms": [ "웹" ], "problem": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다.", "solution": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다.", "alternatives": "이메일, 메신저, 스프레드시트, 수동 대장", "differentiator": "요청·처리·운영 데이터를 하나의 연결된 기준으로 관리한다.", "targets": [ { "name": "교육을 수강하는 임직원", "role": "요청자·실무 사용자", "needs": "필요한 업무를 빠르게 등록하고 상태를 알고 싶다.", "pain": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다." }, { "name": "HRD·교육 운영 담당자", "role": "운영 관리자", "needs": "처리 우선순위와 이력을 관리하고 지표를 확인하고 싶다.", "pain": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다." }, { "name": "시스템·정책 관리자", "role": "운영·보안 관리자", "needs": "권한, 정책, 감사 기록을 관리하고 싶다.", "pain": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다." } ], "scenarios": [ { "text": "실무 사용자는 필요한 업무를 등록하고 상태를 확인한다.", "start": "P1" }, { "text": "운영 담당자는 대기 업무를 처리하고 예외를 조치한다.", "start": "P5" }, { "text": "시스템·정책 관리자는 정책과 권한을 검토한다.", "start": "P9" }, { "text": "시스템·정책 관리자는 감사 기록과 운영 지표를 검토한다.", "start": "P10" } ], "northStar": "기한 내 완료된 운영 요청 비율", "kpis": [ { "name": "기한 내 처리 비율", "target": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다.", "baseline": "측정 전", "method": "상태 변경과 목표 기한을 월별 집계", "refs": [ "F6" ] }, { "name": "운영 가시성", "target": "핵심 업무 100% 추적", "baseline": "측정 전", "method": "등록 기록과 리포트 연결 비율", "refs": [ "F11" ] }, { "name": "감사 가능 운영 비율", "target": "핵심 변경 100% 기록", "baseline": "측정 전", "method": "감사 로그와 변경 이력 월별 점검", "refs": [ "F12" ] } ], "inScope": [ "교육 과정 등록과 수강 신청", "학습 진행률·이수·수료증 조회", "과정 배정·수강·평가·수료 처리", "조직·과정별 이수율과 교육 효과 리포트", "교육 과정 등록과 수강 신청 유효성·중복 검증", "검색·필터·이력 관리", "담당자·우선순위·SLA 관리", "승인·정책 검토", "예외·반려·재처리", "알림·구독 관리", "외부 연동·데이터 동기화", "역할·권한·감사 관리" ], "nonGoals": [ "외부 고객 포털", "회계·급여 등 인접 시스템 전체 대체" ], "assumptions": [ "사용자와 조직 정보는 사내 SSO에서 제공된다.", "운영 정책과 분류 기준을 담당자가 관리한다." ], "risks": [ "초기 분류와 운영 기준이 불명확하면 잘못된 처리로 이어질 수 있다.", "기준 데이터가 갱신되지 않으면 운영 신뢰가 떨어진다." ], "openQuestions": [ "긴급 처리 기준과 승인 절차는 무엇인가?", "완료 후 검증과 재오픈 기준은 무엇인가?" ], "constraints": [ "상태·담당자·우선순위 변경은 감사 로그로 남긴다.", "접근 권한은 역할별로 제한한다.", "권한, 정책, 상태 변경은 감사 로그로 남긴다." ] }, "requirements": [ { "id": "R1", "title": "접수와 데이터 품질", "desc": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다.", "status": "todo", "priority": "high", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "features": [ { "id": "F1", "title": "교육 과정 등록과 수강 신청", "desc": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다.", "status": "todo", "priority": "high", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "specs": [ { "title": "교육 과정 등록과 수강 신청 기본 처리 규칙", "desc": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] }, { "title": "교육 과정 등록과 수강 신청 예외·감사 처리", "desc": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다. 변경·실패·재처리 조건과 이력을 남긴다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] } ] }, { "id": "F2", "title": "교육 과정 등록과 수강 신청 유효성·중복 검증", "desc": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다.", "status": "todo", "priority": "high", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "specs": [ { "title": "교육 과정 등록과 수강 신청 유효성·중복 검증 기본 처리 규칙", "desc": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] }, { "title": "교육 과정 등록과 수강 신청 유효성·중복 검증 예외·감사 처리", "desc": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다. 변경·실패·재처리 조건과 이력을 남긴다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] } ] } ] }, { "id": "R2", "title": "업무 기록과 검색", "desc": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다.", "status": "todo", "priority": "high", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "features": [ { "id": "F3", "title": "학습 진행률·이수·수료증 조회", "desc": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다.", "status": "todo", "priority": "high", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "specs": [ { "title": "학습 진행률·이수·수료증 조회 기본 처리 규칙", "desc": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] }, { "title": "학습 진행률·이수·수료증 조회 예외·감사 처리", "desc": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다. 변경·실패·재처리 조건과 이력을 남긴다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] } ] }, { "id": "F4", "title": "검색·필터·이력 관리", "desc": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다.", "status": "todo", "priority": "high", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "specs": [ { "title": "검색·필터·이력 관리 기본 처리 규칙", "desc": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] }, { "title": "검색·필터·이력 관리 예외·감사 처리", "desc": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다. 변경·실패·재처리 조건과 이력을 남긴다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] } ] } ] }, { "id": "R3", "title": "처리와 책임", "desc": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다.", "status": "todo", "priority": "high", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "features": [ { "id": "F5", "title": "과정 배정·수강·평가·수료 처리", "desc": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다.", "status": "todo", "priority": "high", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "specs": [ { "title": "과정 배정·수강·평가·수료 처리 기본 처리 규칙", "desc": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] }, { "title": "과정 배정·수강·평가·수료 처리 예외·감사 처리", "desc": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다. 변경·실패·재처리 조건과 이력을 남긴다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] } ] }, { "id": "F6", "title": "담당자·우선순위·SLA 관리", "desc": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다.", "status": "todo", "priority": "high", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "specs": [ { "title": "담당자·우선순위·SLA 관리 기본 처리 규칙", "desc": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] }, { "title": "담당자·우선순위·SLA 관리 예외·감사 처리", "desc": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다. 변경·실패·재처리 조건과 이력을 남긴다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] } ] } ] }, { "id": "R4", "title": "승인과 예외", "desc": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다.", "status": "todo", "priority": "high", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "features": [ { "id": "F7", "title": "승인·정책 검토", "desc": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다.", "status": "todo", "priority": "mid", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "specs": [ { "title": "승인·정책 검토 기본 처리 규칙", "desc": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] }, { "title": "승인·정책 검토 예외·감사 처리", "desc": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다. 변경·실패·재처리 조건과 이력을 남긴다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] } ] }, { "id": "F8", "title": "예외·반려·재처리", "desc": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다.", "status": "todo", "priority": "mid", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "specs": [ { "title": "예외·반려·재처리 기본 처리 규칙", "desc": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] }, { "title": "예외·반려·재처리 예외·감사 처리", "desc": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다. 변경·실패·재처리 조건과 이력을 남긴다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] } ] } ] }, { "id": "R5", "title": "알림과 연동", "desc": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다.", "status": "todo", "priority": "mid", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "features": [ { "id": "F9", "title": "알림·구독 관리", "desc": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다.", "status": "todo", "priority": "high", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "specs": [ { "title": "알림·구독 관리 기본 처리 규칙", "desc": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] }, { "title": "알림·구독 관리 예외·감사 처리", "desc": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다. 변경·실패·재처리 조건과 이력을 남긴다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] } ] }, { "id": "F10", "title": "외부 연동·데이터 동기화", "desc": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다.", "status": "todo", "priority": "high", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "specs": [ { "title": "외부 연동·데이터 동기화 기본 처리 규칙", "desc": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] }, { "title": "외부 연동·데이터 동기화 예외·감사 처리", "desc": "교육 과정, 대상자 배정, 학습 진행, 평가·수료, 리마인드와 교육 리포트를 연결한다. 변경·실패·재처리 조건과 이력을 남긴다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] } ] } ] }, { "id": "R6", "title": "운영 분석과 통제", "desc": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다.", "status": "todo", "priority": "mid", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "features": [ { "id": "F11", "title": "조직·과정별 이수율과 교육 효과 리포트", "desc": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다.", "status": "todo", "priority": "high", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "specs": [ { "title": "조직·과정별 이수율과 교육 효과 리포트 기본 처리 규칙", "desc": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] }, { "title": "조직·과정별 이수율과 교육 효과 리포트 예외·감사 처리", "desc": "교육 자료, 수강 현황, 평가 결과가 분리되어 필수 교육 이수 관리와 교육 효과 분석이 어렵다. 변경·실패·재처리 조건과 이력을 남긴다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] } ] }, { "id": "F12", "title": "역할·권한·감사 관리", "desc": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다.", "status": "todo", "priority": "mid", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ], "specs": [ { "title": "역할·권한·감사 관리 기본 처리 규칙", "desc": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] }, { "title": "역할·권한·감사 관리 예외·감사 처리", "desc": "필수 교육의 기한 내 이수율을 95% 이상으로 높인다. 변경·실패·재처리 조건과 이력을 남긴다.", "acceptance": [ { "text": "필수 정보, 변경 이력, 담당자와 상태가 감사 가능하게 기록된다.", "done": false } ] } ] } ] } ], "ia": { "sections": [ { "id": "S1", "title": "접수와 데이터 품질", "pages": [ { "id": "P1", "title": "운영 대시보드", "type": "top", "refs": [ "F1", "F1:0", "F3", "F4:0", "F7:1", "F11" ], "children": [] }, { "id": "P2", "title": "업무 목록", "type": "page", "refs": [ "F3", "F3:0", "F4", "F1:0", "F4:1", "F8", "F11:0" ], "children": [] }, { "id": "P3", "title": "등록 화면", "type": "page", "refs": [ "F1", "F1:1", "F2", "F5", "F8:0", "F11:1" ], "children": [] } ] }, { "id": "S2", "title": "업무 기록과 검색", "pages": [ { "id": "P4", "title": "상세 기록", "type": "page", "refs": [ "F3:1", "F4:1", "F11", "F2", "F5:0", "F8:1", "F12" ], "children": [] }, { "id": "P5", "title": "처리 작업 공간", "type": "page", "refs": [ "F5", "F5:0", "F6", "F2:0", "F5:1", "F9", "F12:0" ], "children": [] } ] }, { "id": "S3", "title": "처리와 책임", "pages": [ { "id": "P6", "title": "승인·예외 큐", "type": "page", "refs": [ "F7", "F7:0", "F8", "F2:1", "F6", "F9:0", "F12:1" ], "children": [] }, { "id": "P7", "title": "알림·연동", "type": "page", "refs": [ "F9", "F9:0", "F10", "F3", "F6:0", "F9:1" ], "children": [] } ] }, { "id": "S4", "title": "운영 분석과 통제", "pages": [ { "id": "P8", "title": "운영 리포트", "type": "page", "refs": [ "F11", "F11:0", "F3:0", "F6:1", "F10" ], "children": [] }, { "id": "P9", "title": "정책·권한 설정", "type": "page", "refs": [ "F10:1", "F12", "F3:1", "F7", "F10:0" ], "children": [] }, { "id": "P10", "title": "감사 로그", "type": "page", "refs": [ "F8:1", "F12:0", "F12:1", "F4", "F7:0", "F10:1" ], "children": [] } ] } ] }, "flow": { "start": "P1", "transitions": [ { "from": "P1", "to": "P2", "ref": "F1" }, { "from": "P2", "to": "P3", "ref": "F2" }, { "from": "P3", "to": "P4", "ref": "F3" }, { "from": "P4", "to": "P5", "ref": "F4" }, { "from": "P5", "to": "P6", "ref": "F5" }, { "from": "P6", "to": "P5", "ref": "F8" }, { "from": "P5", "to": "P7", "ref": "F6" }, { "from": "P7", "to": "P8", "ref": "F9" }, { "from": "P8", "to": "P9", "ref": "F10" }, { "from": "P9", "to": "P10", "ref": "F12" }, { "from": "P10", "to": "P4", "ref": "F11" }, { "from": "P4", "to": "P1", "label": "운영 현황 갱신" }, { "from": "P5", "to": "P6", "ref": "F7" } ] } }