실습설계자(lab-designer)가 사용하는 실습 스캐폴딩 전문 스킬. 실습 난이도 조절, 스타터 코드 설계, 캡스톤 프로젝트 구조, 자기 주도 학습 유도 전략을 제공한다. '실습 설계', '프로젝트 과제', '스캐폴딩', '핸즈온 랩' 등에 활용한다.
lab-designer 에이전트가 실습과제와 프로젝트를 설계할 때 활용하는 전문 지식.
학습자에게 "프로그램을 만들어보세요"라고 던지면 90%가 포기한다. **스캐폴딩(비계)**이란 학습자가 혼자 할 수 없는 것을 점진적으로 도와주다가, 능력이 쌓이면 지원을 줄여가는 전략이다.
╱╲
╱ 5 ╲ ← 캡스톤 프로젝트 (자유)
╱─────╲
╱ 4 ╲ ← 미니 프로젝트 (가이드 최소)
╱───────────╲
╱ 3 ╲ ← 챌린지 (힌트 제공)
╱─────────────────╲
╱ 2 ╲ ← 가이드 실습 (단계별 안내)
╱─────────────────────╲
╱ 1 ╲ ← 따라하기 (코드 워크스루)
╱───────────────────────────╲
| 단계 | 학습자 자율성 | 지원 수준 | 실습 형태 |
|---|---|---|---|
| 1. 따라하기 | 0% | 100% 가이드 |
| 강사 코드를 그대로 따라 입력 |
| 2. 가이드 실습 | 20% | 80% 가이드 | 스타터 코드 + 빈칸 채우기 |
| 3. 챌린지 | 50% | 힌트만 제공 | 요구사항 → 힌트 → 검증 |
| 4. 미니 프로젝트 | 80% | 명세서만 | 기능 요구사항 → 자유 구현 |
| 5. 캡스톤 | 95% | 멘토링만 | 주제 선택 → 설계 → 구현 → 발표 |
"""
실습: [실습 제목]
학습 목표: [이 실습에서 연습할 기술]
예상 소요 시간: XX분
난이도: [1~5]
"""
# === 이미 작성된 코드 (수정하지 마세요) ===
import flask
app = flask.Flask(__name__)
# === TODO 1: [구체적 지시] ===
# 힌트: [관련 개념이나 사용할 메서드]
# 예상 코드 라인 수: X줄
# === TODO 2: [구체적 지시] ===
# 힌트: [관련 개념이나 사용할 메서드]
# === 테스트 ===
# 아래 코드가 에러 없이 실행되면 성공입니다
if __name__ == "__main__":
# 자동 검증 코드
pass
## 캡스톤 프로젝트: [제목]
### 개요
[프로젝트의 목적과 최종 산출물 설명]
### 학습목표 매핑
이 프로젝트는 다음 학습목표를 통합적으로 평가합니다:
- [LO1]: [학습목표]
- [LO2]: [학습목표]
- ...
### 기능 요구사항
#### 필수 기능 (Must Have)
1. [기능 1]
2. [기능 2]
3. [기능 3]
#### 선택 기능 (Nice to Have) — 보너스 점수
1. [추가 기능 1]
2. [추가 기능 2]
### 마일스톤
| 주차 | 산출물 | 체크포인트 |
|------|--------|----------|
| 1주차 | 설계 문서 + 와이어프레임 | 멘토 리뷰 |
| 2주차 | 핵심 기능 프로토타입 | 동작 데모 |
| 3주차 | 전체 기능 구현 | 코드 리뷰 |
| 4주차 | 테스트 + 문서화 + 발표 | 최종 제출 |
### 평가 루브릭
[assessment-engineering 스킬의 루브릭 참조]
### 참고 리소스
- [관련 강의 레슨 링크]
- [공식 문서 링크]
- [예제 프로젝트 (참고만, 복사 금지)]
| 상황 | 전략 |
|---|---|
| 학습자가 막힘 | 힌트 1(방향) → 힌트 2(구체적) → 힌트 3(코드 일부) → 정답 |
| 학습자가 너무 쉬움 | 추가 제약 조건 부여, 최적화 도전 |
| 학습자 수준 차이 큼 | 필수/선택 과제 분리, 상급자에게 멘토 역할 |
[힌트 없이 시도] → 5분 후
[힌트 1: 방향성] "이 문제는 ~개념을 사용합니다" → 5분 후
[힌트 2: 접근법] "~메서드를 찾아보세요" → 5분 후
[힌트 3: 코드 스켈레톤] "구조는 이렇습니다: ..." → 5분 후
[정답 코드 + 해설]
| 과정 유형 | 권장 환경 | 이유 |
|---|---|---|
| 프로그래밍 입문 | 브라우저 IDE (Replit, Google Colab) | 설치 없이 즉시 시작 |
| 웹 개발 | GitHub Codespaces / Gitpod | 일관된 환경 보장 |
| 데이터 분석 | Google Colab / Kaggle Notebooks | GPU 접근, 데이터셋 제공 |
| 시스템/인프라 | Docker + 스크립트 | 재현 가능한 환경 |