이 프롬프트는 @DAT06.json 프로젝트 내용을 상세화하는 용도야. # 프로젝트 내용 상세화 ## 1. project 내용 만들기 - project의 `summary`, `objectives`를 참고하여 각 미션의 `overview`, `objectives` 내용을 구체화해줘. - project의 `objectives`에는 다음 4가지 핵심 섹션을 HTML 태그로 포함해줘: - `

필요한 상황

`, `

해결방안

`, `

기대효과

`, `

활용분야

` - (필요시)`prerequisites`에는 Python 기초 외에 **"Google Colab 환경 활용 기초"**를 포함해줘. ## 2. 미션 상세 내용 만들기 - 각 missions의 `overview`, `objectives`가 고유한 역할을 갖도록 중복을 제거하고 명확한 학습 과정을 명시해줘. - `scenario`는 실제 국방/군수/도메인 실무 배경, 문제 상황, 산출물 경로를 연계하여 몰입감 있게 작성해줘. ## 3. 학습활동 만들기 - 각 missions의 overview, objectives, scenario를 참고해서 guideSteps 을 2~5개를 추가로 만들어줘. - **activity (해야 할 일 & 학습자 제출물)**: - 코드/설정 작성 단계에는 Colab 코드 셀 첫 줄에 `%%writefile [파일경로]` 매직 커맨드를 선언하여 파일을 저장하고, `!python [경로]` 또는 `!pytest [경로]` 쉘 명령어로 즉시 동작을 검증하도록 안내해줘. - 학습자가 제출해야 하는 내용에 **"Google Colab 실행 셀 결과 출력 로그 및 생성된 산출물 파일"**을 명시해줘. - **evalText (PASS 기준 및 보완 방법)**: - PASS 기준에 **"Google Colab 환경에서 스크립트 및 테스트 코드가 에러 없이 정상 실행되고 요구 지표를 충족하는가?"**를 포함해줘. - 보완 방법에 Colab 실행 오류(문법 에러, 모듈 경로 누락, 쉘 커맨드 실패 등) 디버깅 지침을 반영해줘. ## 4. 첨부파일 및 산출물 파일 만들기 - 각 missions의 overview, objectives, scenario에 등장하는 첨부파일 및 기본 산출물 템플릿을 만들어줘. - 저장소 경로: `uploads/{projectid}/` - 프로젝트 및 10개 미션 전체의 `materials`에 산출물 파일들과 함께 노트북 경로(`uploads/{projectid}/notebook/instructor/{projectid}_colab_starter.ipynb`, `uploads/{projectid}/notebook/student/{projectid}_assignment.ipynb`)를 정확히 등록해줘. ## 5. 학습자료 점검하기 - 각 missions의 materialText는 mission을 수행하기 위해 필요한 참고자료들이야. 미션 산출물, 저장위치, 검증 및 개선방안 외 풀이에 도움이 될만한 참고자료를 추가해줘. - 각 미션의 `materialText` 최상단에 **[Google Colab 실습 및 환경 가이드]** 블록을 필수로 포함해줘: 1. 디렉터리 생성: `!mkdir -p [필요경로]` 2. 파일 저장 매직 커맨드: `%%writefile [산출물경로]` 3. 검증 쉘 명령어: `!python [경로]` 또는 `!pytest [경로] -v` - 이외에 미션 산출물 저장위치, 검증 및 개선방안, 도메인 표준 규격/이론 참고자료를 추가해줘. ## 6. 활용기술 - 각 missions의 techStack, aiGuidelines 이 overviews, objectives, scenario, guideSteps 에 맞게 충분히 반영되었는지 확인해줘. techStack, aiGuidelines는 5개 이하씩 추가해줘. ## 7. 평가기준 - **deliverables**: 프로젝트 레벨의 산출물 목록(15개 내외)과 각 미션의 `deliverables` 합집합 및 `materials` 파일 경로가 100% 일치하도록 정리해줘. - **evaluationKeys**: 각 미션마다 3개의 필수(`REQUIRED`) 평가키로 표준화해줘: 1. `[정량적 평가]`: objectives의 수치 지표(정확도, 처리속도, 오류율, 지연시간 등) 기준 2. `[정성적 평가]`: 도메인 실무/전술 타당성, 신뢰도, 안전 실패(Fail-safe) 등 질문 3. `[진행 추적 및 완료 기준]`: 필수 산출물 생성 및 검증 도구(pytest 등) 통과 여부 - **evaluationText**: `evaluationKeys`의 3대 항목(정량/정성/진행추적) 및 검증 방법을 완벽히 포괄하는 4대 PASS 조건 불릿 포인트를 작성해줘. ## 8. notebook 폴더 및 실습 노트북 만들기 - 저장소 경로: `uploads/{projectid}/notebook/` - 4번의 `materials`에 등록된 노트북을 실제로 실행 가능한 파일로 생성해줘: 1. **강사용 스타터 노트북**: `uploads/{projectid}/notebook/instructor/{projectid}_colab_starter.ipynb` - 10개 미션의 전체 완성형 구현 코드 및 E2E 실행 셀, Cloudflare Tunnel을 통한 Streamlit 대시보드 실시간 배포 스크립트를 포함. 2. **학습자용 과제 노트북**: `uploads/{projectid}/notebook/student/{projectid}_assignment.ipynb` - 학습자가 단계별로 직접 구현할 수 있도록 `# TODO:` 주석 기반의 스캐폴딩 코드 제공. - 각 미션 상단에는 `%%writefile [파일경로]` 매직 커맨드로 산출물을 파일화하도록 구성. - 각 미션 하단에는 즉시 단위 테스트를 수행하여 `PASS/FAIL`을 확인할 수 있는 자체 검증(Self-Validation) 셀 포함. ## 9. project.yaml 설정 파일 만들기 - 저장소 경로: `uploads/{projectid}/project.yaml` - 프로젝트 메타데이터, Colab 런타임, 진입점 노트북, 10개 미션 목록, 평가 및 제출 방식을 정의하는 YAML 파일을 생성해줘. - 작성 형식: ```yaml id: {projectid} title: {project_title} runtime: type: colab python: "3.11" notebook: entry: notebook/student/{projectid}_assignment.ipynb missions: - id: {projectid}_M01 title: {mission1_title} - id: {projectid}_M02 title: {mission2_title} # ... M03 ~ M10 미션 목록 evaluation: type: notebook tests: tests/ submission: type: git_commit ```