• 검색 결과가 없습니다.

B. ACM의 K-12 Computer Science 교육과정 고찰

1. 포괄적인 교육과정 모델

<그림 1>ACM의 K-12컴퓨터과학 교육과정의 구조

n Ⅰ 단계 (K-8학년)

초등학생들에게 알고리즘 사고에 대한 간단한 아이디어를 기본적인 기술로 접목 함으로써 컴퓨터과학을 가르친다.기존의 과학,수학,사회과학에 간단한 모듈을 추 가함으로써 수행할 수 있다.

NETS(NationalEducationalTechnology Standard)의 표준과 알고리즘적 사고의 조합은 학생들이 이러한 목표를 달성하게 할 수 있다.

n Ⅱ 단계 (9학년 혹은 10학년)

현대 컴퓨터과학의 응용,원리,방법론에 대한 분명하고 폭넓은 이해를 획득하게 한다.대다수의 학생들은 Ⅱ단계가 컴퓨터과학을 공부할 마지막 기회이다.Ⅱ단계 의 내용은 현대 세계를 준비하는 필수적인 내용이어야 한다.

n Ⅲ 단계 (10학년 혹은 11학년)

컴퓨터과학을 더 많이 공부하고자 하는 학생은 Ⅲ단계을 선택하여야 하며 1년 과정의 선택과목이다.이 과정은 Ⅱ단계에서 시작한 학습을 계속하는 것으로 컴퓨

터과학의 과학적인 면과 공학적인 면을 강조한다.(수학적인 원리,알고리즘적 문제 해결 및 프로그래밍,소프트웨어 및 하드웨어 설계,네트워크,사회적인 영향력)학 생들은 직업으로서의 컴퓨터과학에 대한 적성과 흥미를 개발하기 위하여 이 과정 을 선택한다.

n Ⅳ 단계 (11학년 혹은 12학년)

컴퓨터과학의 특별한 영역에 대해 깊이 있는 학습을 할 수 있도록 하는 선택과 정이다.예를 들면 프로그래밍과 데이터구조에 대하여 깊이 있는 학습을 제공하는 AP 컴퓨터과학의 과정이다.이 단계는 AP 과정 대신에 멀티미디어 설계나 판매공 급자(Vendor-Supplied) 과정에 대한 전문가자격을 주는 기초연구과제 (Project-Based)과정일 수 있다.

Ⅳ단계는 기초필수로 Ⅱ단계를 요구하며 어떤 경우에는 Ⅲ단계 과정이 요구된다.

2.Ⅰ 단계 - 컴퓨터과학의 기초

컴퓨터과학의 기초는 정보기술의 구성요소이기 때문에 K-12학급에서 기술을 지 원하는 것이 필요하다.K-8학년의 학생들은 컴퓨터를 효율적으로 사용하는 것과 알고리즘적 사고를 문제해결에 사용하는 것을 배워야 한다.이러한 결과를 낳기 위 해서 학생들은 학교에서 통신할 수 있어야 하며,문제해결을 위해서 정보에 접근하 고 정보를 교환하며, 정보를 컴파일, 조직(Organize), 분석(Analyze), 합성 (Synthesize)한다.그리고 수집된 정보로부터 결론을 내리고 일반화한다.학생들 스 스로 자기주도적인 학습자가 되어 필요시 추가적인 정보를 찾는다.또한 팀과 공동 학습이 있으며,학생들이 문제를 분석하여 알고리즘적인 해결방법을 개발한다.그 리고 도덕적이고 적당한 방법으로 컴퓨터를 사용하여 다른 사람과 상호작용할 수 있도록 적당한 컴퓨팅 툴을 제공해야 한다.수학교육의 내용을 제외하고,이러한 특별한 내용은 K-8교육과정의 일부분이 아니다.즉,알고리즘의 기본적인 개념은 학생들에게 산술적인 과정인 덧셈,곱셈과 다른 기본적인 수학적인 아이디어를 가 르치는데 사용된다.

3.Ⅱ 단계 - 현대 사회에서의 컴퓨터과학

대학진학 또는 취업을 목표로 하는 모든 학생들이 접근할 수 있는 1년 과정이다.

이 과정의 목표는 컴퓨터과학의 원리와 현대사회에서의 컴퓨터과학의 위치에 대하 여 가르치는 것이다.

이 과정에서 고등학생들은 컴퓨터의 동작,컴퓨터네트워크의 기본적인 이해를 습 득하여야 하며 간단한 알고리즘을 구현하는 프로그램을 만들 수 있어야 한다.그리 고 이미지,사운드,텍스트를 포함하는 웹페이지를 개발함으로서 인터넷을 이해하 고, 데이터전송과 포맷, 인간과 컴퓨터의 상호작용(HCI : Human Computer Interaction)의 설계에 대한 통찰력도 습득할 수 있다.

