Files
pbl02/scenario_json/PRC01.json
T
2026-10-08 16:43:48 +09:00

882 lines
133 KiB
JSON

{
"version": "1.0.0",
"exportedAt": "2026-10-08T00:00:00.000Z",
"id": "PRC01",
"title": "AI 기반 조달계획안 검증 Tool",
"category": "조달·계약·국산화",
"level": 3,
"durationDays": 5,
"requiredHours": 27.0,
"status": "COMPLETED",
"isRecommended": false,
"summary": "",
"objectives": "<p>조달계획안과 계약서는 지체상금률, 선금, 보증, 하도급, 필수 조항 같은 항목이 규정에 맞는지 사람이 한 건씩 읽고 대조해야 해서 검토가 늦어지고 불공정 조항이나 납기 지체 위험 문구를 놓치기 쉽다. 본 프로젝트는 조달계획안과 계약서의 오류와 위험을 검증하는 도구를 만드는 과제로, 조달 업무의 병목과 위험 신호 기준, 조항 수정 대안, 계약 의뢰 근거와 변경 이력, 업무 효과 측정까지 한 흐름으로 구현한다. 교육용 가상 계약 자료로 계약 데이터 스키마 정의, 서식별 자료 정제와 조항 정규화, 룰 기반 규정 준수 판별, 자연어처리 기반 독소·납기 위험 문구 식별, 위험 점수와 신뢰도 엔진, 조항 하이라이트 대시보드와 오류 처리, 계약관·법무 검토 HITL 워크플로우, 1,000건 일괄 스크리닝 부하 시험, AAR 룰셋 재보정, 통합 패키지까지 단계별로 만든다. 최종 목표는 위험 계약을 근거와 함께 먼저 보여 주어 검토 시간을 줄이되, 규정 위반 여부의 판단과 계약 승인은 계약관·법무·승인권자가 하도록 지원하는 도구를 완성하는 것이다.</p>",
"deliverables": [
"docs/prc01_as_is_to_be_spec.md (필수)",
"src/connectors/prc01_data_loader.py (필수)",
"스키마 정의서 (필수)",
"src/engine/prc01_rule_engine.py (필수)",
"src/ai/prc01_intelligence_module.py (필수)",
"src/ui/prc01_app.py (필수)"
],
"constraints": "<h4>부대 보안 및 개인정보 보호</h4><ul><li><p>실제 부대 편성, 위치, 작전 일정, 군번·성명 등 민감 군사보안 및 개인식별정보는 절대 외부 AI에 입력하지 않는다.</p></li><li><p>모든 실습에는 제공된 교육용 가상 데이터셋 및 시뮬레이션 표본만을 활용한다.</p></li></ul><h4>AI 결과와 인간 최종 판단의 구분 (HITL 원칙)</h4><ul><li><p>AI 모델이 제안한 분석값이나 탐지 결과는 참고 지표이며, 최종 승인·보류·교전·배치 명령은 사람이 확정한다.</p></li><li><p>모든 계약·조항·금액·업체 자료는 코드 안에서 만든 교육용 가상 자료이며 실제 계약, 법령 조문, 업체 정보는 사용하지 않는다. 부대·기관 자료의 외부 AI 서비스 입력과 부대 내 촬영은 금지한다. 위험 점수와 문구 식별 결과는 판단 보조 정보이며 규정 위반 여부의 최종 판단, 법무 검토, 계약 승인은 계약관·법무·승인권자가 수행한다. 룰과 대응시킨 지침 조항은 연결 방식을 보이기 위한 가상 예시이며 실제 규정 원문이 아니다. 자연어처리는 외부 LLM 서비스 없이 실행 환경 안의 라이브러리만 사용한다. 미션별 정답 코드는 각각 한 파일로 독립 실행된다.</p></li></ul>",
"evalSummary": "<h4>공통 PASS/FAIL 판정 원칙</h4><ul><li><p><strong>수행 증거:</strong> 요구된 데이터 전처리, 모델 구현, 검증 지표 산출, HITL 워크플로우 증거가 명확한가?</p></li><li><p><strong>판단 근거:</strong> 오경보/미탐 방지, 신뢰도 등급화, 파라미터 튜닝의 군사적·논리적 근거가 타당한가?</p></li><li><p><strong>앞뒤 연결성:</strong> 앞 미션의 스키마·전처리가 뒤 미션의 예측·대시보드·AAR 재보정에 정상 연계되는가?</p></li><li><p><strong>안전성:</strong> 보안 규정 준수, 극단 과부하 상황에서의 Fail-safe 복원력이 확보되었는가?</p></li></ul><h4>프로젝트 완료 조건</h4><p>10개 미션 전체에서 요구되는 필수([필수]) 평가 기준을 모두 PASS해야 프로젝트 최종 PASS로 판정한다.</p>",
"prerequisites": "기본 프로그래밍 지식 및 조달·계약·국산화 데이터 분석 기초",
"refFiles": [],
"refText": "",
"projectSkills": [
{
"skillId": "competency_군특화문제해결_조달·계약·국산화_문제분석",
"level": 3,
"category": "군특화문제해결",
"subCategory": "조달·계약·국산화 문제분석"
},
{
"skillId": "competency_군특화문제해결_조달·계약·국산화_대안도출",
"level": 2,
"category": "군특화문제해결",
"subCategory": "조달·계약·국산화 대안도출"
},
{
"skillId": "competency_데이터분석검증_결과검증",
"level": 3,
"category": "데이터분석검증",
"subCategory": "AI 결과 검증"
},
{
"skillId": "competency_AI활용역량_도구활용",
"level": 2,
"category": "AI활용역량",
"subCategory": "AI 도구 및 모델 활용"
},
{
"skillId": "competency_전술의사결정_인간검토",
"level": 3,
"category": "전술의사결정",
"subCategory": "HITL 인간 검토 및 책임분계"
}
],
"prerequisiteVods": [],
"missions": [
{
"id": "PRC01_M01",
"sequence": 1,
"title": "국방 조달 계약서, 입찰 공고문 및 방위사업법 규정 데이터 구조 분석",
"durationHours": 1.5,
"overview": "<p>조달계획안과 계약서(계약 방식·금액·기간·대금·보증 조건, 필수 조항 유무)의 데이터 구조와 입출력 명세를 정의하고, 현행(AS-IS) 조달계획안 검증 업무를 단계로 나누어 병목을 찾는다.</p>",
"objectives": "<p>계약 식별, 계약 방식·금액·기간, 지체상금률·선금·이행보증·하자보증, 하도급 비율, 필수 조항 유무를 묶어 필드 16개의 스키마와 검증 규칙을 만든다. 가상 계약 100건을 검증하고 형식·허용값·범위·자료형·누락·논리 규칙 위반 오류를 일부러 넣어 검출되는지 확인한다. 조달계획안 검증 업무를 12단계로 분해해 단계별 작업일과 대기일을 계산하고, 자동화할 단계와 계약관·법무가 판단해야 하는 단계를 나눈 TO-BE 안을 비교한다.</p>",
"scenario": "<h4>미션 배경 및 당위성</h4><p>국방 조달 계약서, 입찰 공고문 및 방위사업법 규정 데이터 구조를 분석한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>조달계획안과 계약서(계약 방식·금액·기간·대금·보증 조건, 필수 조항 유무)의 데이터 구조와 입출력 명세를 정의하고, 현행(AS-IS) 조달계획안 검증 업무를 단계로 나누어 병목을 찾는다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>계약 식별, 계약 방식·금액·기간, 지체상금률·선금·이행보증·하자보증, 하도급 비율, 필수 조항 유무를 묶어 필드 16개의 스키마와 검증 규칙 작성하여 원인을 분석하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>docs/prc01_as_is_to_be_spec.md</code> 형태의 결과물을 완성한다.</p>",
"attachments": [],
"materials": [
"/uploads/PRC01/prc01_m01_dataset.json",
"/uploads/PRC01/prc01_m01_sample.md"
],
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m01_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m01_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
"techStack": [
"조달·계약·국산화",
"프로토타입형",
"데이터 전처리",
"알고리즘 구현",
"HITL 검증"
],
"deliverables": [
"docs/prc01_as_is_to_be_spec.md (필수)"
],
"evaluationKeys": [
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[국방 조달 계약서, 입찰 공고문 및 방위사업법 규정 데이터 구조 분석] 요구된 핵심 성능 기준(업무 단계 분해 10단계 이상, 병목 구간 3개소 이상 도출)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>업무 단계 분해 10단계 이상, 병목 구간 3개소 이상 도출 기준을 충족하고 업무 정의서 및 입출력 데이터 명세 작성 완료을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>업무 담당자 권한별 요구사항 반영을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 현행 업무(AS-IS)와 개선 업무(TO-BE) 비교의 명확성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>현행 업무(AS-IS)와 개선 업무(TO-BE) 비교의 명확성이 논리적으로 검증되었으며 실무 프로세스와의 일치성 검증를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
],
"evaluationTypes": [
"REQUIRED",
"REQUIRED"
],
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 현행 업무(AS-IS)와 개선 업무(TO-BE) 비교의 명확성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 업무 단계 분해 10단계 이상, 병목 구간 3개소 이상 도출</p></li><li><p>진행 기준: 업무 정의서 및 입출력 데이터 명세 작성 완료</p></li><li><p>검증 방법: 실무 프로세스와의 일치성 검증</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
"aiGuidelines": {
"allow": [
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
],
"rules": [
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
],
"forbid": [
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
]
},
"guideSteps": [
{
"step": 1,
"problem": "M1 코드를 실행해 스키마 검증 결과와 오류 주입 시험에서 검출된 오류 7건을 확인한다.",
"activity": "<h4>이 단계의 역할</h4><p>M1 코드를 실행해 스키마 검증 결과와 오류 주입 시험에서 검출된 오류 7건을 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M1 코드를 실행해 스키마 검증 결과와 오류 주입 시험에서 검출된 오류 7건을 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>업무 단계 12개(목표 10개 이상), 병목 5개소(목표 3개소 이상) 정상 100건 형식 오류 0건, 주입 오류 7건 검출, 소요 75.1일에서 49.0일 예상(35% 단축)</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M1 코드를 실행해 스키마 검증 결과와 오류 주입 시험에서 검출된 오류 7건을 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>M1 코드를 실행해 스키마 검증 결과와 오류 주입 시험에서 검출된 오류 7건을 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(업무 단계 12개(목표 10개 이상), 병목 5개소(목표 3개소 이상) 정상 100건 형식 오류 0건, 주입 오류 7건 검출, 소요 75.1일에서 49.0일 예상(35% 단축))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 2,
"problem": "AS-IS/TO-BE 업무 단계표에서 대기일이 큰 병목 단계를 찾는다.",
"activity": "<h4>이 단계의 역할</h4><p>AS-IS/TO-BE 업무 단계표에서 대기일이 큰 병목 단계를 찾는다.</p><h4>해야 할 일</h4><ol><li><p>AS-IS/TO-BE 업무 단계표에서 대기일이 큰 병목 단계를 찾는다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>업무 단계 12개(목표 10개 이상), 병목 5개소(목표 3개소 이상) 정상 100건 형식 오류 0건, 주입 오류 7건 검출, 소요 75.1일에서 49.0일 예상(35% 단축)</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>AS-IS/TO-BE 업무 단계표에서 대기일이 큰 병목 단계를 찾는다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>AS-IS/TO-BE 업무 단계표에서 대기일이 큰 병목 단계를 찾는다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(업무 단계 12개(목표 10개 이상), 병목 5개소(목표 3개소 이상) 정상 100건 형식 오류 0건, 주입 오류 7건 검출, 소요 75.1일에서 49.0일 예상(35% 단축))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 3,
"problem": "계약관·법무·승인권자가 판단해야 하는 단계와 자동화할 단계를 구분해 적는다.",
"activity": "<h4>이 단계의 역할</h4><p>계약관·법무·승인권자가 판단해야 하는 단계와 자동화할 단계를 구분해 적는다.</p><h4>해야 할 일</h4><ol><li><p>계약관·법무·승인권자가 판단해야 하는 단계와 자동화할 단계를 구분해 적는다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>업무 단계 12개(목표 10개 이상), 병목 5개소(목표 3개소 이상) 정상 100건 형식 오류 0건, 주입 오류 7건 검출, 소요 75.1일에서 49.0일 예상(35% 단축)</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>계약관·법무·승인권자가 판단해야 하는 단계와 자동화할 단계를 구분해 적는다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>계약관·법무·승인권자가 판단해야 하는 단계와 자동화할 단계를 구분해 적는다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(업무 단계 12개(목표 10개 이상), 병목 5개소(목표 3개소 이상) 정상 100건 형식 오류 0건, 주입 오류 7건 검출, 소요 75.1일에서 49.0일 예상(35% 단축))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 4,
"problem": "도전 과제 및 파라미터 튜닝 최적화",
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>STEPS 표의 '위험 조항 협의 회의' 대기일을 8일에서 3일로 줄이면 병목 개소 수와 전체 소요일이 어떻게 달라지는지 확인한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
"attachments": []
}
]
},
{
"id": "PRC01_M02",
"sequence": 2,
"title": "계약서 텍스트 파싱, 불공정 조항 키워드 추출 및 조항별 정규화 전처리 모듈 구현",
"durationHours": 2.0,
"overview": "<p>서식이 다른 계약 자료(CSV, 엑셀 내보내기, JSON, 계약서·공문 텍스트)를 하나의 표준 스키마로 바꾸고 불공정 조항 키워드를 추출하는 정규화 전처리 모듈을 구현한다.</p>",
"objectives": "<p>열 이름 별칭 사전으로 CSV, 탭 구분(엑셀 내보내기), JSON 세 형식을 표준 스키마로 바꾸고, 금액(억원·백만원·만원·원), 기간(일·주·개월·년), 지체상금률(%, 1/1000, 천분의), 선금 표기를 통일한다. 서식이 서로 다른 계약서·공문 텍스트 5건에서 금액·기간·지체상금률·선금을 정규식으로 뽑고 조항 번호와 호칭을 정규화한 뒤 독소·납기 위험 키워드를 표시한다. 열 이름이 바뀐 새 양식과 표현이 달라진 공문을 넣어 실패를 확인한 뒤 별칭 사전과 정규식 한 줄만 보완해 처리되는지 확인한다.</p>",
"scenario": "<h4>미션 배경 및 당위성</h4><p>계약서 텍스트 파싱, 불공정 조항 키워드 추출 및 정규화 전처리 모듈을 구현한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>서식이 다른 계약 자료(CSV, 엑셀 내보내기, JSON, 계약서·공문 텍스트)를 하나의 표준 스키마로 바꾸고 불공정 조항 키워드를 추출하는 정규화 전처리 모듈을 구현한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>열 이름 별칭 사전으로 CSV, 탭 구분(엑셀 내보내기), JSON 세 형식을 표준 스키마로 바꾸고, 금액(억원·백만원·만원·원), 기간(일·주·개월·년), 지체상금률(%, 1/1000, 천분의), 선금 표기를 통일 수행하고 검증하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 5개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>src/connectors/prc01_data_loader.py 및 스키마 정의서</code> 형태의 결과물을 완성한다.</p>",
"attachments": [],
"materials": [
"/uploads/PRC01/prc01_m02_dataset.json",
"/uploads/PRC01/prc01_m02_sample.md"
],
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m02_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m02_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
"techStack": [
"조달·계약·국산화",
"프로토타입형",
"데이터 전처리",
"알고리즘 구현",
"HITL 검증"
],
"deliverables": [
"src/connectors/prc01_data_loader.py (필수)",
"스키마 정의서 (필수)"
],
"evaluationKeys": [
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[계약서 텍스트 파싱, 불공정 조항 키워드 추출 및 조항별 정규화 전처리 모듈 구현] 요구된 핵심 성능 기준(지원 파일 포맷(CSV, Excel, JSON 등) 파싱 성공률 100%)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>지원 파일 포맷(CSV, Excel, JSON 등) 파싱 성공률 100% 기준을 충족하고 데이터 로더 및 스키마 유효성 검사 모듈 완성을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>비정형 서식(공문 텍스트 등) 파싱 룰 보완을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 국방 서식/양식 변경에 대한 유연한 확장성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>국방 서식/양식 변경에 대한 유연한 확장성이 논리적으로 검증되었으며 다양한 형태의 샘플 군수 문서 대상 파싱 테스트를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
],
"evaluationTypes": [
"REQUIRED",
"REQUIRED"
],
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 국방 서식/양식 변경에 대한 유연한 확장성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 지원 파일 포맷(CSV, Excel, JSON 등) 파싱 성공률 100%</p></li><li><p>진행 기준: 데이터 로더 및 스키마 유효성 검사 모듈 완성</p></li><li><p>검증 방법: 다양한 형태의 샘플 군수 문서 대상 파싱 테스트</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
"aiGuidelines": {
"allow": [
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
],
"rules": [
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
],
"forbid": [
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
]
},
"guideSteps": [
{
"step": 1,
"problem": "M2 코드를 실행해 CSV·탭 구분·JSON 파싱 결과와 계약서·공문 텍스트 추출 결과를 ...",
"activity": "<h4>이 단계의 역할</h4><p>M2 코드를 실행해 CSV·탭 구분·JSON 파싱 결과와 계약서·공문 텍스트 추출 결과를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M2 코드를 실행해 CSV·탭 구분·JSON 파싱 결과와 계약서·공문 텍스트 추출 결과를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>파싱 성공률 100%(19/19), 계약서·공문 5건 모두 추출 중복 제거 후 13건, 키워드가 걸린 조항 6개, 새 양식은 별칭 추가로 처리</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M2 코드를 실행해 CSV·탭 구분·JSON 파싱 결과와 계약서·공문 텍스트 추출 결과를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>M2 코드를 실행해 CSV·탭 구분·JSON 파싱 결과와 계약서·공문 텍스트 추출 결과를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(파싱 성공률 100%(19/19), 계약서·공문 5건 모두 추출 중복 제거 후 13건, 키워드가 걸린 조항 6개, 새 양식은 별칭 추가로 처리)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 2,
"problem": "금액·기간·지체상금률 표기(1.5억원, 3개월, 천분의",
"activity": "<h4>이 단계의 역할</h4><p>금액·기간·지체상금률 표기(1.5억원, 3개월, 천분의</p><h4>해야 할 일</h4><ol><li><p>금액·기간·지체상금률 표기(1.5억원, 3개월, 천분의에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>파싱 성공률 100%(19/19), 계약서·공문 5건 모두 추출 중복 제거 후 13건, 키워드가 걸린 조항 6개, 새 양식은 별칭 추가로 처리</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>금액·기간·지체상금률 표기(1.5억원, 3개월, 천분의 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>금액·기간·지체상금률 표기(1.5억원, 3개월, 천분의 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(파싱 성공률 100%(19/19), 계약서·공문 5건 모두 추출 중복 제거 후 13건, 키워드가 걸린 조항 6개, 새 양식은 별칭 추가로 처리)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 3,
"problem": "0 등)가 어떻게 통일되는지 정제표에서 확인한다.",
"activity": "<h4>이 단계의 역할</h4><p>0 등)가 어떻게 통일되는지 정제표에서 확인한다.</p><h4>해야 할 일</h4><ol><li><p>0 등)가 어떻게 통일되는지 정제표에서 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>파싱 성공률 100%(19/19), 계약서·공문 5건 모두 추출 중복 제거 후 13건, 키워드가 걸린 조항 6개, 새 양식은 별칭 추가로 처리</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>0 등)가 어떻게 통일되는지 정제표에서 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>0 등)가 어떻게 통일되는지 정제표에서 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(파싱 성공률 100%(19/19), 계약서·공문 5건 모두 추출 중복 제거 후 13건, 키워드가 걸린 조항 6개, 새 양식은 별칭 추가로 처리)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 4,
"problem": "새 양식·새 표현 시험에서 실패했다가 별칭 사전과 정규식 한 줄 추가 후 성공하는 과정을 ...",
"activity": "<h4>이 단계의 역할</h4><p>새 양식·새 표현 시험에서 실패했다가 별칭 사전과 정규식 한 줄 추가 후 성공하는 과정을 설명한다.</p><h4>해야 할 일</h4><ol><li><p>새 양식·새 표현 시험에서 실패했다가 별칭 사전과 정규식 한 줄 추가 후 성공하는 과정을 설명한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>파싱 성공률 100%(19/19), 계약서·공문 5건 모두 추출 중복 제거 후 13건, 키워드가 걸린 조항 6개, 새 양식은 별칭 추가로 처리</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>새 양식·새 표현 시험에서 실패했다가 별칭 사전과 정규식 한 줄 추가 후 성공하는 과정을 설명한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>새 양식·새 표현 시험에서 실패했다가 별칭 사전과 정규식 한 줄 추가 후 성공하는 과정을 설명한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(파싱 성공률 100%(19/19), 계약서·공문 5건 모두 추출 중복 제거 후 13건, 키워드가 걸린 조항 6개, 새 양식은 별칭 추가로 처리)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 5,
"problem": "도전 과제 및 파라미터 튜닝 최적화",
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>DOCS에 '선금 지급률'이라고 쓴 계약서 한 건을 추가해 실패하는지 보고, DOC_PAT의 advance 정규식을 고쳐 해결한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
"attachments": []
}
]
},
{
"id": "PRC01_M03",
"sequence": 3,
"title": "방위사업 계약 필수 규정 준수 여부 자동 판별 1차 Rule 엔진 구현",
"durationHours": 2.5,
"overview": "<p>방위사업 계약 필수 규정(가상 지침)의 준수 여부를 판별하는 룰 15종 이상을 YAML 설정으로 코딩하고 계약별 1차 판별 등급을 산출한다.</p>",
"objectives": "<p>지체상금률 하한, 선금 한도와 보증, 수의계약 한도, 이행보증, 하자보증, 해지·보안·지식재산 조항 유무, 하도급 비율, 검사 기간, 납품 기한 논리, 물가변동 조항, 장기 계약, 불공정 키워드 등 16종 룰을 가중치 합으로 고위험·주의·관심 등급에 연결한다. 각 룰에 가상 지침 조항을 연결해 판정 근거를 보이고, 기준값 바로 아래·위 경계 조건 단위 시험 32건과 레코드 1건당 처리 지연시간을 측정한다. 계약관 확정 위반 여부와 등급을 비교해 재현율·정밀도를 확인하고, 수의계약 한도를 바꿔 코드 수정 없이 결과가 달라지는지 확인한다.</p>",
"scenario": "<h4>미션 배경 및 당위성</h4><p>방위사업 계약 필수 규정 준수 여부 판별 Rule 엔진을 구현한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>방위사업 계약 필수 규정(가상 지침)의 준수 여부를 판별하는 룰 15종 이상을 YAML 설정으로 코딩하고 계약별 1차 판별 등급을 산출한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>지체상금률 하한, 선금 한도와 보증, 수의계약 한도, 이행보증, 하자보증, 해지·보안·지식재산 조항 유무, 하도급 비율, 검사 기간, 납품 기한 논리, 물가변동 조항, 장기 계약, 불공정 키워드 등 16종 룰을 가중치 합으로 고위험·주의·관심 등급에 연결 수행하고 검증하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>src/engine/prc01_rule_engine.py</code> 형태의 결과물을 완성한다.</p>",
"attachments": [],
"materials": [
"/uploads/PRC01/prc01_m03_dataset.json",
"/uploads/PRC01/prc01_m03_sample.md"
],
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m03_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m03_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
"techStack": [
"조달·계약·국산화",
"프로토타입형",
"데이터 전처리",
"알고리즘 구현",
"HITL 검증"
],
"deliverables": [
"src/engine/prc01_rule_engine.py (필수)"
],
"evaluationKeys": [
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[방위사업 계약 필수 규정 준수 여부 자동 판별 1차 Rule 엔진 구현] 요구된 핵심 성능 기준(업무 검증 룰 15종 이상 코딩, 룰 처리 지연시간 50ms 이하)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>업무 검증 룰 15종 이상 코딩, 룰 처리 지연시간 50ms 이하 기준을 충족하고 룰 엔진 단위 테스트 100% 통과을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>규정 변경 시 코드 수정 없이 룰을 갱신하는 YAML 설정 분리을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 군 규정 및 지침 조항과의 정확한 일치성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>군 규정 및 지침 조항과의 정확한 일치성이 논리적으로 검증되었으며 경계 조건(Boundary condition)에 대한 룰 판정 검증를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
],
"evaluationTypes": [
"REQUIRED",
"REQUIRED"
],
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 군 규정 및 지침 조항과의 정확한 일치성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 업무 검증 룰 15종 이상 코딩, 룰 처리 지연시간 50ms 이하</p></li><li><p>진행 기준: 룰 엔진 단위 테스트 100% 통과</p></li><li><p>검증 방법: 경계 조건(Boundary condition)에 대한 룰 판정 검증</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
"aiGuidelines": {
"allow": [
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
],
"rules": [
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
],
"forbid": [
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
]
},
"guideSteps": [
{
"step": 1,
"problem": "M3 코드를 실행해 룰 16종의 적중 건수와 등급 분포를 확인한다.",
"activity": "<h4>이 단계의 역할</h4><p>M3 코드를 실행해 룰 16종의 적중 건수와 등급 분포를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M3 코드를 실행해 룰 16종의 적중 건수와 등급 분포를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>룰 16종(목표 15종 이상), 단위 시험 32/32 통과, 지연시간 평균 약 0.01ms(목표 50ms 이하) 고위험 22·주의 68·관심 110, 실제 위반율 100%·72%·7%, 재현율 90%·정밀도 79%</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M3 코드를 실행해 룰 16종의 적중 건수와 등급 분포를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>M3 코드를 실행해 룰 16종의 적중 건수와 등급 분포를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(룰 16종(목표 15종 이상), 단위 시험 32/32 통과, 지연시간 평균 약 0.01ms(목표 50ms 이하) 고위험 22·주의 68·관심 110, 실제 위반율 100%·72%·7%, 재현율 90%·정밀도 79%)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 2,
"problem": "경계 조건 단위 시험 32건이 모두 통과하는지, 기준값 바로 아래·위에서 룰이 켜지고 꺼지...",
"activity": "<h4>이 단계의 역할</h4><p>경계 조건 단위 시험 32건이 모두 통과하는지, 기준값 바로 아래·위에서 룰이 켜지고 꺼지는지 읽는다.</p><h4>해야 할 일</h4><ol><li><p>경계 조건 단위 시험 32건이 모두 통과하는지, 기준값 바로 아래·위에서 룰이 켜지고 꺼지는지 읽는다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>룰 16종(목표 15종 이상), 단위 시험 32/32 통과, 지연시간 평균 약 0.01ms(목표 50ms 이하) 고위험 22·주의 68·관심 110, 실제 위반율 100%·72%·7%, 재현율 90%·정밀도 79%</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>경계 조건 단위 시험 32건이 모두 통과하는지, 기준값 바로 아래·위에서 룰이 켜지고 꺼지는지 읽는다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>경계 조건 단위 시험 32건이 모두 통과하는지, 기준값 바로 아래·위에서 룰이 켜지고 꺼지는지 읽는다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(룰 16종(목표 15종 이상), 단위 시험 32/32 통과, 지연시간 평균 약 0.01ms(목표 50ms 이하) 고위험 22·주의 68·관심 110, 실제 위반율 100%·72%·7%, 재현율 90%·정밀도 79%)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 3,
"problem": "고위험 상위 3건의 근거 룰과 가상 지침 조항을 읽고 사람이 먼저 확인할 순서를 정한다.",
"activity": "<h4>이 단계의 역할</h4><p>고위험 상위 3건의 근거 룰과 가상 지침 조항을 읽고 사람이 먼저 확인할 순서를 정한다.</p><h4>해야 할 일</h4><ol><li><p>고위험 상위 3건의 근거 룰과 가상 지침 조항을 읽고 사람이 먼저 확인할 순서를 정한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>룰 16종(목표 15종 이상), 단위 시험 32/32 통과, 지연시간 평균 약 0.01ms(목표 50ms 이하) 고위험 22·주의 68·관심 110, 실제 위반율 100%·72%·7%, 재현율 90%·정밀도 79%</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>고위험 상위 3건의 근거 룰과 가상 지침 조항을 읽고 사람이 먼저 확인할 순서를 정한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>고위험 상위 3건의 근거 룰과 가상 지침 조항을 읽고 사람이 먼저 확인할 순서를 정한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(룰 16종(목표 15종 이상), 단위 시험 32/32 통과, 지연시간 평균 약 0.01ms(목표 50ms 이하) 고위험 22·주의 68·관심 110, 실제 위반율 100%·72%·7%, 재현율 90%·정밀도 79%)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 4,
"problem": "도전 과제 및 파라미터 튜닝 최적화",
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>RULES_YAML의 R04 수의계약 한도를 300에서 250으로 설정만 바꿔 재현율과 선별 건수가 어떻게 달라지는지 비교한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
"attachments": []
}
]
},
{
"id": "PRC01_M04",
"sequence": 4,
"title": "LLM/자연어처리 기반 독소 조항, 납기 지체 위험 문구 자동 식별 모델 고도화",
"durationHours": 3.0,
"overview": "<p>자연어처리(글자 n-gram TF-IDF와 로지스틱 회귀)로 독소 조항과 납기 지체 위험 문구를 식별하는 모델을 만들고 수정 권고 문안을 제시한다.</p>",
"objectives": "<p>조항 문장을 정상·독소·납기위험 세 종류로 분류하는 모델을 학습하고, 학습에 쓴 문장 틀과 처음 보는 표현 두 시험 세트로 정확도를 계산해 단순 키워드 기준선과 비교한다. 오분류 사례를 확인하고 분류에 크게 기여한 표현을 근거로 보인다. 위험 조항마다 표준 문안 라이브러리와의 유사도로 수정 권고 Top-3와 유사도 점수를 제시하고 과거 처리된 수정 주제와의 일치도를 계산한다. 외부 LLM 서비스는 사용하지 않는다.</p>",
"scenario": "<h4>미션 배경 및 당위성</h4><p>자연어처리 기반 독소 조항 및 납기 지체 위험 문구 식별 모델을 고도화한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>자연어처리(글자 n-gram TF-IDF와 로지스틱 회귀)로 독소 조항과 납기 지체 위험 문구를 식별하는 모델을 만들고 수정 권고 문안을 제시한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>조항 문장을 정상·독소·납기위험 세 종류로 분류하는 모델을 학습하고, 학습에 쓴 문장 틀과 처음 보는 표현 두 시험 세트로 정확도를 계산해 단순 키워드 기준선과 비교 수행하고 검증하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>src/ai/prc01_intelligence_module.py</code> 형태의 결과물을 완성한다.</p>",
"attachments": [],
"materials": [
"/uploads/PRC01/prc01_m04_dataset.json",
"/uploads/PRC01/prc01_m04_sample.md"
],
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m04_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m04_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
"techStack": [
"조달·계약·국산화",
"프로토타입형",
"데이터 전처리",
"알고리즘 구현",
"HITL 검증"
],
"deliverables": [
"src/ai/prc01_intelligence_module.py (필수)"
],
"evaluationKeys": [
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[LLM/자연어처리 기반 독소 조항, 납기 지체 위험 문구 자동 식별 모델 고도화] 요구된 핵심 성능 기준(추천/분류 정확도 85% 이상 달성)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>추천/분류 정확도 85% 이상 달성 기준을 충족하고 AI 추론 모듈 구현 및 벤치마크 테스트 완료을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>추천 결과 상위 Top-3 옵션 및 유사도 점수 제공을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 추천 사유의 합리성 및 실무 수용성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>추천 사유의 합리성 및 실무 수용성이 논리적으로 검증되었으며 과거 승인/처리 완료 데이터와의 추천 일치도 검증를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
],
"evaluationTypes": [
"REQUIRED",
"REQUIRED"
],
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 추천 사유의 합리성 및 실무 수용성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 추천/분류 정확도 85% 이상 달성</p></li><li><p>진행 기준: AI 추론 모듈 구현 및 벤치마크 테스트 완료</p></li><li><p>검증 방법: 과거 승인/처리 완료 데이터와의 추천 일치도 검증</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
"aiGuidelines": {
"allow": [
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
],
"rules": [
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
],
"forbid": [
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
]
},
"guideSteps": [
{
"step": 1,
"problem": "M4 코드를 실행해 시험 A(같은 문장 틀)와 시험 B(처음 보는 표현)의 정확도를 확인한...",
"activity": "<h4>이 단계의 역할</h4><p>M4 코드를 실행해 시험 A(같은 문장 틀)와 시험 B(처음 보는 표현)의 정확도를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M4 코드를 실행해 시험 A(같은 문장 틀)와 시험 B(처음 보는 표현)의 정확도를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>정확도 시험 A 100%, 시험 B 95.3%, 전체 98.4%(목표 85% 이상), 키워드 기준선 64.4% 표준 문안 추천 Top-1 94.4%, Top-3 97.8%</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M4 코드를 실행해 시험 A(같은 문장 틀)와 시험 B(처음 보는 표현)의 정확도를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>M4 코드를 실행해 시험 A(같은 문장 틀)와 시험 B(처음 보는 표현)의 정확도를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(정확도 시험 A 100%, 시험 B 95.3%, 전체 98.4%(목표 85% 이상), 키워드 기준선 64.4% 표준 문안 추천 Top-1 94.4%, Top-3 97.8%)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 2,
"problem": "단순 키워드 기준선과 모델의 정확도 차이, 오분류 사례를 읽는다.",
"activity": "<h4>이 단계의 역할</h4><p>단순 키워드 기준선과 모델의 정확도 차이, 오분류 사례를 읽는다.</p><h4>해야 할 일</h4><ol><li><p>단순 키워드 기준선과 모델의 정확도 차이, 오분류 사례를 읽는다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>정확도 시험 A 100%, 시험 B 95.3%, 전체 98.4%(목표 85% 이상), 키워드 기준선 64.4% 표준 문안 추천 Top-1 94.4%, Top-3 97.8%</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>단순 키워드 기준선과 모델의 정확도 차이, 오분류 사례를 읽는다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>단순 키워드 기준선과 모델의 정확도 차이, 오분류 사례를 읽는다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(정확도 시험 A 100%, 시험 B 95.3%, 전체 98.4%(목표 85% 이상), 키워드 기준선 64.4% 표준 문안 추천 Top-1 94.4%, Top-3 97.8%)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 3,
"problem": "위험 조항 예시마다 근거 표현과 수정 권고 Top-3, 유사도 점수를 확인한다.",
"activity": "<h4>이 단계의 역할</h4><p>위험 조항 예시마다 근거 표현과 수정 권고 Top-3, 유사도 점수를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>위험 조항 예시마다 근거 표현과 수정 권고 Top-3, 유사도 점수를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>정확도 시험 A 100%, 시험 B 95.3%, 전체 98.4%(목표 85% 이상), 키워드 기준선 64.4% 표준 문안 추천 Top-1 94.4%, Top-3 97.8%</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>위험 조항 예시마다 근거 표현과 수정 권고 Top-3, 유사도 점수를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>위험 조항 예시마다 근거 표현과 수정 권고 Top-3, 유사도 점수를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(정확도 시험 A 100%, 시험 B 95.3%, 전체 98.4%(목표 85% 이상), 키워드 기준선 64.4% 표준 문안 추천 Top-1 94.4%, Top-3 97.8%)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 4,
"problem": "도전 과제 및 파라미터 튜닝 최적화",
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>fit_clause_model의 학습 문장 수 n을 1200에서 100으로 줄이면 시험 B 정확도가 얼마나 떨어지는지 비교하고 이유를 적는다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
"attachments": []
}
]
},
{
"id": "PRC01_M05",
"sequence": 5,
"title": "계약 위험 점수 산출 및 규정 위반 가능성 신뢰도 지수 엔진 개발",
"durationHours": 3.0,
"overview": "<p>룰 적중 내역과 조항 분류 결과를 결합해 계약 위험 점수와 규정 위반 가능성 신뢰도 지수를 산출하고 입력-분석-검토-결과 4개 화면을 구성한다.</p>",
"objectives": "<p>룰 16종 적중 여부, 모델이 찾은 독소·납기위험 조항 수, 금액을 로지스틱 회귀로 결합해 0~100점의 위험 점수를 만들고, 점수의 뚜렷함과 룰·모델 일치 여부로 신뢰도 지수를 정의한다. 별도 가상 계약군에서 AUC와 등급별 실제 위반율, 신뢰도 구간별 실제 정확도를 확인한다. 입력 요약, 점수 분포와 성능, 고위험 검토 목록, 결과 요약의 4개 화면을 텍스트 패널과 그래프로 만들고 검토 필수·확인 권고·통과 후보 뱃지와 필터를 붙인다.</p>",
"scenario": "<h4>미션 배경 및 당위성</h4><p>계약 위험 점수 산출 및 규정 위반 가능성 신뢰도 엔진을 개발한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>룰 적중 내역과 조항 분류 결과를 결합해 계약 위험 점수와 규정 위반 가능성 신뢰도 지수를 산출하고 입력-분석-검토-결과 4개 화면을 구성한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>룰 16종 적중 여부, 모델이 찾은 독소·납기위험 조항 수, 금액을 로지스틱 회귀로 결합해 0~100점의 위험 점수를 만들고, 점수의 뚜렷함과 룰·모델 일치 여부로 신뢰도 지수 정의하고 검증하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>src/ui/prc01_app.py</code> 형태의 결과물을 완성한다.</p>",
"attachments": [],
"materials": [
"/uploads/PRC01/prc01_m05_dataset.json",
"/uploads/PRC01/prc01_m05_sample.md"
],
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m05_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m05_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
"techStack": [
"조달·계약·국산화",
"프로토타입형",
"데이터 전처리",
"알고리즘 구현",
"HITL 검증"
],
"deliverables": [
"src/ui/prc01_app.py (필수)"
],
"evaluationKeys": [
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[계약 위험 점수 산출 및 규정 위반 가능성 신뢰도 지수 엔진 개발] 요구된 핵심 성능 기준(핵심 화면 4종(입력-분석-검토-결과) 구현 완료)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>핵심 화면 4종(입력-분석-검토-결과) 구현 완료 기준을 충족하고 UI 프로토타입 로컬 서버 구동 및 전체 페이지 네비게이션 확인을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>상태별 뱃지(승인대기, 반려, 완료 등) 및 필터링 기능 강화을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 군 실무자 친화적 디자인 및 조작 편의성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>군 실무자 친화적 디자인 및 조작 편의성이 논리적으로 검증되었으며 사용성 평가(UX Walkthrough) 및 인터랙션 테스트를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
],
"evaluationTypes": [
"REQUIRED",
"REQUIRED"
],
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 군 실무자 친화적 디자인 및 조작 편의성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 핵심 화면 4종(입력-분석-검토-결과) 구현 완료</p></li><li><p>진행 기준: UI 프로토타입 로컬 서버 구동 및 전체 페이지 네비게이션 확인</p></li><li><p>검증 방법: 사용성 평가(UX Walkthrough) 및 인터랙션 테스트</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
"aiGuidelines": {
"allow": [
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
],
"rules": [
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
],
"forbid": [
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
]
},
"guideSteps": [
{
"step": 1,
"problem": "M5 코드를 실행해 화면 1~4 패널 출력을 순서대로 확인한다.",
"activity": "<h4>이 단계의 역할</h4><p>M5 코드를 실행해 화면 1~4 패널 출력을 순서대로 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M5 코드를 실행해 화면 1~4 패널 출력을 순서대로 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>화면 4종 구현(목표 4종), AUC 0.954, 고위험 112건 실제 위반 94% vs 관심 180건 5% 신뢰도 90 이상 구간 정확도 95%, 50 미만 구간 84%</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M5 코드를 실행해 화면 1~4 패널 출력을 순서대로 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>M5 코드를 실행해 화면 1~4 패널 출력을 순서대로 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(화면 4종 구현(목표 4종), AUC 0.954, 고위험 112건 실제 위반 94% vs 관심 180건 5% 신뢰도 90 이상 구간 정확도 95%, 50 미만 구간 84%)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 2,
"problem": "위험 점수 등급별 실제 위반율과 AUC를 읽고 모델의 한계를 적는다.",
"activity": "<h4>이 단계의 역할</h4><p>위험 점수 등급별 실제 위반율과 AUC를 읽고 모델의 한계를 적는다.</p><h4>해야 할 일</h4><ol><li><p>위험 점수 등급별 실제 위반율과 AUC를 읽고 모델의 한계를 적는다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>화면 4종 구현(목표 4종), AUC 0.954, 고위험 112건 실제 위반 94% vs 관심 180건 5% 신뢰도 90 이상 구간 정확도 95%, 50 미만 구간 84%</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>위험 점수 등급별 실제 위반율과 AUC를 읽고 모델의 한계를 적는다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>위험 점수 등급별 실제 위반율과 AUC를 읽고 모델의 한계를 적는다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(화면 4종 구현(목표 4종), AUC 0.954, 고위험 112건 실제 위반 94% vs 관심 180건 5% 신뢰도 90 이상 구간 정확도 95%, 50 미만 구간 84%)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 3,
"problem": "신뢰도 지수 구간별 실제 정확도를 비교하고, 신뢰도가 낮은 주의 건을 필터로 골라 본다.",
"activity": "<h4>이 단계의 역할</h4><p>신뢰도 지수 구간별 실제 정확도를 비교하고, 신뢰도가 낮은 주의 건을 필터로 골라 본다.</p><h4>해야 할 일</h4><ol><li><p>신뢰도 지수 구간별 실제 정확도를 비교하고, 신뢰도가 낮은 주의 건을 필터로 골라 본다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>화면 4종 구현(목표 4종), AUC 0.954, 고위험 112건 실제 위반 94% vs 관심 180건 5% 신뢰도 90 이상 구간 정확도 95%, 50 미만 구간 84%</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>신뢰도 지수 구간별 실제 정확도를 비교하고, 신뢰도가 낮은 주의 건을 필터로 골라 본다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>신뢰도 지수 구간별 실제 정확도를 비교하고, 신뢰도가 낮은 주의 건을 필터로 골라 본다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(화면 4종 구현(목표 4종), AUC 0.954, 고위험 112건 실제 위반 94% vs 관심 180건 5% 신뢰도 90 이상 구간 정확도 95%, 50 미만 구간 84%)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 4,
"problem": "도전 과제 및 파라미터 튜닝 최적화",
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>WARN의 고위험 기준을 60점에서 80점으로 올려 고위험 건수와 실제 위반율이 어떻게 바뀌는지 비교한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
"attachments": []
}
]
},
{
"id": "PRC01_M06",
"sequence": 6,
"title": "계약서 조항별 위험도 하이라이트 및 조달 검토 대시보드 구현",
"durationHours": 2.5,
"overview": "<p>계약서 조항별 위험도 하이라이트와 조달 검토 대시보드를 구현하고 입력 검증기·에러 핸들러로 예외 상황에서도 크래시 없이 동작하게 한다.</p>",
"objectives": "<p>계약 방식 x 유형 위험 지도와 위험 문구가 많은 계약의 조항별 하이라이트(독소·납기위험 표시, 위험 표현 강조)를 보여 주는 대시보드를 만든다. 입력 검증기로 열 누락, 숫자 오류, 허용되지 않은 값, 번호 중복, 특수문자·제어문자, 1MB 조항, 20,000행 대용량 등 깨진 입력 20종을 주입한다. 모든 오류를 사용자용 안내와 조치 문구로 바꾸고 에러 로그에 남기며, 일시 오류는 3회 재시도하고 끝내 실패하면 직전 정상 화면으로 롤백한다.</p>",
"scenario": "<h4>미션 배경 및 당위성</h4><p>계약서 조항별 위험도 하이라이트 및 조달 검토 대시보드를 구현한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>계약서 조항별 위험도 하이라이트와 조달 검토 대시보드를 구현하고 입력 검증기·에러 핸들러로 예외 상황에서도 크래시 없이 동작하게 한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>계약 방식 x 유형 위험 지도와 위험 문구가 많은 계약의 조항별 하이라이트(독소·납기위험 표시, 위험 표현 강조)를 보여 주는 대시보드 작성하여 원인을 분석하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>src/utils/prc01_validator.py 및 에러 핸들러</code> 형태의 결과물을 완성한다.</p>",
"attachments": [],
"materials": [
"/uploads/PRC01/prc01_m06_dataset.json",
"/uploads/PRC01/prc01_m06_sample.md"
],
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m06_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m06_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
"techStack": [
"조달·계약·국산화",
"프로토타입형",
"데이터 전처리",
"알고리즘 구현",
"HITL 검증"
],
"deliverables": [
"src/utils/prc01_validator.py (필수)",
"에러 핸들러 (필수)"
],
"evaluationKeys": [
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[계약서 조항별 위험도 하이라이트 및 조달 검토 대시보드 구현] 요구된 핵심 성능 기준(예외 상황 발생 시 크래시(Crash) 0건, 에러 로그 기록률 100%)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>예외 상황 발생 시 크래시(Crash) 0건, 에러 로그 기록률 100% 기준을 충족하고 예외 주입 테스트 10종 통과 및 감사 로그 파일 생성을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>자동 복구(Retry) 및 트랜잭션 롤백 메커니즘 적용을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 사용자에게 알기 쉬운 에러 메시지 및 조치 가이드 제공 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>사용자에게 알기 쉬운 에러 메시지 및 조치 가이드 제공이 논리적으로 검증되었으며 비정상 데이터(결측, 특수문자, 대용량) 스트레스 테스트를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
],
"evaluationTypes": [
"REQUIRED",
"REQUIRED"
],
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 사용자에게 알기 쉬운 에러 메시지 및 조치 가이드 제공</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 예외 상황 발생 시 크래시(Crash) 0건, 에러 로그 기록률 100%</p></li><li><p>진행 기준: 예외 주입 테스트 10종 통과 및 감사 로그 파일 생성</p></li><li><p>검증 방법: 비정상 데이터(결측, 특수문자, 대용량) 스트레스 테스트</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
"aiGuidelines": {
"allow": [
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
],
"rules": [
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
],
"forbid": [
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
]
},
"guideSteps": [
{
"step": 1,
"problem": "M6 코드를 실행해 깨진 입력 20종의 처리 결과와 안내 문구를 확인한다.",
"activity": "<h4>이 단계의 역할</h4><p>M6 코드를 실행해 깨진 입력 20종의 처리 결과와 안내 문구를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M6 코드를 실행해 깨진 입력 20종의 처리 결과와 안내 문구를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>예외 주입 20종(목표 10종 이상), 크래시 0건, 오류 7건 모두 로그 기록(100%) 일시 오류 2회 후 성공, 끝내 실패 시 직전 화면(100건) 유지</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M6 코드를 실행해 깨진 입력 20종의 처리 결과와 안내 문구를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>M6 코드를 실행해 깨진 입력 20종의 처리 결과와 안내 문구를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(예외 주입 20종(목표 10종 이상), 크래시 0건, 오류 7건 모두 로그 기록(100%) 일시 오류 2회 후 성공, 끝내 실패 시 직전 화면(100건) 유지)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 2,
"problem": "에러 로그에 오류 코드가 모두 남았는지, 재시도와 롤백 동작을 확인한다.",
"activity": "<h4>이 단계의 역할</h4><p>에러 로그에 오류 코드가 모두 남았는지, 재시도와 롤백 동작을 확인한다.</p><h4>해야 할 일</h4><ol><li><p>에러 로그에 오류 코드가 모두 남았는지, 재시도와 롤백 동작을 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>예외 주입 20종(목표 10종 이상), 크래시 0건, 오류 7건 모두 로그 기록(100%) 일시 오류 2회 후 성공, 끝내 실패 시 직전 화면(100건) 유지</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>에러 로그에 오류 코드가 모두 남았는지, 재시도와 롤백 동작을 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>에러 로그에 오류 코드가 모두 남았는지, 재시도와 롤백 동작을 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(예외 주입 20종(목표 10종 이상), 크래시 0건, 오류 7건 모두 로그 기록(100%) 일시 오류 2회 후 성공, 끝내 실패 시 직전 화면(100건) 유지)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 3,
"problem": "위험 지도와 조항 하이라이트 화면에서 【 】로 강조된 위험 표현을 읽는다.",
"activity": "<h4>이 단계의 역할</h4><p>위험 지도와 조항 하이라이트 화면에서 【 】로 강조된 위험 표현을 읽는다.</p><h4>해야 할 일</h4><ol><li><p>위험 지도와 조항 하이라이트 화면에서 【 】로 강조된 위험 표현을 읽는다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>예외 주입 20종(목표 10종 이상), 크래시 0건, 오류 7건 모두 로그 기록(100%) 일시 오류 2회 후 성공, 끝내 실패 시 직전 화면(100건) 유지</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>위험 지도와 조항 하이라이트 화면에서 【 】로 강조된 위험 표현을 읽는다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>위험 지도와 조항 하이라이트 화면에서 【 】로 강조된 위험 표현을 읽는다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(예외 주입 20종(목표 10종 이상), 크래시 0건, 오류 7건 모두 로그 기록(100%) 일시 오류 2회 후 성공, 끝내 실패 시 직전 화면(100건) 유지)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 4,
"problem": "도전 과제 및 파라미터 튜닝 최적화",
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>cases에 '지체상금률에 음수(-1)' 입력을 하나 추가해 격리되는지, 안내 문구가 이해하기 쉬운지 확인한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
"attachments": []
}
]
},
{
"id": "PRC01_M07",
"sequence": 7,
"title": "계약 승인 전 법무/계약관 수동 검토 및 조항 수정 권고 HITL 절차 설계",
"durationHours": 3.0,
"overview": "<p>계약 승인 전 계약관·법무 수동 검토와 조항 수정 권고를 위한 HITL 절차를 설계하고 이력 무결성과 권한 통제를 검증한다.</p>",
"objectives": "<p>시스템 제안, 계약담당 상신, 계약관 검토, 법무 검토, 승인권자 결재의 순서를 상태 기계로 구현하고 역할별 권한을 최소로 둔다. 모든 단계는 사유와 근거 입력을 필수로 하고 반려 사유가 없으면 처리하지 않으며, 반려된 건은 최초 상신자의 재기안 후에만 다시 진행하고 재기안은 2회까지 허용한다. 시스템 자동 승인, 단계 건너뛰기, 상신자 본인 승인, 로그 삭제 등 우회 시도 13종이 차단되는지 역할별 권한 매트릭스와 함께 확인하고 해시 체인 감사 로그의 임의 수정 탐지를 점검한다.</p>",
"scenario": "<h4>미션 배경 및 당위성</h4><p>계약 승인 전 계약관 수동 검토 및 조항 수정 권고 HITL 절차를 설계한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>계약 승인 전 계약관·법무 수동 검토와 조항 수정 권고를 위한 HITL 절차를 설계하고 이력 무결성과 권한 통제를 검증한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>시스템 제안, 계약담당 상신, 계약관 검토, 법무 검토, 승인권자 결재의 순서를 상태 기계로 구현하고 역할별 권한을 최소로 둔다 과정을 진행하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>src/workflow/prc01_approval_system.py</code> 형태의 결과물을 완성한다.</p>",
"attachments": [],
"materials": [
"/uploads/PRC01/prc01_m07_dataset.json",
"/uploads/PRC01/prc01_m07_sample.md"
],
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m07_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m07_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
"techStack": [
"조달·계약·국산화",
"프로토타입형",
"데이터 전처리",
"알고리즘 구현",
"HITL 검증"
],
"deliverables": [
"src/workflow/prc01_approval_system.py (필수)"
],
"evaluationKeys": [
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[계약 승인 전 법무/계약관 수동 검토 및 조항 수정 권고 HITL 절차 설계] 요구된 핵심 성능 기준(이력 기록 무결성 100%, 승인 권한 우회 시도 차단율 100%)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>이력 기록 무결성 100%, 승인 권한 우회 시도 차단율 100% 기준을 충족하고 결재선 승인/반려 시뮬레이션 및 이력 조회 화면 구현을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>반려 사유 입력 필수화 및 재기안 워크플로우 연계을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 군 보안 규정 및 행정 절차 부합성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>군 보안 규정 및 행정 절차 부합성이 논리적으로 검증되었으며 권한별 접근 제어(RBAC) 테스트를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
],
"evaluationTypes": [
"REQUIRED",
"REQUIRED"
],
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 군 보안 규정 및 행정 절차 부합성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 이력 기록 무결성 100%, 승인 권한 우회 시도 차단율 100%</p></li><li><p>진행 기준: 결재선 승인/반려 시뮬레이션 및 이력 조회 화면 구현</p></li><li><p>검증 방법: 권한별 접근 제어(RBAC) 테스트</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
"aiGuidelines": {
"allow": [
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
],
"rules": [
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
],
"forbid": [
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
]
},
"guideSteps": [
{
"step": 1,
"problem": "M7 코드를 실행해 12건의 결재 결과(승인·보류·종결 반려)와 재기안 횟수를 확인한다.",
"activity": "<h4>이 단계의 역할</h4><p>M7 코드를 실행해 12건의 결재 결과(승인·보류·종결 반려)와 재기안 횟수를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M7 코드를 실행해 12건의 결재 결과(승인·보류·종결 반려)와 재기안 횟수를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>차단 13/13(100%), 감사 로그 105건 해시 체인 정상(무결성 100%) 승인 10·보류 1·종결 반려 1, 반려 후 재기안 13회, 자동 확정 0건</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M7 코드를 실행해 12건의 결재 결과(승인·보류·종결 반려)와 재기안 횟수를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>M7 코드를 실행해 12건의 결재 결과(승인·보류·종결 반려)와 재기안 횟수를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(차단 13/13(100%), 감사 로그 105건 해시 체인 정상(무결성 100%) 승인 10·보류 1·종결 반려 1, 반려 후 재기안 13회, 자동 확정 0건)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 2,
"problem": "우회·절차 위반 시도 13종이 모두 차단되는지, 역할별 권한 매트릭스를 읽는다.",
"activity": "<h4>이 단계의 역할</h4><p>우회·절차 위반 시도 13종이 모두 차단되는지, 역할별 권한 매트릭스를 읽는다.</p><h4>해야 할 일</h4><ol><li><p>우회·절차 위반 시도 13종이 모두 차단되는지, 역할별 권한 매트릭스를 읽는다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>차단 13/13(100%), 감사 로그 105건 해시 체인 정상(무결성 100%) 승인 10·보류 1·종결 반려 1, 반려 후 재기안 13회, 자동 확정 0건</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>우회·절차 위반 시도 13종이 모두 차단되는지, 역할별 권한 매트릭스를 읽는다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>우회·절차 위반 시도 13종이 모두 차단되는지, 역할별 권한 매트릭스를 읽는다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(차단 13/13(100%), 감사 로그 105건 해시 체인 정상(무결성 100%) 승인 10·보류 1·종결 반려 1, 반려 후 재기안 13회, 자동 확정 0건)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 3,
"problem": "감사 로그를 임의로 고쳤을 때 해시 체인이 위변조를 찾아내는 과정을 확인한다.",
"activity": "<h4>이 단계의 역할</h4><p>감사 로그를 임의로 고쳤을 때 해시 체인이 위변조를 찾아내는 과정을 확인한다.</p><h4>해야 할 일</h4><ol><li><p>감사 로그를 임의로 고쳤을 때 해시 체인이 위변조를 찾아내는 과정을 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>차단 13/13(100%), 감사 로그 105건 해시 체인 정상(무결성 100%) 승인 10·보류 1·종결 반려 1, 반려 후 재기안 13회, 자동 확정 0건</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>감사 로그를 임의로 고쳤을 때 해시 체인이 위변조를 찾아내는 과정을 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>감사 로그를 임의로 고쳤을 때 해시 체인이 위변조를 찾아내는 과정을 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(차단 13/13(100%), 감사 로그 105건 해시 체인 정상(무결성 100%) 승인 10·보류 1·종결 반려 1, 반려 후 재기안 13회, 자동 확정 0건)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 4,
"problem": "도전 과제 및 파라미터 튜닝 최적화",
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>MAX_REDRAFT를 2에서 1로 줄여 종결 반려 건수가 어떻게 달라지는지 확인한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
"attachments": []
}
]
},
{
"id": "PRC01_M08",
"sequence": 8,
"title": "1,000건 대규모 조달 계약서 일괄 스크리닝 부하 테스트 및 처리 속도 검증",
"durationHours": 3.5,
"overview": "<p>월 1,000건 규모의 계약서를 일괄 스크리닝하는 배치 파이프라인의 부하 시험과 처리 속도 검증을 수행한다.</p>",
"objectives": "<p>월 1,000건씩 12개월분 가상 계약 배치를 간이 스케줄러로 자동 실행하면서 월마다 손상 레코드 5건과 2% 일시 오류를 주입한다. 일시 오류는 재시도로 복구하고 손상 레코드는 격리해 계속 진행하며, 진행률 표시와 완료 알림을 출력한다. 전체 실행 시간, 자동화 성공률, 수작업 대비 절감 시간을 계산하고 계약 수를 500건에서 4,000건으로 늘린 규모 시험과 시간 예산을 초과할 때 조항 분류를 생략하는 기능 축소 동작을 확인한다.</p>",
"scenario": "<h4>미션 배경 및 당위성</h4><p>대규모 조달 계약서 일괄 스크리닝 부하 테스트를 수행한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>월 1,000건 규모의 계약서를 일괄 스크리닝하는 배치 파이프라인의 부하 시험과 처리 속도 검증을 수행한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>월 1,000건씩 12개월분 가상 계약 배치를 간이 스케줄러로 자동 실행하면서 월마다 손상 레코드 5건과 2% 일시 오류 주입하여 처리 지연 및 복원력을 시험하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>src/pipeline/prc01_batch_runner.py</code> 형태의 결과물을 완성한다.</p>",
"attachments": [],
"materials": [
"/uploads/PRC01/prc01_m08_dataset.json",
"/uploads/PRC01/prc01_m08_sample.md"
],
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m08_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m08_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
"techStack": [
"조달·계약·국산화",
"프로토타입형",
"데이터 전처리",
"알고리즘 구현",
"HITL 검증"
],
"deliverables": [
"src/pipeline/prc01_batch_runner.py (필수)"
],
"evaluationKeys": [
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[1,000건 대규모 조달 계약서 일괄 스크리닝 부하 테스트 및 처리 속도 검증] 요구된 핵심 성능 기준(전체 배치 파이프라인 실행 시간 5분 이내, 자동화 성공률 99% 이상)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>전체 배치 파이프라인 실행 시간 5분 이내, 자동화 성공률 99% 이상 기준을 충족하고 스케줄러 연동 테스트 및 자동 실행 확인을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>실행 진행률(Progress bar) 및 완료 시 자동 알림 연동을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 수작업 대비 업무 소요 시간 80% 이상 절감 효과 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>수작업 대비 업무 소요 시간 80% 이상 절감 효과이 논리적으로 검증되었으며 실제 월간 업무 데이터 1년치 일괄 배치 시뮬레이션를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
],
"evaluationTypes": [
"REQUIRED",
"REQUIRED"
],
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 수작업 대비 업무 소요 시간 80% 이상 절감 효과</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 전체 배치 파이프라인 실행 시간 5분 이내, 자동화 성공률 99% 이상</p></li><li><p>진행 기준: 스케줄러 연동 테스트 및 자동 실행 확인</p></li><li><p>검증 방법: 실제 월간 업무 데이터 1년치 일괄 배치 시뮬레이션</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
"aiGuidelines": {
"allow": [
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
],
"rules": [
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
],
"forbid": [
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
]
},
"guideSteps": [
{
"step": 1,
"problem": "M8 코드를 실행해 2026-01 배치의 진행률 표시와 완료 알림을 확인한다.",
"activity": "<h4>이 단계의 역할</h4><p>M8 코드를 실행해 2026-01 배치의 진행률 표시와 완료 알림을 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M8 코드를 실행해 2026-01 배치의 진행률 표시와 완료 알림을 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>12개월 배치 실행 약 2초 이내(목표 5분 이내), 자동화 성공률 99.50%(11,940/12,000, 목표 99% 이상) 수작업 대비 92% 절감(가정 기준), 일시 오류 226회 재시도로 복구, 실패 0건</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M8 코드를 실행해 2026-01 배치의 진행률 표시와 완료 알림을 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>M8 코드를 실행해 2026-01 배치의 진행률 표시와 완료 알림을 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(12개월 배치 실행 약 2초 이내(목표 5분 이내), 자동화 성공률 99.50%(11,940/12,000, 목표 99% 이상) 수작업 대비 92% 절감(가정 기준), 일시 오류 226회 재시도로 복구, 실패 0건)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 2,
"problem": "12개월 배치의 실행 시간, 자동화 성공률, 수작업 대비 절감을 읽고 가정치를 확인한다.",
"activity": "<h4>이 단계의 역할</h4><p>12개월 배치의 실행 시간, 자동화 성공률, 수작업 대비 절감을 읽고 가정치를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>12개월 배치의 실행 시간, 자동화 성공률, 수작업 대비 절감을 읽고 가정치를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>12개월 배치 실행 약 2초 이내(목표 5분 이내), 자동화 성공률 99.50%(11,940/12,000, 목표 99% 이상) 수작업 대비 92% 절감(가정 기준), 일시 오류 226회 재시도로 복구, 실패 0건</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>12개월 배치의 실행 시간, 자동화 성공률, 수작업 대비 절감을 읽고 가정치를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>12개월 배치의 실행 시간, 자동화 성공률, 수작업 대비 절감을 읽고 가정치를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(12개월 배치 실행 약 2초 이내(목표 5분 이내), 자동화 성공률 99.50%(11,940/12,000, 목표 99% 이상) 수작업 대비 92% 절감(가정 기준), 일시 오류 226회 재시도로 복구, 실패 0건)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 3,
"problem": "규모 확대 시험과 시간 예산 초과 시 기능 축소 동작을 확인한다.",
"activity": "<h4>이 단계의 역할</h4><p>규모 확대 시험과 시간 예산 초과 시 기능 축소 동작을 확인한다.</p><h4>해야 할 일</h4><ol><li><p>규모 확대 시험과 시간 예산 초과 시 기능 축소 동작을 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>12개월 배치 실행 약 2초 이내(목표 5분 이내), 자동화 성공률 99.50%(11,940/12,000, 목표 99% 이상) 수작업 대비 92% 절감(가정 기준), 일시 오류 226회 재시도로 복구, 실패 0건</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>규모 확대 시험과 시간 예산 초과 시 기능 축소 동작을 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>규모 확대 시험과 시간 예산 초과 시 기능 축소 동작을 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(12개월 배치 실행 약 2초 이내(목표 5분 이내), 자동화 성공률 99.50%(11,940/12,000, 목표 99% 이상) 수작업 대비 92% 절감(가정 기준), 일시 오류 226회 재시도로 복구, 실패 0건)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 4,
"problem": "도전 과제 및 파라미터 튜닝 최적화",
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>MANUAL_MIN을 35분에서 10분으로 바꾸고 REVIEW_MIN을 6분에서 12분으로 바꿔 절감률이 80% 아래로 내려가는지 확인한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
"attachments": []
}
]
},
{
"id": "PRC01_M09",
"sequence": 9,
"title": "AAR 기반 규정 위반 미탐 사례 분석 및 조달 룰셋/프롬프트 재보정",
"durationHours": 3.0,
"overview": "<p>AAR을 바탕으로 규정 위반 미탐 사례를 분석하고 조달 룰셋과 조항 분류 기준을 재보정한다.</p>",
"objectives": "<p>AAR 세트에서 룰 스크리닝이 놓친 위반 계약의 원인을 경미 룰 단독 적중, 수의계약 한도 직하 금액, 납기 위험 문구 분산, 자료로 드러나지 않는 위반 등으로 분류한다. 등급 기준 완화, 해지·보안 조항 가중치 상향, 수의계약 한도 조정, 조항 모델 결합 등 재보정안을 AAR 세트에서 설계하고 별도 검증 세트에서 재현율·정밀도·F1로 비교해 채택·보류·기각을 정한다. 측정값으로 UAT 체크리스트 10항목을 채점하고 개선 요구 5건의 반영 여부를 기록한다.</p>",
"scenario": "<h4>미션 배경 및 당위성</h4><p>AAR 기반 규정 위반 미탐 사례를 분석하고 조달 룰셋을 재보정한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>AAR을 바탕으로 규정 위반 미탐 사례를 분석하고 조달 룰셋과 조항 분류 기준을 재보정한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>AAR 세트에서 룰 스크리닝이 놓친 위반 계약의 원인을 경미 룰 단독 적중, 수의계약 한도 직하 금액, 납기 위험 문구 분산, 자료로 드러나지 않는 위반 등으로 분류 수행하고 검증하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>docs/prc01_uat_feedback_report.md 및 패치 내역</code> 형태의 결과물을 완성한다.</p>",
"attachments": [],
"materials": [
"/uploads/PRC01/prc01_m09_dataset.json",
"/uploads/PRC01/prc01_m09_sample.md"
],
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m09_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m09_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
"techStack": [
"조달·계약·국산화",
"프로토타입형",
"데이터 전처리",
"알고리즘 구현",
"HITL 검증"
],
"deliverables": [
"docs/prc01_uat_feedback_report.md (필수)",
"패치 내역 (필수)"
],
"evaluationKeys": [
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[AAR 기반 규정 위반 미탐 사례 분석 및 조달 룰셋/프롬프트 재보정] 요구된 핵심 성능 기준(UAT 체크리스트 만족도 90점 이상, 개선 요구 5건 반영 완료)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>UAT 체크리스트 만족도 90점 이상, 개선 요구 5건 반영 완료 기준을 충족하고 UAT 결과 보고서 작성 및 최종 버그 픽스 완료을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>단축키 지원 및 자주 쓰는 설정 템플릿 저장 기능 추가을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 실무 업무 생산성 기여도 및 현장 적응성 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>실무 업무 생산성 기여도 및 현장 적응성이 논리적으로 검증되었으며 실제 업무 시나리오 기반 최종 검수 테스트를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
],
"evaluationTypes": [
"REQUIRED",
"REQUIRED"
],
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 실무 업무 생산성 기여도 및 현장 적응성</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: UAT 체크리스트 만족도 90점 이상, 개선 요구 5건 반영 완료</p></li><li><p>진행 기준: UAT 결과 보고서 작성 및 최종 버그 픽스 완료</p></li><li><p>검증 방법: 실제 업무 시나리오 기반 최종 검수 테스트</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
"aiGuidelines": {
"allow": [
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
],
"rules": [
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
],
"forbid": [
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
]
},
"guideSteps": [
{
"step": 1,
"problem": "M9 코드를 실행해 미탐 42건의 원인 분류를 확인한다.",
"activity": "<h4>이 단계의 역할</h4><p>M9 코드를 실행해 미탐 42건의 원인 분류를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M9 코드를 실행해 미탐 42건의 원인 분류를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>미탐 42건 중 경미 룰 단독 적중 27건, 자료 한계 12건 채택 F2+F3+F4(검증 재현율 85.2%에서 87.7%), F1 기각, UAT 97점, 개선 요구 5/5 반영</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M9 코드를 실행해 미탐 42건의 원인 분류를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>M9 코드를 실행해 미탐 42건의 원인 분류를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(미탐 42건 중 경미 룰 단독 적중 27건, 자료 한계 12건 채택 F2+F3+F4(검증 재현율 85.2%에서 87.7%), F1 기각, UAT 97점, 개선 요구 5/5 반영)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 2,
"problem": "재보정안 5종과 결합안의 AAR 세트·검증 세트 재현율·정밀도·F1 표를 읽고 채택·보류·...",
"activity": "<h4>이 단계의 역할</h4><p>재보정안 5종과 결합안의 AAR 세트·검증 세트 재현율·정밀도·F1 표를 읽고 채택·보류·기각 이유를 설명한다.</p><h4>해야 할 일</h4><ol><li><p>재보정안 5종과 결합안의 AAR 세트·검증 세트 재현율·정밀도·F1 표를 읽고 채택·보류·기각 이유를 설명한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>미탐 42건 중 경미 룰 단독 적중 27건, 자료 한계 12건 채택 F2+F3+F4(검증 재현율 85.2%에서 87.7%), F1 기각, UAT 97점, 개선 요구 5/5 반영</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>재보정안 5종과 결합안의 AAR 세트·검증 세트 재현율·정밀도·F1 표를 읽고 채택·보류·기각 이유를 설명한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>재보정안 5종과 결합안의 AAR 세트·검증 세트 재현율·정밀도·F1 표를 읽고 채택·보류·기각 이유를 설명한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(미탐 42건 중 경미 룰 단독 적중 27건, 자료 한계 12건 채택 F2+F3+F4(검증 재현율 85.2%에서 87.7%), F1 기각, UAT 97점, 개선 요구 5/5 반영)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 3,
"problem": "UAT 체크리스트 점수와 개선 요구 5건 반영 현황을 확인한다.",
"activity": "<h4>이 단계의 역할</h4><p>UAT 체크리스트 점수와 개선 요구 5건 반영 현황을 확인한다.</p><h4>해야 할 일</h4><ol><li><p>UAT 체크리스트 점수와 개선 요구 5건 반영 현황을 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>미탐 42건 중 경미 룰 단독 적중 27건, 자료 한계 12건 채택 F2+F3+F4(검증 재현율 85.2%에서 87.7%), F1 기각, UAT 97점, 개선 요구 5/5 반영</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>UAT 체크리스트 점수와 개선 요구 5건 반영 현황을 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>UAT 체크리스트 점수와 개선 요구 5건 반영 현황을 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(미탐 42건 중 경미 룰 단독 적중 27건, 자료 한계 12건 채택 F2+F3+F4(검증 재현율 85.2%에서 87.7%), F1 기각, UAT 97점, 개선 요구 5/5 반영)를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 4,
"problem": "도전 과제 및 파라미터 튜닝 최적화",
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>w_up의 R07·R08 가중치를 3에서 4로 올린 변형안을 cands에 추가해 검증 세트 재현율과 정밀도가 어떻게 달라지는지 비교하고 채택 여부를 판정한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
"attachments": []
}
]
},
{
"id": "PRC01_M10",
"sequence": 10,
"title": "AI 기반 군수 조달 계약 위험 스크리닝 도구 최종 통합 및 실무 패키지 완성",
"durationHours": 3.0,
"overview": "<p>AI 기반 군수 조달 계약 위험 스크리닝 도구를 하나의 통합 패키지로 완성한다.</p>",
"objectives": "<p>입력 검증, 룰 판별, 위험 점수, 조항 분류와 위험 조항 표시, 사람 검토 큐와 해시 체인 감사 로그를 한 파일의 파이프라인으로 묶는다. 서로 다른 가상 계약군 4종으로 End-to-End 실행과 자체 점검 8항목, 함수 호출 추적 기반 커버리지를 측정하고, 원클릭 설치 스크립트 5단계와 매뉴얼 7개 장의 작성률을 점검한다. 마지막으로 조달 담당자용 브리핑 요약을 출력한다.</p>",
"scenario": "<h4>미션 배경 및 당위성</h4><p>AI 기반 군수 조달 계약 위험 스크리닝 도구를 최종 완성한다. 실제 전술 현장에서는 단순 탐지에 그치지 않고 신속한 위협 판단과 신뢰도 높은 의사결정이 필수적이므로, <strong>AI 기반 군수 조달 계약 위험 스크리닝 도구를 하나의 통합 패키지로 완성한다.</strong> 과업을 완수하여 오판을 방지하고 작전 대응력을 극대화해야 합니다.</p><p>이 문제를 해결하기 위해 본 미션에서는 <strong>입력 검증, 룰 판별, 위험 점수, 조항 분류와 위험 조항 표시, 사람 검토 큐와 해시 체인 감사 로그를 한 파일의 파이프라인으로 묶는다 과정을 진행하는</strong> 실습을 체계적으로 수행합니다.</p><p>학습자는 실습가이드에 제시된 총 4개 세부 활동(기본 기능 구현 ➔ 결과 지표 검증 ➔ 파라미터 튜닝 및 도전과제)을 순차적으로 진행하며 핵심 판정 기준을 달성합니다.</p><p><strong>이번 결과물:</strong> <code>dist/prc01_package/, README.md, docs/prc01_final_manual.md</code> 형태의 결과물을 완성한다.</p>",
"attachments": [],
"materials": [
"/uploads/PRC01/prc01_m10_dataset.json",
"/uploads/PRC01/prc01_m10_sample.md"
],
"materialText": "<p><strong>미션 실습 자료</strong></p><ul><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m10_dataset.json\">가상 데이터셋 샘플 (JSON)</a></li><li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"/uploads/PRC01/prc01_m10_sample.md\">실습 및 검증 가이드 (MD)</a></li></ul><p><strong>활용 주의</strong>: 제공된 교육용 가상 데이터만 사용하며 실제 군사 비밀 및 개인정보는 입력하지 않습니다.</p>",
"techStack": [
"조달·계약·국산화",
"프로토타입형",
"데이터 전처리",
"알고리즘 구현",
"HITL 검증"
],
"deliverables": [
"dist/prc01_package/, README.md, docs/prc01_final_manual.md (필수)"
],
"evaluationKeys": [
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[AI 기반 군수 조달 계약 위험 스크리닝 도구 최종 통합 및 실무 패키지 완성] 요구된 핵심 성능 기준(설치부터 실행까지 원클릭 설치 스크립트 완비, 매뉴얼 작성률 100%)을 완벽히 달성하였는가?</strong></p><h4>PASS 증거</h4><p>설치부터 실행까지 원클릭 설치 스크립트 완비, 매뉴얼 작성률 100% 기준을 충족하고 최종 배포본 생성 및 검수 완료을 만족하는 실행 결과 및 로그가 제출되었다.</p><h4>보완이 필요한 상태</h4><p>정량적 지표가 기준치에 미달하거나 실행 로그에서 예외/결측 오류가 발생한 경우.</p><h4>보완 방법</h4><p>클라우드/온프레미스 환경별 컨테이너화(Docker) 배포 구성을 적용하여 파라미터를 보정하고 단위 테스트를 재수행한다.</p>",
"<h4>평가 질문 (PASS/FAIL)</h4><p><strong>[정성적 타당성] 군사적 현실성 및 상용 소프트웨어 수준의 완성도 및 조직 확산 가치 관점의 타당성이 확보되었는가?</strong></p><h4>PASS 증거</h4><p>상용 소프트웨어 수준의 완성도 및 조직 확산 가치이 논리적으로 검증되었으며 Clean 환경에서의 설치 및 초기화 테스트를 통한 무결성이 확인되었다.</p><h4>보완이 필요한 상태</h4><p>비현실적인 가정을 적용했거나 오류 원인에 대한 정성적 설명 근거가 부족한 경우.</p><h4>보완 방법</h4><p>교차 검증 데이터를 보강하고 지휘관/실무자 관점의 해석 근거를 명시한다.</p>"
],
"evaluationTypes": [
"REQUIRED",
"REQUIRED"
],
"evaluationText": "<h4>미션 판정</h4><p><strong>평가 구분:</strong> 필수</p><p><strong>핵심 평가영역:</strong> 상용 소프트웨어 수준의 완성도 및 조직 확산 가치</p><h4>미션 PASS 조건</h4><ul><li><p>정량 기준: 설치부터 실행까지 원클릭 설치 스크립트 완비, 매뉴얼 작성률 100%</p></li><li><p>진행 기준: 최종 배포본 생성 및 검수 완료</p></li><li><p>검증 방법: Clean 환경에서의 설치 및 초기화 테스트</p></li></ul><h4>채점자 판정 메모</h4><blockquote><p>단순 코드 실행 여부뿐만 아니라 출력된 수치와 근거 자료가 군 실무 요구사항에 부합하는지 면밀히 확인한다.</p></blockquote>",
"aiGuidelines": {
"allow": [
"데이터 전처리 알고리즘 및 정규화 서식 추천받기",
"이상치 탐지 및 모델 파라미터 튜닝 아이디어 제안받기",
"대시보드 UI 컴포넌트 코드 및 시각화 서식 생성하기"
],
"rules": [
"최종 판정 및 지휘 결심은 학습자가 직접 수행한다.",
"실제 군사 비밀이나 개인 식별 정보는 입력하지 않는다.",
"AI의 출력 결과를 맹신하지 않고 반드시 단위 테스트로 검증한다."
],
"forbid": [
"실제 군사 작전/인사 비밀 데이터를 AI에 입력하기",
"검증 없이 AI가 생성한 코드를 그대로 제출하기",
"단정적인 자동 결심 결과를 인간 검토 없이 확정하기"
]
},
"guideSteps": [
{
"step": 1,
"problem": "M10 코드를 실행해 설치 스크립트 5단계 점검과 End-to-End 시나리오 4종 결과를...",
"activity": "<h4>이 단계의 역할</h4><p>M10 코드를 실행해 설치 스크립트 5단계 점검과 End-to-End 시나리오 4종 결과를 확인한다.</p><h4>해야 할 일</h4><ol><li><p>M10 코드를 실행해 설치 스크립트 5단계 점검과 End-to-End 시나리오 4종 결과를 확인한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>( )</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>M10 코드를 실행해 설치 스크립트 5단계 점검과 End-to-End 시나리오 4종 결과를 확인한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>M10 코드를 실행해 설치 스크립트 5단계 점검과 End-to-End 시나리오 4종 결과를 확인한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(( ))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 2,
"problem": "자체 점검 8항목과 함수 커버리지, 매뉴얼 작성률을 읽는다.",
"activity": "<h4>이 단계의 역할</h4><p>자체 점검 8항목과 함수 커버리지, 매뉴얼 작성률을 읽는다.</p><h4>해야 할 일</h4><ol><li><p>자체 점검 8항목과 함수 커버리지, 매뉴얼 작성률을 읽는다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>( )</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>자체 점검 8항목과 함수 커버리지, 매뉴얼 작성률을 읽는다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>자체 점검 8항목과 함수 커버리지, 매뉴얼 작성률을 읽는다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(( ))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 3,
"problem": "브리핑 요약의 수치가 앞선 출력과 일치하는지 확인하고 사람이 해야 할 일을 정리한다.",
"activity": "<h4>이 단계의 역할</h4><p>브리핑 요약의 수치가 앞선 출력과 일치하는지 확인하고 사람이 해야 할 일을 정리한다.</p><h4>해야 할 일</h4><ol><li><p>브리핑 요약의 수치가 앞선 출력과 일치하는지 확인하고 사람이 해야 할 일을 정리한다.에 필요한 데이터셋과 입력 파라미터를 준비한다.</p></li><li><p>정답 코드 및 모듈을 실행하여 중간 출력 결과를 도출한다.</p></li><li><p>출력된 지표와 로그가 기준 조건을 만족하는지 대조·검증한다.</p></li></ol><h4>핵심 확인 지표</h4><blockquote><p>( )</p></blockquote><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>브리핑 요약의 수치가 앞선 출력과 일치하는지 확인하고 사람이 해야 할 일을 정리한다. 실행 결과 및 검증 로그</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>브리핑 요약의 수치가 앞선 출력과 일치하는지 확인하고 사람이 해야 할 일을 정리한다. 과정이 정상적으로 수행되고 오류 없이 완료되었다.</p></li><li><p>요구된 핵심 성능 지표(( ))를 충족하였다.</p></li></ul><h4>보완이 필요한 경우</h4><ul><li><p>실행 중 오류가 발생했거나 필수 검증 지표가 누락된 경우 재실행하여 보완한다.</p></li></ul>",
"attachments": []
},
{
"step": 4,
"problem": "도전 과제 및 파라미터 튜닝 최적화",
"activity": "<h4>이 단계의 역할</h4><p>기본 파이프라인 수행 후 심화 튜닝 및 조건 변경을 통해 최적화 역량을 다진다.</p><h4>해야 할 일</h4><p>CONF의 queue_min_score를 50에서 70으로 올려 검토 큐 건수와 우선 확인 건수가 어떻게 바뀌는지 비교한다.</p><h4>학습자가 제출해야 하는 내용</h4><ul><li><p>파라미터 변경 전후 비교 분석 메모 및 최종 최적화 결과</p></li></ul>",
"evalText": "<h4>PASS 기준</h4><ul><li><p>도전 과제 변경 사항이 논리적으로 타당하며 결과 변화 이유를 명확히 기술하였다.</p></li></ul>",
"attachments": []
}
]
}
]
}