34
총 수업 차시
18
반영 성취기준
4
교육과정 영역
4+1
수행평가 4영역 + 지필평가
Ⅰ. 연간 운영 개요
수업 목표컴퓨터과학의 개념과 원리를 바탕으로 문제를 구조화하고, 적절한 데이터 구조와 알고리즘을 선택하여 효율적인 프로그램을 구현한다.
수업 운영개념 이해 → 코드 추적 → 구현 실습 → 성능 비교 → 프로젝트 적용의 순환 구조로 진행하며 짝 프로그래밍과 코드 검토를 병행한다.
핵심 역량컴퓨팅 사고력, 협력적 문제 해결력, 정보문화 소양, 창의·융합적 설계 역량을 균형 있게 기른다.
권장 환경Python 3.x, IDLE 또는 VS Code, 온라인 판정 시스템, Git 기반 공유 저장소, 표준 라이브러리와 공개 라이브러리
영역별 차시 배분
학교 일정, 학생의 선행 학습 수준, 대회 및 연구 활동과의 연계를 고려하여 차시를 통합하거나 심화 실습으로 확장할 수 있다.
Ⅱ. 34차시 연간수업계획
| 차시 | 영역 | 성취기준 | 학습 주제 | 핵심 교수·학습 활동 | 수업 형태 | 평가·산출물 |
|---|---|---|---|---|---|---|
| 1 | 프로그래밍 | 12정과01-01 | 정보과학 오리엔테이션과 함수 복습 | 교과의 네 영역과 문제 해결 절차를 이해하고 함수 정의·호출·반환값을 진단 실습으로 점검한다. | 진단·실습 | 기초 진단지, 함수 미니 과제 |
| 2 | 프로그래밍 | 12정과01-01 | 매개변수와 함수 설계 | 입력·처리·출력을 함수로 분리하고 위치·기본 매개변수를 활용하여 재사용 가능한 프로그램을 작성한다. | 개념·실습 | 함수 설계 코드 |
| 3 | 프로그래밍 | 12정과01-02 | 재귀관계와 재귀함수 | 종료 조건과 재귀 호출의 관계를 추적하고 팩토리얼·최대공약수 문제를 재귀함수로 구현한다. | 탐구·실습 | 호출 스택 추적표 |
| 4 | 프로그래밍 | 12정과01-02 | 재귀 심화: 피보나치와 메모이제이션 | 중복 호출을 분석하고 메모이제이션을 적용하여 실행 횟수와 시간을 개선한다. | 문제 해결 | 성능 비교 보고서 |
| 5 | 프로그래밍 | 12정과01-03 | 반복구조와 재귀구조 비교 | 동일 문제를 반복문과 재귀함수로 구현하고 가독성·메모리·실행 시간을 비교한다. | 비교 실험 | 비교 분석표 |
| 6 | 프로그래밍 | 12정과01-03 | 재귀 기반 탐색 문제 | 미로, 하노이 탑 또는 조합 생성 문제를 선택하여 재귀적 문제 분해 과정을 설계한다. | 협력 실습 | 알고리즘 설명서 |
| 7 | 프로그래밍 | 12정과01-01~03 | 프로그래밍 영역 수행평가 | 주어진 문제의 재귀관계를 파악하고 반복·재귀 두 방식으로 해결한 뒤 차이를 논리적으로 설명한다. | 서·논술/실습 | 영역 수행평가 ① |
| 8 | 데이터 구조 | 12정과02-01 | 자료구조와 추상화 | 자료구조의 필요성을 사례로 탐색하고 선형 구조의 삽입·삭제·탐색 연산을 비교한다. | 개념 탐구 | 개념 지도 |
| 9 | 데이터 구조 | 12정과02-01 | 스택의 원리와 구현 | LIFO 원리를 이해하고 리스트로 push, pop, peek 연산을 직접 구현한다. | 구현 실습 | Stack 클래스 |
| 10 | 데이터 구조 | 12정과02-02 | 스택 활용 문제 | 괄호 검사, 후위 표기식, 실행 취소 중 하나를 선택하여 스택 기반 프로그램을 작성한다. | 문제 해결 | 스택 응용 코드 |
| 11 | 데이터 구조 | 12정과02-01 | 큐의 원리와 구현 | FIFO 원리와 원형 큐의 필요성을 이해하고 deque 또는 직접 구현 방식으로 연산을 작성한다. | 구현 실습 | Queue 구현 코드 |
| 12 | 데이터 구조 | 12정과02-02 | 큐 활용 시뮬레이션 | 급식 대기열, 프린터 작업 또는 상담 예약 상황을 큐로 모델링하고 평균 대기시간을 분석한다. | 모델링 실습 | 시뮬레이션 결과 |
| 13 | 데이터 구조 | 12정과02-03 | 트리와 그래프 표현 | 노드·간선·차수 개념을 익히고 인접행렬과 인접리스트의 구조 및 공간 효율을 비교한다. | 개념·실습 | 그래프 표현 코드 |
| 14 | 데이터 구조 | 12정과02-04 | 트리·그래프 순회 | 깊이 우선 탐색과 너비 우선 탐색을 구현하고 스택·큐와의 관계를 설명한다. | 구현·비교 | DFS/BFS 실행 기록 |
| 15 | 데이터 구조 | 12정과02-01~04 | 데이터 구조 영역 수행평가 | 문제 상황에 적절한 자료구조를 선택하고 선택 근거, 구현 결과, 효율성을 설명한다. | 서·논술/실습 | 영역 수행평가 ② |
| 16 | 알고리즘 | 12정과03-01 | 상태 공간과 완전 탐색 | 문제를 상태·연산·목표 상태로 구조화하고 모든 후보를 탐색하는 알고리즘을 설계한다. | 모델링 | 상태 공간 도식 |
| 17 | 알고리즘 | 12정과03-01 | 백트래킹 기초 | 순열·조합·N-Queen 사례에서 선택, 재귀, 되돌리기 과정을 코드로 구현한다. | 실습 | 백트래킹 코드 |
| 18 | 알고리즘 | 12정과03-02 | 분기한정법과 가지치기 | 유망하지 않은 상태를 배제하는 조건을 설계하고 완전 탐색과 탐색 횟수를 비교한다. | 비교 실험 | 탐색 노드 비교표 |
| 19 | 알고리즘 | 12정과03-02 | 탐욕법의 원리 | 동전 교환, 회의실 배정 등에서 지역 최적 선택이 전체 해로 이어지는 조건을 탐구한다. | 탐구·토론 | 반례 분석지 |
| 20 | 알고리즘 | 12정과03-03 | 문제 분해와 관계 발견 | 큰 문제를 부분 문제로 분해하고 입력 크기 변화에 따른 관계를 점화식 또는 도식으로 표현한다. | 개념 탐구 | 부분 문제 관계도 |
| 21 | 알고리즘 | 12정과03-04 | 분할정복법 | 병합 정렬 또는 이진 탐색을 통해 분할·해결·결합의 구조를 구현한다. | 구현 실습 | 분할정복 코드 |
| 22 | 알고리즘 | 12정과03-04 | 분할정복 심화 | 퀵 정렬, 거듭제곱, 가장 가까운 두 점 중 수준에 맞는 문제를 선택하여 해결한다. | 선택형 실습 | 심화 문제 풀이 |
| 23 | 알고리즘 | 12정과03-05 | 동적계획법의 원리 | 중복 부분 문제와 최적 부분 구조를 확인하고 메모이제이션·테이블 방식을 비교한다. | 개념·실습 | DP 테이블 |
| 24 | 알고리즘 | 12정과03-05 | 동적계획법 응용 | 배낭, 최장 공통 부분 수열, 계단 오르기 중 하나를 선택해 상태와 점화식을 설계한다. | 문제 해결 | 상태 정의서·코드 |
| 25 | 알고리즘 | 12정과03-06 | 알고리즘 복잡도와 빅오 | 입력 크기에 따른 연산 횟수를 분석하고 O(1), O(log n), O(n), O(n²)을 그래프로 비교한다. | 분석 실습 | 복잡도 분석표 |
| 26 | 알고리즘 | 12정과03-06 | 실행 시간 측정과 성능 비교 | 동일 문제의 여러 알고리즘을 구현하고 이론적 복잡도와 실제 실행 시간의 차이를 해석한다. | 실험·분석 | 성능 실험 보고서 |
| 27 | 알고리즘 | 12정과03-01~06 | 알고리즘 영역 수행평가 | 주어진 문제를 분석하여 둘 이상의 알고리즘을 설계하고 정확성·시간 복잡도·적용 조건을 비교한다. | 서·논술/실습 | 영역 수행평가 ③ |
| 28 | 정보과학 프로젝트 | 12정과04-01 | 실생활 문제 발견과 주제 선정 | 과학·수학·환경·학교생활에서 컴퓨터과학으로 해결 가능한 문제를 관찰하고 프로젝트 주제를 선정한다. | 문제 발견 | 주제 제안서 |
| 29 | 정보과학 프로젝트 | 12정과04-02 | 요구 분석과 프로젝트 설계 | 사용자, 입력, 출력, 제한 조건을 정의하고 기능 분해·일정·역할을 포함한 수행 계획을 작성한다. | 설계 워크숍 | 프로젝트 계획서 |
| 30 | 정보과학 프로젝트 | 12정과04-03 | 오픈소스·라이브러리 활용 | 라이선스와 출처 표시를 확인하고 필요한 표준·외부 라이브러리를 조사하여 핵심 기능을 구현한다. | 협력 개발 | 기능 시제품 |
| 31 | 정보과학 프로젝트 | 12정과04-03 | 협업 구현과 코드 통합 | 역할별 모듈을 작성하고 인터페이스를 맞추며 코드 검토와 버전 관리를 통해 통합한다. | 프로젝트 | 중간 산출물·개발 일지 |
| 32 | 정보과학 프로젝트 | 12정과04-04 | 테스트와 디버깅 | 정상·경계·예외 입력을 포함한 테스트 사례를 설계하고 오류를 재현·수정·기록한다. | 검증 실습 | 테스트 보고서 |
| 33 | 정보과학 프로젝트 | 12정과04-05 | 기능적·윤리적 평가와 개선 | 정확성, 효율성, 사용성, 개인정보, 편향, 저작권 관점에서 산출물을 상호 평가하고 개선한다. | 상호 평가 | 평가표·개선본 |
| 34 | 정보과학 프로젝트 | 12정과04-01~05 | 최종 발표와 성찰 | 문제 정의, 설계, 알고리즘, 구현, 검증, 윤리적 고려를 발표하고 개인별 학습 성찰을 작성한다. | 발표·평가 | 최종 산출물·발표·성찰지 |
Ⅲ. 평가 계획
60%
수행평가A·B·C·D의 4개 영역으로 운영하며 수업 과정, 프로그래밍 분석, 도전 과제, 소논문을 종합 평가한다.
40%
지필평가핵심 개념, 코드 해석, 데이터 구조, 알고리즘 설계 및 복잡도 분석을 평가한다.
평가 반영 비율
| 구분 | 영역 | 평가명 | 반영 비율 | 평가 시기 | 주요 평가 내용 | 주요 산출물 |
|---|---|---|---|---|---|---|
| 수행평가 60% | A 영역 | 수업시간 형성·진단 평가 | 20 | 전 차시 수시 | 선수 학습 진단, 개념 확인, 코드 추적, 미니 퀴즈, 실습 참여와 오류 수정 과정 | 진단지, 형성평가지, 실습 기록, 학습 성찰 |
| B 영역 | 프로그래밍 분석 평가 | 20 | 프로그래밍·자료구조·알고리즘 학습 후 | 코드의 실행 과정 분석, 오류 탐색과 수정, 함수·재귀·자료구조·알고리즘의 적용 및 효율성 설명 | 코드 분석지, 수정 프로그램, 분석 보고서 | |
| C 영역 | Coding Challenge | 10 | 알고리즘 영역 | 제한 시간 내 문제 이해, 알고리즘 설계, 정확한 구현, 테스트, 실행 시간과 메모리 효율 개선 | 온라인 판정 결과, 소스 코드, 풀이 설명서 | |
| D 영역 | 정보과학 소논문 | 10 | 프로젝트 영역 | 문제 정의, 관련 자료 조사, 데이터·알고리즘 설계, 구현 또는 실험, 결과 해석, 정보 윤리와 한계 성찰 | 소논문, 발표 자료, 연구 코드·데이터, 성찰 기록 | |
| 지필평가 | 지필 | 정기 지필평가 | 40 | 학기 말 또는 학교 평가계획에 따름 | 정보과학 핵심 개념, 프로그램 실행 결과, 코드 분석, 자료구조 선택, 알고리즘 설계, 시간 복잡도 비교 | 선택형·단답형·서술형 답안 |
| 합계 | 100% | 수행평가 60% + 지필평가 40% | ||||
수행평가 영역별 운영 기준
A · 20%
수업시간 형성·진단 평가매 차시의 짧은 진단과 형성평가를 누적한다. 정답만이 아니라 풀이 과정, 오류 수정, 질문과 피드백 반영, 실습 참여도를 함께 평가한다.
B · 20%
프로그래밍 분석 평가주어진 프로그램을 추적하여 결과를 예측하고, 오류 원인을 설명하며, 더 읽기 쉽고 효율적인 코드로 개선하는 능력을 평가한다.
C · 10%
Coding Challenge문제 해결 전략의 타당성, 코드 정확성, 예외 처리, 시간·공간 효율, 테스트 결과를 종합 평가한다.
D · 10%
정보과학 소논문연구 문제의 구체성, 이론적 근거, 알고리즘·실험 설계, 결과 해석, 인용과 출처 표시, 정보 윤리 및 한계 성찰을 평가한다.
공통 평가 준거
지식·이해
핵심 개념과 원리를 정확히 설명하고 새로운 문제 상황에 연결하는 정도
핵심 개념과 원리를 정확히 설명하고 새로운 문제 상황에 연결하는 정도
과정·기능
문제 구조화, 알고리즘 설계, 구현, 테스트, 디버깅과 개선의 완성도
문제 구조화, 알고리즘 설계, 구현, 테스트, 디버깅과 개선의 완성도
분석·효율성
실행 과정을 논리적으로 분석하고 적절한 자료구조와 알고리즘을 선택하는 정도
실행 과정을 논리적으로 분석하고 적절한 자료구조와 알고리즘을 선택하는 정도
가치·태도
협력, 연구 윤리, 출처 표시, 개인정보 보호, 책임 있는 기술 활용을 실천하는 정도
협력, 연구 윤리, 출처 표시, 개인정보 보호, 책임 있는 기술 활용을 실천하는 정도
평가 운영 원칙: 수행평가는 결과물만 평가하지 않고 계획–시도–오류–수정–완성의 과정을 함께 반영한다. 성취수준 A~E의 차이가 드러나도록 개념 이해의 깊이, 적용 범위, 분석의 논리성, 구현의 정확성과 효율성, 가치·태도의 실천 정도를 종합적으로 판단한다.
Ⅳ. 최소 성취수준 보장 및 심화 운영
기초 지원핵심 개념 카드, 코드 빈칸 채우기, 실행 과정 추적표, 짧은 자동 채점 문제를 제공하고 교사 예시와 학생 코드를 단계적으로 비교한다.
심화 확장온라인 판정 문제, 그래프 최단 경로, 고급 동적계획법, 과학 데이터 분석, 오픈소스 기여와 같은 선택 과제를 제공한다.
피드백오류 유형을 개념 오류·설계 오류·구현 오류·검증 오류로 구분하여 다음 학습 행동을 구체적으로 안내한다.
과정 기록개발 일지와 버전 기록을 통해 시도, 실패, 수정, 협력 과정을 평가에 반영하고 결과물만으로 판단하지 않는다.