이 과정에 들어가기 전에 학생들은 Ⅰ단계와 같은 컴퓨터의 경험이 있어야 한다.

학생들은 연구와 대화를 위하여 인터넷과 데이터베이스에 접근할 수 있어야 하며 스프레드시트와 그래픽스와 같은 툴을 사용할 수 있어야 한다.또한 알고리즘적 사 고의 기본적인 아이디어와 일생생활에서 아이디어의 사용을 가르쳐 왔어야 한다.

a.주제와 목표

이 코스의 중요한 결과는 컴퓨터 하드웨어,소프트웨어,언어,네트워크,현대 세 계에서의 충격에 대한 일반적인 지식을 학생들에게 제공하는 것이다.단계 Ⅱ의 대 부분의 학생들은 사용자로서 컴퓨터와 네트워크를 대하기 때문에 설계자의 관점보 다는 사용자의 관점에서 컴퓨터과학을 이수하도록 준비해야 한다.

학생들은 컴퓨터과학의 다음과 같은 주제의 개념적인 이해를 얻어야 한다.

∙ 컴퓨터의 구성의 원리 및 중요한 구성요소(입력,출력,메모리,저장,처리,소 프트웨어,운영체제 등)

∙ 알고리즘적으로 문제 해결의 기본적인 단계(문제의 표현 및 탐구,간단한 예 의 조사,설계,프로그램 코딩,테스팅 및 검증)

∙ 컴퓨터 네트워크의 기본적인 구성요소(서버,파일보호,라우팅 프로토콜,스플 러 및 큐,공유자원,결함허용)

∙ 인터넷 요소의 구성,웹페이지 설계(폼,텍스트,그래픽스,클라이언트 및 서버 측 스크립트),하이퍼미디어(링크,네비게이션,검색엔진 및 정책,인터프리테이션, 평가)

∙ 고급언어,번역(컴파일러,인터프리터,링킹),기계어,명령어집합,논리회로를 포함하여 컴퓨팅의 계층적인 구조 및 이론

∙ 이진수,논리,집합,함수를 포함하여 수학과 컴퓨터과학의 요소간의 연결

∙ 지능적인 행위와 모델(로보트 움직임,말과 언어,이해,컴퓨터 비전)로서 컴 퓨터의 개념,인간과 기계와의 차이점

∙ 현대 세계에서 컴퓨터와 알고리즘적인 문제해결을 위하여 두 개 이상의 다른 분야에 활용되는 예로써 전화 자동응답시스템 프로그래밍

∙ 컴퓨터와 네트워크에 관련된 도덕적인 문제점들(보안,개인사생활,지적재산, 공용소프트웨어의 이득과 결점,인터넷상의 정보의 신뢰도),인간 문화에서의 기술 의 긍정적인 면과 부정적인 면

∙ 컴퓨팅에서 다른 직업을 확인하며,이 과정에서 학습된 주제와 그 직업들과의 연결을 확인(정보기술 전문가,웹페이지 설계사,시스템분석가,프로그래머)

b.실험실 작업 :알고리즘,프로그래밍,웹페이지 설계

이 과정에서는 학생들은 알고리즘을 설계,여러 가지 계산적인 문제에 대한 답을 프로그래밍하는 경험을 얻어야 하다.프로그래밍 언어와 환경의 선택은 교사의 재 량인 반면에 알고리즘 설계와 프로그래밍의 구성요소는 다음과 같은 내용을 포함 하여야 한다.

∙ 컴퓨터에서의 변수,데이터 타입,데이터 표현

∙ 하향식(Top-Down)과 객체지향(Object-Oriented) 설계를 통한 복잡도 (Complexity)관리

∙ 절차(Procedure)와 매개변수(Parameter)

∙ 순차(Sequences),조건(Condition),순환(Loop(iteration))

∙ 설계를 표현하는 툴(Flow Chart,Pseudocode,UML,N-S Chart)

웹페이지의 설계의 구성요소는 다음과 같은 아이디어를 포함하여야 한다.

∙ 새로운 페이지나 활성화되는 프로세서를 로드하기 위한 하이퍼링크의 사용

∙ 이미지,비디오,사운드데이터를 저장하고,압축하고,암호화하고 검색함

∙ 사용자 인터페이스 설계

∙ 설계를 표현하는 툴(스토리보드,사이트 맵) c.환경과 제약조건

각 학교는 학생,교사 및 컴퓨터자원의 가용력에 차이가 있다.어떤 학교는 위의 주제의 부분집합을 포함하는 선택과목을 개설함으로서 시작할 수 있다.이 과정의 목표와 주제와 정보기술의 목표와 주제와의 차이점을 구별하는 것이 중요하다.

4.Ⅲ 단계 - 분석과 설계로서의 컴퓨터과학

1년 과정으로서 목표는 과학적인 교과와 공학적인 교과의 특징을 강조하면서 컴

퓨터과학의 학습을 계속하는 것이다.

이 과정에서 고등학생은 컴퓨터 동작의 기본적인 이해보다 더 높은 단계로 갈 수 있으며 더 복잡하고 흥미로운 주제를 찾을 수 있다.또한 이 과정은 AP 과정의 준비를 위하여 문제해결 및 프로그래밍 기술을 향상하는데 도움을 준다.

고급단계의 수학과 과학 교육과정처럼,학생들은 복잡한 실세계의 프로젝트를 설 계하고 프로그래밍하기 위하여 Ⅰ,Ⅱ단계에서 배웠던 기본적인 지식과 연결할 수 있어야 한다.

a.주제와 목표

이 과정의 중요한 목표는 학생들이 알고리즘 개발,문제해결,소프트웨어 공학원 리를 사용하여 프로그래밍하는 컴퓨터과학 기술을 개발하는 것이다.과정의 중점은 프로그래밍에 있지만 반면에 학생들에게는 인터페이스 설계,컴퓨터의 한계,소프 트웨어공학의 사회,윤리적인 문제점과 같은 중요한 주제가 소개될 것이다.

이 과정의 주제는 다음과 같다.

∙ 소프트웨어 설계 공정의 일부분으로서 스타일,추상화(Abstraction),교정과 효율성 및 프로그램 설계와 문제해결의 과정에 대한 기본적인 아이디어

∙ 간단한 데이터구조와 그것의 사용

∙ 이산수학의 주제 :논리,함수,집합,컴퓨터과학에서 그들의 관계

∙ 유용성에 대한 설계 :웹페이지 설계,상호작용(Interactive) 게임,문서화 (Documentation)

∙ 하드웨어 설계의 기초

∙ 언어,소프트웨어,번역의 단계 :컴파일러,운영체제,네트워크의 특성

∙ 컴퓨팅의 한계

∙ 소프트웨어공학의 원리 :소프트웨어 프로젝트 팀,소프트웨어 라이프 사이클

∙ 사회적인 문제점 :지적재산 및 상업용(ProfessionalPractice)으로서 소프트웨 어

∙ 컴퓨터관련 직업 :컴퓨터과학자,컴퓨터공학자,소프트웨어공학자,정보기술 자

b.실험실 작업 :프로그래밍,설계,다른 활동

이 코스에 있는 학생들은 알고리즘을 설계하고 여러 가지 문제에 대한 해결법을

프로그래밍하는 경험을 얻어야 한다.프로그래밍 언어의 선택과 환경은 교사에 달 려 있다.그 코스의 프로그래밍의 구성요소는 다음을 포함하여야 한다.

∙ 함수와 매개변수

∙ 재귀구조

∙ 객체와 클래스(배열,벡터,스택,큐 문제해결에 그것들의 사용)

∙ 그래픽스 프로그래밍

∙ 이벤트-드리븐(Event-Driven)과 상호작용적인 프로그래밍

하드웨어와 소프트웨어 공학은 프로그래밍 프로젝트들에 포함될 수 있고 이 과 정 동안 소개되어 질 수 있는 여러 가지 주제를 가지고 있다.

∙ 하드웨어 시스템 :논리,게이트와 회로,이진 산술,기계어와 어셈블리어,운 영체제,사용자 인터페이스,컴파일러

∙ 소프트웨어 엔지니어링 :요구,설계,팀,검사와 유지,문서화,소프트웨어 설 계도구

∙ 소프트웨어 엔지니어링에서의 사회적인 문제점,컴퓨팅의 한계,언어의 단계, 컴퓨터 관련 직업

c.환경 및 제약조건

이 과정은 실험실 중심 과정이기 때문에 학생들은 적당한 컴퓨팅 자원과 소프트 웨어에 일상적인 접근이 필요할 것이다.많은 프로그래밍 언어를 선택할 수 있기 때문에 언어의 선택은 교사의 전문성,실습실 하드웨어 환경,소프트웨어의 가격 및 가용성과 같은 현장의 조건에 따른다.

더욱이 이 과정은 AP 교육과정보다 범위가 더 넓으므로 모든 학생이 접근할 수 있도록 보완되어 한다.Ⅳ단계에서 AP 컴퓨터과학을 생각하고 있는 학생들을 위하 여 이 과정은 선구자 역할을 한다.

이 과정은 정보기술과정보다 컴퓨터과학의 기초를 더 넓게 포함한다.이것은 IT 의 기본 요소를 포함하고 있는 반면에 컴퓨팅의 한계와 자료구조와 같이 IT 교육 과정에서 포함되지 않는 개념을 학생들에게 소개한다.

5.Ⅳ 단계 - 컴퓨터과학의 주제

이 단계에 관심이 있고 자격이 있는 학생들은 컴퓨터과학의 특정 영역의 기술이 나 더 많은 이해를 얻기 위하여 여러 선택과목 중에서 한개를 선택할 수 있다.일

관련 문서