• 검색 결과가 없습니다.

A Study of Algorithm Learning Methods for Improvement of Elementary and Middle School Students' Problem-Solving Abilities

N/A
N/A
Protected

Academic year: 2021

Share "A Study of Algorithm Learning Methods for Improvement of Elementary and Middle School Students' Problem-Solving Abilities"

Copied!
13
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

초․중등학생의 문제해결능력 신장을 위한 알고리즘 학습 방안 연구

김은길*ㆍ김승완*ㆍ현동림*ㆍ김종진**ㆍ김종훈

(

*†

제주대학교 ㆍ

**

한국폴리텍I대학 서울강서캠퍼스)

A Study of Algorithm Learning Methods for Improvement of Elementary and Middle School Students' Problem-Solving

Abilities

Eun-Gil KIM․Sung-Wan KIM․Dong-Lim HYUN․Jong-Jin KIM․Jong-Hoon KIM

(

*†

Jeju National University․

**

Korea Polytechnics)

Abstract

Korea is a high level of ICT infrastructure Construction in the OECD's PISA 2006.

However, the purpose using of ICT was analyzed for the sake of the interest. They have been emphasized a algorithm-based computer education in conference that it was attended by government, industry and university officials. We designed an algorithm curriculum by analyze a case in international ICT training courses and research. And we were proposed various methods, such as web-based contents, play-based programs, outdoor activities and educational programming language learning for algorithm learning at levels of elementary and middle school students.

Key Words : Computer Education, Algorithm Learning, Algorithm Learning Methods

†Corresponding author : 064-754-4913, [email protected]

Ⅰ. 서 론

1. 연구의 필요성

오늘날 사회에서 ICT(Information and Commu- nications Technology)는 경제적, 사회적, 개인적 삶의 양식을 변화시키고 있다. 남녀노소 구분 없 이 의사소통, 쇼핑, 인터넷뱅킹 등의 삶의 질 향 상을 위해 ICT를 이용함으로써 우리 삶의 일부 분으로 자리잡아가고 있다. 우리나라에서는 이 러한 정보화 사회에 앞서가기 위해 국가 정책으 로 ICT 산업과 교육정보화에 많은 투자가 이루

어져 왔다. 그 결과 모바일 기기를 통해 언제, 어 디서나 ICT를 활용할 수 있게 되었다. 교육에서 의 ICT 역시 많이 변화하였다. OECD의 PISA (Programme for International Student Assessment) 2006에서 학교의 ICT 인프라 현황을 살펴보면, 인터넷에 연결된 컴퓨터 비율이 0.946으로 OECD 평균 0.741보다 높으며 4위를 차지하는 우수한 수준이었다. 학생 1인당 학습용 컴퓨터 비율 역 시 0.184로 OECD 평균 0.170보다 높은 것으로 나타났다(김혜숙 외, 2008).

이와 같이 뛰어난 ICT 교육 인프라를 어떻게

(2)

활용하고 있는지 살펴보면 뚜렷한 차이를 보인 다. 학교에서의 ICT 활용도에서 거의 매일 사용 하는 경우가 4.27%로 OECD 평균 9.50%의 절반 수준이다. 또한 전혀 사용하지 않는 경우가 41.78%로 OECD 평균 12.06%보다 훨씬 높은 것 으로 나타났다. ICT 활용 목적 역시 <표 1>과 같 이 차이를 보인다(김혜숙 외, 2008).

구분 과제 한국 OECD 평균

인터넷 오락

인터넷 검색 67.17 59.22

게임 53.32 51.90

협동 작업을 위한 인터넷 사용 24.55 35.38 소프트웨어 다운로드 40.67 39.99 음악 다운로드 74.80 55.92 이메일 및 채팅 65.28 67.03

소프트 웨어

문서작성 30.04 46.70

스프레드시트 사용 9.15 20.03 그래픽 프로그램 사용 39.19 66.73 교육용 프로그램 사용 13.81 14.62 컴퓨터 프로그램 작성 6.70 18.21

< 표 1> ICT 활용 목적

우리나라 학생들의 ICT 활용 목적은 인터넷과 오락 중심으로 이루어지는데 반해 문제 해결을 위해 정보의 수집, 가공, 재창조에 활용되는 소프 트웨어 사용 부분에서는 OECD에 비해 낮음을 알 수 있다. 이와 같은 ICT 활용은 대학에 진학 하는 학생들의 컴퓨터 과학 지식, 알고리즘적 사 고 등이 부족하다는 문제점으로 이어지며 대학 졸업 후 기업의 고용 불일치까지 지속되고 있다.

최근 IT 인재 양성을 위해 정부와 기업, 대학 관계자들이 모여 논의한 결과 초․중등 컴퓨터교 육 의무화 폐지 및 논리적 사고력 배양을 위한 알고리즘 중심의 컴퓨터 교육과정의 부재를 문제 로 지적하였다. 이러한 문제를 해결하기 위해서 학교에서의 컴퓨터 교육 시간 확보 및 알고리즘 위주의 ICT 교육과정 설계 및 교재 개발, 교사 연수 등의 방안을 내놓았다(IT 인재 정책 간담회, 2010).

지금까지의 단순 컴퓨터 활용 교육에서 벗어나 학생들의 문제해결력 및 논리적 사고력을 신장시 키기 위해 초등학교부터 대학교까지 체계적인 교 육이 이루어질 수 있도록 초․중등학교 학생들의 수준에 적합한 알고리즘 위주의 교육과정 및 교 육 자료 등의 학습 방안 마련이 시급하다.

2. 연구 문제 및 방법

본 연구에서는 초등학교 컴퓨터교육과정의 개 선 방안 모색을 위해 컴퓨터과학 분야 중 알고리 즘을 중심으로 교육과정 및 학습 방안을 연구하 고자 한다. 연구 문제를 해결하기 위한 구체적인 방법은 다음과 같다.

첫째, 컴퓨터 과학 분야 중 알고리즘의 내용을 각종 전문서적 및 보고서 등을 통하여 분석하였다.

둘째, 외국 컴퓨터 관련 교육과정을 각종 보고 서 및 사이트, 교육 자료를 통해 분석하였다.

셋째, 외국과 우리나라의 컴퓨터 교육과정 비 교 분석을 통해 현행 컴퓨터 교육과정의 문제점 을 고찰하고 새로운 교육 내용을 선정하였다.

넷째, 선정한 교육 내용을 학생들의 인지 수준 에 맞게 적용 가능한 교실 놀이, 야외활동, 교육 용 콘텐츠 형태의 교육 자료를 개발하였고, 학습 한 내용을 발전시킬 수 있도록 교육용 프로그래 밍 언어를 이용한 적용 과제를 개발하였다.

다섯째, 교육 내용과 교육 자료를 가지고 실제 교육 현장에 적용 가능한 교수․학습 방법을 설계 하였다.

Ⅱ. 이론적 배경

1. 알고리즘 교수․학습 방안

2007 개정교육과정에 제시된 정보 교과에서는

알고리즘 학습 내용이 문제 해결 방법과 절차 영

역에 제시되어 있다(교육인적자원부, 2007). 교사

는 학습자가 이와 같은 영역을 학습함으로써 실

생활에서의 문제를 창의적이고 능동적으로 해결

(3)

할 수 있도록 지도해야 한다.

이를 위해 국가 수준에서 제시하는 알고리즘 교수․

학습 방안을 살펴보면 학습자가 실생활에서 접할 수 있는 현상과 문제를 분석하고 적절한 형태로 표현하며, 원리 또는 법칙을 오프라인에서 다양 한 활동이나 게임 등을 통해 학습할 것을 강조하 고 있다. 또한 평가시 알고리즘의 원리 및 방법 을 통해 문제를 분석하고 해결방법을 설계하는 능력과 문제해결과정에서 돋보이는 논리적이고 창의적인 능력을 평가하도록 유의할 것을 강조하 고 있다.

이와 같은 교수․학습 방안은 알고리즘의 원리 이해가 학습자 수준에서 이루어지는 것이 중요함 을 역설하는 것으로, 교사는 알고리즘을 가르치 기 보다는 학습자 스스로 문제를 해결하기 위해 일련의 과정을 직접 설계하고 오류 분석 및 수정 과정을 통해 논리적인 사고 능력과 창의적 문제해 결능력을 신장시킬 수 있도록 지도해야 한다.

2. 알고리즘 학습 관련 선행 연구

이영미(2007)는 초등학생을 대상으로 활동을 통한 정렬 알고리즘 학습과 일반적인 ICT 기반 학습이 학업 성취도에 미치는 영향을 연구하였으며, 연구 결과 이해도 및 흥미도 면에서 긍정적인 결과를 보였다. 그리고 정렬 외에 다른 알고리즘 주제의 학습자료 확보가 필요하다고 제언하였다.

권은정(2008)은 놀이를 통한 알고리즘 학습이 고등학생의 학업 성취도에 미치는 영향을 연구한 결과 긍정적인 효과가 있었으며, 보다 다양한 컴퓨 터 과학 분야의 학습 내용과 자료 개발에 대한 연구가 필요하다고 하였다.

황인철(2009)은 초등학생을 대상으로 검색, 정 렬, 그래프를 주제로 놀이 중심의 알고리즘 학습 을 적용하였고, 연구 결과 논리적 사고력 신장에 긍정적인 효과가 있음을 보여주었다. 또한 다양 한 알고리즘 학습 방법이 개발되어야 한다고 제 언하였다.

정미연(2008)은 중등학생을 대상으로 교육용 프 로그래밍 언어인 Squeak을 활용한 정렬 및 탐색 알고리즘 학습이 문제해결성향, 논리적 사고능력, 자기효능감에 미치는 영향에 대해 연구하였고, 그 결과 긍정적인 효과가 있음을 보여주었다.

이 밖에도 많은 연구에서 알고리즘 학습이 학생 의 논리적 사고력 및 문제해결능력 신장에 효과적 임을 제시하였으며 알고리즘 학습 관련 교육과정 을 구성 및 적용하였다. 하지만 기존 연구에서 설계한 교육과정은 정렬, 탐색, 그래프 정도의 알 고리즘으로 이루어져 있으며 활동 또는 교육용 프 로그래밍 언어 등 1가지 주제로만 교육과정이 설 계되었다.

본 연구에서는 초․중등학생의 인지 수준을 고려 하여 학습 의욕 고취를 위한 게임 형태의 웹 기 반 학습 콘텐츠를 개발하였고, 교실 놀이 활동을 통해 알고리즘의 원리를 구체적 조작 활동으로 학 습하도록 프로그램을 개발하였다. 또한 야외 활동 을 통해 문제의 범위를 확대되거나 신체 표현 활동 으로 학습의 파지 효과를 높이고, 교육용 프로그 래밍 언어를 활용하여 실제 컴퓨터에서 알고리즘 을 구현할 수 있는 학습 방안에 대해 제시하였다.

Ⅲ. 알고리즘 교육과정 설계

1. 알고리즘 교육내용 분석

선행 연구에서 살펴본 제언들과 같이 보다 다 양한 알고리즘 주제의 학습 프로그램 개발을 위 하여 외국에서 이루어지는 컴퓨터 관련 교육과정 및 프로젝트, 일반적인 알고리즘 내용을 분석하 였다.

외국의 컴퓨터 관련 교육과정은 미국을 중심으

로 분석하였다. 미국의 경우 주마다 교육과정이

다르지만 ACM(Association for Computing Machinery)

A Model Curriculum for K-12 Computer Science

보고서에서 제안한 컴퓨터 과학 교육과정 모델을

표준으로 컴퓨터 관련 교육과정이 구성되기 때문

(4)

에 관련 문헌을 분석하였다(Verno, A. et al., 2004;

Tucker, A. et al., 2006; Madden, B. et al., 2007;

Frost, D. et al., 2009).

컴퓨터 과학 교육 관련 프로젝트로 뉴질랜드 Canterbury 대학 Tim Bell 교수 연구진의 활동 중심 컴퓨터 과학 교육(Unplugged Project) 자료 에 반영된 내용을 분석하였다(Tim Bell, 2005). 또 한 일반적인 알고리즘 교육 내용과 이해 증진에 필요한 기초적인 자료구조 내용(Cormen, H. T.

et al., 2001)을 분석한 결과 <표 2>와 같다.

구분

교육내용 ACM Unplugged

Project

일반적인 알고리즘과

자료구조 자료

구조

이진법, 트리, 그래프, 데이터 타입

이진법, 트리 이진법, 트리, 스택과 큐, 그래프 등

알고 리즘

탐색, 트리 탐색, 정렬, 분할 정복, 백트래킹

탐색, 정렬, 정렬 네트워크, 최단경로, 라우팅 알고 리즘, 분할 정복 등

탐색, 정렬, 깊이·너비 우선 탐색, 최단경로, 동적설계, 그리디, 분할 정복, 백트래킹 등

< 표 2> 알고리즘 교육 내용 분석 결과

<표 2>의 알고리즘 교육 내용에서 공통으로 지도되는 주제는 탐색, 정렬, 최단경로가 있으며 분할정복, 백트래킹과 같은 알고리즘 설계법 역 시 지도되고 있다. 또한 이와 같은 알고리즘을 이해하기 위한 기본적인 자료구조 내용 역시 이 진법, 트리, 그래프 등이 선정되었음을 알 수 있 다.

2. 우리나라 컴퓨터 교육과정 분석

2007년 개정 교육과정을 살펴보면 초등학교 정 보통신기술교육의 내용 체계에는 알고리즘과 관 련된 내용이 제시되어 있지 않고, <표 3>과 같이 중학교의 정보 교과에 알고리즘 관련 교육내용이 제시되어 있다(교육인적자원부, 2007).

영역 내용요소

1단계 2단계 3단계

정보의 표현과 관리

○정보와

○자료의 자료구조 표현과 연산

○선형 구조

○멀티미디어 정보 표현

○선형구조

○멀티미디어

문제해결 방법과 절차

○프로그래밍의

○문제 및 문제 기초 해결 과정

○알고리즘의

○알고리즘의 개요 실제

○자료의

○자료의 정렬 탐색

< 표 3> 중학교 정보 교과 중 알고리즘 관련 내용

초․중등학교 교육과정을 살펴보면 정보는 지식․정 보 사회를 올바르게 이해하고, 정보 과학과 기술 에 대한 올바른 지식 습득 및 활용을 통하여 창 의적인 문제 해결력을 향상시키기 위한 과목이 다.

하지만 앞서 살펴본 외국 사례를 보면 알고리 즘 등의 컴퓨터과학 위주 교육이 초등학교부터 시작하는 반면 우리나라는 그렇지 못한 실정이 다. 또한 그나마 선정된 정렬․탐색 알고리즘이 중 학교 과정 3단계에서 제시되는 것은 늦은 양상을 보인다.

알고리즘 교육이 대학 교육에서만 이루어진 실 정을 생각해보면 학습 내용의 난이도가 매우 높음 을 알 수 있다. 하지만 선행 연구를 비롯한 많은 연구에서 학습자의 수준에 맞게 알고리즘 원리를 학습하는 것은 학습의 흥미도 및 이해도 면에서 무리가 없음이 증명되었다.

3. 교육내용 선정

앞서 분석한 외국의 ICT 교육과정을 바탕으로 본 연구에서의 알고리즘 교육 내용 선정 기준은 다음과 같다.

첫째, 초·중등학생의 인지 수준에 맞는 문제

상황을 구체적 조작 활동을 통해 제시한다. 정신

적 표상 활동으로만 이루어지는 활동은 학습의

어려움으로 인해 학습 동기가 저하되기 때문에

구체적인 조작 활동으로 학습자의 생각을 바로

(5)

표현할 수 있는 기회를 제공할 수 있어야 한다.

둘째, 학습한 알고리즘 원리는 학습자의 논리 적 사고 능력 및 문제해결능력 신장에 효과적이 어야 한다. 다양한 학습 활동을 통해 학습하게 되는 알고리즘 원리는 학습자의 다양한 사고 능 력을 신장시키는 데 도움을 주어야 한다.

셋째, 효과적인 알고리즘 학습을 위해 필요한 자료 구조 내용도 선정한다. 실세계의 자료들을 컴퓨터에서 표현하여 문제를 해결하기 위해서는 자료들 간의 논리적인 관계를 이해해야한다. 예를 들어 그래프에서 자료들의 관계 구조를 이해하는 것은 실생활에서 출발지와 도착지까지의 최단 경 로를 찾아가는 문제를 구현하는데 필수적이다. 이 와 같은 기준으로 선정한 학습 주제는 <표 4>와 같다.

Ⅳ. 알고리즘 학습 프로그램 개발

1. 교육자료 개발 방향

본 논문에서 제안한 알고리즘 학습 방안에서 활용되는 교육자료 개발 방향은 다음과 같다.

첫째, 초·중등학생의 인지 수준에 맞게 구체적 인 조작 활동을 통해 알고리즘 원리를 학습한다.

이론적인 내용을 보다 이해하기 쉽게 일상생활에 서 쉽게 접할 수 있는 사례로부터 원리를 도입한 후 활동을 통해 문제를 해결한다.

둘째, 기초적인 자료구조부터 알고리즘 난이도 에 따라 학습 위계를 정하여 교육 내용을 제시함 으로써 학습자의 학습 부담을 최소화한다.

셋째, 게임 요소가 가미된 알고리즘 원리 기반 의 교육용 콘텐츠를 개발하여 활용함으로써 학생 들의 학습 의욕을 고취시킨다.

넷째, 교육용 프로그래밍 언어를 사용하여 학 습한 알고리즘 원리를 직접 구현함으로써 실제 문제를 해결할 수 있는 능력을 향상시킨다.

이와 같은 개발 방향에 따라 <표 4>에서 선정 된 학습 주제별 구체적인 학습 프로그램을 [그림

1]과 같은 개발 모형에 따라 총 6개월에 걸쳐 연 구 및 개발하였다.

주제 학습 내용 비고

이진법 실세계의 정보를 컴퓨터에서 표현하는 방법과 원리

자료 구조 스택

/큐 나열된 자료간의 순서를 제어하는 원리 트리 복잡한 자료를 계층 구조로 표현하는

방법의 장점과 원리

그래프 자료간의 복잡한 연결 관계를 도식화하 는 방법과 탐색 원리 정렬 많은 자료 중에서 원하는 것을 기준에

따라 자료를 정렬하는 다양한 원리

알고 리즘 탐색 원하는 자료를 찾아가는 방법과 원리 그리디 선택 순간마다 최적을 취하는 방법의

장․단점

분할 정복 범위가 큰 문제는 작은 문제로 나누어 해결하는 방법과 동작 원리

백트 래킹

문제 해결 과정에서 해답을 찾지 못하 면 이전 과정으로 돌아가면서 해답을 찾아가는 원리

< 표 4> 선정된 알고리즘 교육 내용 체계표

[ 그림 1] 학습 프로그램 개발 모형 계획 단계에서 다양한 자료를 분석하여 알고리 즘 학습 주제에 적합하고 학습자가 실생활에서 쉽게 접할 수 있는 문제 상황 및 필수 학습 요소를 분석한다.

개발 단계에서는 분석한 내용을 바탕으로 각각

의 학습 방안별로 스토리보드를 작성하여 학습자

의 수준과 교육 환경에 적합한 학습문제 및 구체

적 조건 등을 선정한다. 그리고 선정 결과를 바

탕으로 학습 방안별로 필요한 교육 자료를 프로토

(6)

교육내용 학습 주제 세부 내용 2진법 전구 신호로

단어 맞추기

자릿수를 가지는 전구의 불이 켜짐, 꺼짐을 보고 코드표 비교를 통해 단어를 맞추는 게임

스택/큐 대포알 맞추기 게임

스택 대포에 장전되는 대포알의 색상과 동일하게 사용자가 큐 대 포에 장전하여 맞추는 게임 트리 미로 탈출

게임 전체 트리 구조를 잠시 보여주고 문을 열며 출구를 찾아가는 게임 정렬 양팔 저울로

물건 정렬하기

무게가 다른 원통을 양팔 저울을 최소한으로 이용하여 무게 순으 로 정렬하는 게임

탐색 폭탄 해체 암호문 찾기

크기 비교 및 배수 계산기를 이 용하여 암호문이 들어있는 봉투 를 찾아 폭탄을 해체하는 게임 그래프 사다리

놓기 게임

개수가 한정된 간선을 움직이는 포인트가 모든 정점을 지나도록 가로길을 생성해가는 게임 그리디 다트

맞추기 게임

정해진 총점에 도달하기 위해 다 트 과녁의 높은 점수부터 맞춰가 는 게임

분할 정복

n등분 망치로 무게

맞추기

저울의 용량을 초과하는 물체의 무게를 재기 위해 n등분 망치로 물체를 조각내어 조각의 무게를 통해 전체 무게를 맞추는 게임

< 표 6> 교육용 콘텐츠의 세부 학습 내용 타입으로 제작하였다.

수정 및 완료 단계에서는 컴퓨터교육 석·박사 과정의 교육현장전문가와 교수로 구성된 전문가 집단의 검토를 거쳐 개선 및 수정사항을 피드백으 로 제공받는다. 제공받은 피드백 자료를 바탕으로 학습 방안을 수정·보완하여 완성하였다.

2. 교수․학습 방법

이와 같은 방향으로 개발한 교육 자료는 <표 5>와 같이 교육에 활용한다.

구분 교수·학습 방법

웹기반 콘텐츠 활용

◦게임형 학습 콘텐츠 활용을 통해 학습자의 학 습 의욕을 고취시킨다.

◦활동 또는 EPL을 통한 학습 전 알고리즘 원 리를 체험하도록 지도한다.

교실 활동

◦교실 놀이를 통해 알고리즘 원리를 학습하되 흥미 위주로 진행되지 않도록 유의하여 지도 한다.

◦개별 또는 모둠별 경쟁 구조를 통해 학습 의욕 을 고취시킨다.

야외 활동

◦규모가 큰 그룹별 활동을 통해 문제 상황의 범위를 크게 하여 효과적인 알고리즘 원리를 탐색하도록 지도한다.

◦알고리즘 원리를 신체 표현 활동으로 학습함 으로써 학습의 파지 효과를 높인다.

활용 EPL

◦교육용 프로그래밍 언어(EPL)를 활용하여 알 고리즘 원리를 직접 구현하도록 지도한다.

◦디버깅 과정을 통해 학습자가 설계한 해결 방 법의 문제점을 분석하도록 지도한다.

< 표 5> 알고리즘 교수·학습 방법

웹기반 학습 콘텐츠 활용은 학습자가 알고리즘 원리를 게임 형태로 체험하기 때문에, 충분한 시 간 동안 구체적 조작 활동을 통해 이해하도록 유 의하여 지도한다.

교실 활동은 다양한 놀이와 실습을 통해 학생 들이 직접 알고리즘 원리를 찾을 수 있도록 지도 하되, 잘못된 오개념이 형성되지 않도록 수업 후 반에 알고리즘 원리와 관련된 정리 활동을 토의 과정을 통해 학습하도록 유의한다.

야외 활동은 문제의 범위를 확대하여 알고리즘 원리를 적용해보도록 기회를 제공한다. 예를 들

어 정렬의 경우 자료의 수가 많아지면 학습한 알 고리즘보다 다른 알고리즘이 신속할 수 있다는 점을 깨닫도록 지도한다.

EPL 활용의 경우 기초 단계에서 스크래치와 같이 학습자의 사고를 블록 형태로 조립하여 프 로그래밍 하도록 지도하되, 학습자 스스로 주어진 문제 상황의 세부 조건부터 해결하도록 안내한다.

Ⅴ. 학습 프로그램 개발의 실제

1. 교육용 콘텐츠를 통한 알고리즘 학습

Flash로 제작한 웹기반 교육용 콘텐츠로 게임

의 경쟁 요소와 알고리즘 원리를 바탕으로 구성

되었다. 게임 순위 비교를 통해 흥미를 고취시킬

수 있고, 언제 어디서나 학습이 가능하다는 장점

이 있다. <표 6>은 설계한 교육과정의 세부 학습

내용이고, [그림 2]는 실제 구현 장면이다.

(7)

백트래킹 체스 퀸 놓기 게임

n×n의 크기 체스 판에 n개의 퀸 을 서로 잡히지 않는 위치에 놓 는 게임으로 해답을 찾지 못하면 이전 과정으로 돌아가 새로운 해 답을 탐색하는 콘텐츠

[ 그림 2] 교육용 콘텐츠 예시

2. 교실 놀이를 통한 알고리즘 학습

일상생활에서 알고리즘 원리가 이용된 사례를 도입하여 문제 해결 과정에 적용된 원리를 쉽게 이해한 후 교실에서 다양한 놀이, 활동을 통해 알고리즘 원리를 학습한다. 난이도 있는 활동과 문제 설계 과정을 통해 학습한 원리를 적용해보 도록 구성하였다.

교육내용 학습 주제 세부 내용

2진법

암호화 문장 비밀메시지 이해하기

전달하기

숫자로 된 문자열을 코드표와의 비교를 통해 문자로 해독하는 놀이

스택/큐 스핑크스 가위바위보 기차 교차로

가위바위보 게임을 카드를 이용 하여 스핑크스의 카드가 큐와 같 은 형태로 동작됨을 알고 승리 카드를 제시하는 놀이

트리

가족관계도 만들기, 숫자 카드를

활용한 트리 만들기

숫자 카드를 이용하여 이진 트리 를 만들어보는 놀이로써, 트리 레벨을 최소한으로 만들어보는 형태로 확장 가능

정렬

무게 카드 정렬 비교하기

게임

양팔 저울을 이용하여 최소한의 사용 횟수로 물체의 무게를 정렬 하는 놀이와 이웃한 카드를 비교 하여 정렬하는 게임

탐색 카드 찾기

게임 다양한 탐색 알고리즘 원리를 이 용하여 카드를 탐색하는 놀이

그래프 올레길 탐험

정점과 연결된 간선에는 이동에 소모되는 시간이 제시되어 있고 이동 시간이 가장 빠른 길을 찾 는 게임

그리디 모양 조각 덮기 Knapsack

모양 조각의 최소한의 횟수로 일 정 면적을 덮는 놀이와 무게가 한정된 가방에 총 이득이 최대가 되도록 물건을 넣는 놀이

분할 정복

부분으로 문장을 나누어 만들기

주어진 문장을 만들기 위해 신문 에서 문장을 이루는 단어들을 찾 아 붙이는 활동으로 단어의 조합 을 생각하여 빠르게 찾을 수 있도 록 문장을 나누는 것이 효과적임

백트래킹 체스 퀸 놓기 게임

미로찾기

체스 퀸을 서로 잡히지 않는 위 치에 놓는 게임과 미로 탈출 게 임으로 해답을 찾을 수 없는 경 우 이전 과정으로 돌아가 새로운 해답 탐색 과정을 거침

< 표 7> 교실 놀이 활동의 세부 학습 내용

(8)

교육내용 학습 주제 세부 내용

2진법 모둠별로 숫자 표현하기

모둠 구성원들이 정면을 바라보거 나 뒤로 돌아서서 0과 1을 표현하 여 2진수를 표현하면 맞추는 활동

스택/큐 기차놀이

번호 순으로 출발선에서 출발하 여 교사가 제시하는 순서대로 스 택, 큐 터널을 통과하여 결승선 으로 들어오는 활동

트리 이진트리 줄서기

모둠 구성원들이 출발선을 출발 하여 숫자 카드를 뽑고 루트에 선 친구들과 비교하면서 이진트리 형태로 찾아가 줄을 서는 활동

< 표 8> 야외 활동의 세부 학습 내용

정렬 조건에 맞게 정렬해서

줄서기

정렬되지 않은 형태로 숫자 카드를 가진 구성원들이 훌라후프를 이용 해 크기 비교를 하며 정렬하는 활동

탐색 친구

찾아가기

교사가 제시하는 숫자를 이용하 여 해시 테이블 형태로 줄을 선 후 술래는 숫자 카드를 1개 뽑고 눈을 가린 후 해당 숫자를 가진 친구를 찾아가는 활동

그래프 최소신장트리 도로 만들기

구성원들이 서 있는 위치간에 놓인 간선 숫자를 보고 모든 구성원들 이 연결되면서 숫자의 합이 가장 적은 형태로 길을 연결하는 활동

그리디 공 옮기기

여러 개의 테니스 공을 5명, 3명 그룹 및 1명이 최소한의 왕복으 로 가져오는 활동 (5명 그룹 1회 왕복 = 공 5개)

분할 정복 물체 알아맞히기

물체를 조각낸 후 4개의 비밀상 자에 넣어 4명의 구성원들이 손 을 넣고 각각의 모양을 유추한 후 자신의 모양을 설명하여 완성 된 물체의 이름을 맞추는 활동

백트래킹 무사히 다리 건너기

구성원들이 가진 숫자 카드의 합 이 다리의 적재 용량을 초과하지 않도록 건너는 모든 경우의 수를 탐색하여 반대편 보드판에 해답 을 적고 돌아오는 활동

[ 그림 3] 교실 놀이 활동 예시

3. 야외 활동을 통한 알고리즘 학습

교실 활동에 비해 문제의 범위가 확대되었을

경우 학습한 알고리즘 원리의 적용 가능성을 탐

색해보고, 새로운 원리를 생각해볼 수 있는 기회

를 제공하거나 신체 표현 활동을 통해 학습의 파

지 효과를 높일 수 있도록 구성하였다.

(9)

[ 그림 4] 야외 활동 예시

교육내용 학습 주제 세부 내용

2진법 2진수 변환기 구현

나머지 연산으로 10진수를 2 진수로 변환하는 프로그램 구현

스택/큐 숫자 뒤집기 및 도형 순서 맞추기 게임

화면의 수를 기억하여 거꾸 로 입력(스택)하거나 반짝이 는 도형의 순서를 기억하여 순서대로 클릭(큐)

트리 입력 받은 수 이진트리 표현

입력하는 수를 이진트리 형 태로 출력하는 프로그램 구 현

정렬 달리기 시합 순위 정렬 구현

정렬 알고리즘을 이용하여 시합 순위 정렬 프로그램 구 현

탐색 깊이․너비

우선 탐색 구현 이진트리에서 입력받은 수를 탐색하는 프로그램 구현 그래프 최소신장트리

구현 n개의 노드를 연결하는 가장 짧은 연결 만들기

그리디 2진수

변환기 구현 10진수를 2진수의 높은 자리 부터 변환

분할 정복 이진 트리

탐색 구현 이진트리를 규칙을 이용해 입력한 자료를 검색

백트래킹 체스 퀸 놓기 게임 해답 찾기 구현

4×4칸에 4개의 체스 말 퀸이 서로를 죽이지 않고 놓을 수 있는 방법 찾기

< 표 9> 교육용 프로그래밍 언어를 활용한 문제 예시

4. EPL을 활용한 알고리즘 학습

알고리즘 원리를 교육용 프로그래밍 언어인 스 크래치와 로고를 통해 직접 구현해보는 과정으로 써, 실제 컴퓨터에서 효율적으로 동작할 수 있는 알고리즘을 생각할 수 있도록 교육과정을 설계하 였다.

[ 그림 5] EPL을 활용한 알고리즘 학습 예시

5. 알고리즘 학습 방안의 세부 내용

본 연구에서 제시하는 알고리즘 학습 방안을 정 렬 알고리즘을 통해 자세히 살펴보자. 웹기반 교 육용 콘텐츠는 [그림 6]과 같이 학생들이 구체적 조작 활동을 통해 알고리즘 원리를 학습한다.

학생들은 문제 상황 제시를 통해 해결해야할 과제를 인지하고 최소한의 저울 사용 횟수로 각 각 다른 무게의 물건을 정렬하기 위해 다양한 기 준으로 콘텐츠를 조작한다. 또한 단계별 난이도를 정렬해야 할 물건의 개수를 추가함으로써, 문제의 범위가 확대되는 경우 학생 자신이 생각한 기준 이 효율적인지 적용해본다. 콘텐츠 상의 단계와 저울 사용 횟수는 학습 이력으로 서버에 저장되 어 순위 정보를 제공하고 이는 학습 의욕을 고취 시키는 좋은 동기가 된다.

교실 놀이 활동은 학생들이 쉽게 접할 수 있는

일상생활의 사례 또는 알고리즘 원리와 관련된

사고를 할 수 있는 활동으로 시작한다. [그림 7]은

정렬 알고리즘의 사례이다.

(10)

[ 그림 6] 정렬 알고리즘 기반 학습 콘텐츠 활용

[ 그림 7] 교실 놀이 활동의 생각열기 사례 생각열기에서 문제해결 과정에 필요한 사고 활동 을 놀이 기반의 조작 활동에 적용해본다. [그림 8]은 정렬 알고리즘 기반의 활동으로 양팔 저울과 카드를 이용한 사례로써 교사용 지도서 구성 화면 이다. 교실 활동의 교육 자료는 실제 교육 현장에 활용될 수 있도록 지도서와 학생용 활동지로 구 성하였다.

[ 그림 8] 교실 놀이 활동 구성 사례

교실 놀이 활동에서 승리하기 위해 학생들은 자신만의 정렬 알고리즘을 생각하는데 이는 반드 시 효과적이라고 볼 수 없다. 이는 정렬에 대한 오개념이 형성될 소지가 있어 실제 컴퓨터에서 어 떤 원리로 동작하는지 지도해야 한다. [그림 9]는 컴퓨터의 알고리즘 원리에 대한 교육 자료이다.

[ 그림 9] 컴퓨터 알고리즘 원리 교육 자료 야외 활동에서 학생들은 교실 활동에서 학습한 정렬 알고리즘 원리를 바탕으로 문제를 해결한 다. 하지만 교실 활동에 비해 비교해야 할 대상 이 확대되어 어떤 알고리즘이 효율적인지 활동을 통해 느낄 수 있도록 지도한다. 컴퓨터의 CPU에 서 1:1 비교만 가능하기 때문에 야외 활동에서는 [그림 10]과 같이 훌라후프로 비교 대상을 제한 하였고, 비교 횟수 또는 정렬 완료 시간을 비교 하는 게임 형태로 진행하면 동기 유발에 효과적 이다.

[ 그림 10] 정렬 알고리즘 기반의 야외 활동 정렬 알고리즘 활동의 구체적 진행은 <표 10>

과 같이 이루어진다. 교사는 학생에게 직접 정렬

하는 방법을 지도하지 않고 규칙만 안내하여 학

생 스스로 알고리즘을 생각하도록 지도한다. 규

칙은 훌라후프 안에 들어갈 수 있는 학생은 2명

이고, 이 경우에만 크기 비교가 가능하다는 점,

(11)

훌라후프의 진행 방향은 규칙성이 존재해야 함을 예로 들 수 있다.

연번 활동 도해 비고

1

컴퓨터에서의 동작 원 리처럼 1:1 비교를 하 기 위해서 훌라후프를 이용한다.

2

훌라후프 안에 들어간 2명은 서로의 숫자를 비교하여 작으면 우측, 크면 좌측으로 이동한다.

3 크기 비교가 완료되면

훌라후프는 좌측으로 넘겨준다.

4

마지막 순서까지 크기 비교가 끝나면 훌라후 프는 다시 첫 번째 학 생에게 넘어간다.

5

첫 번째 학생부터 이 상의 과정을 다시 반 복하면서 크기를 비교 한다.

6 이와 같은 과정을 통

해 오름차순으로 정렬 이 완료된다.

< 표 10> 정렬 알고리즘 기반 야외 활동 진행 절차

또한 모둠 인원수를 확대하여 기존에 생각한 알고리즘보다 더욱 신속하게 정렬하는 알고리즘 은 없는지 구성원과 협의하여 생각하도록 지도한 다.

EPL 활용은 알고리즘 원리를 교육용 프로그래 밍 언어로 직접 구현해보는 것이다. 이 과정을 통해 미처 생각하지 못했던 알고리즘의 문제점을 파악할 수 있고, 실제 컴퓨터에서 동작하기 위해 서 고려해야할 사항은 무엇인지 학습한다. [그림 11]에서는 스크래치라는 언어를 사용하여 학생들 에게 정렬 알고리즘 구현 문제를 제시하였다.

학생들이 생각하는 알고리즘은 스크래치에서 마우스를 이용한 블록 조립 과정으로 구현할 수

있기 때문에 손쉽게 다룰 수 있다. 교사는 학생 들이 구현해야 할 문제만 제시할 수도 있지만, 핵심 알고리즘 구현을 제외한 나머지 소스를 파 일 형태로 과제를 제시할 수 있다. 하지만 스크 래치는 재귀 호출이 불가하여 그리디, 분할 정복, 백트래킹과 같은 알고리즘 설계법은 로고를 이용 하여 지도하는 것이 효과적이다.

[ 그림 11] EPL을 활용한 알고리즘 구현 예시

Ⅵ. 결 론

오늘날 사회가 요구하는 창의적인 인재 양성에 다가서기 위해서는 학생들의 논리적 사고능력과 문제해결능력을 신장시켜 주어 문제 발생시 최적 의 해결 방안을 찾을 수 있도록 지도해야 한다.

컴퓨터 교육에서 역시 단순한 응용 프로그램의 사용법보다 논리적으로 동작하는 컴퓨터를 대상 으로 하는 컴퓨터과학 그리고 그 핵심인 알고리 즘 중심의 교육이 이루어져야 한다.

하지만 알고리즘의 추상적 특성으로 인해 사고 수준이 높아 대학 교육에서 이루어지던 것이 현 실이었다. 기업과 대학 간의 고용 불일치 역시 뒤늦게 시작하는 컴퓨터과학 교육을 원인으로 삼 고 있다. 따라서 본 연구에서는 초․중등학생을 대 상으로 다음과 같이 알고리즘 학습 방안을 제시 하였다.

첫째, 알고리즘 원리 기반의 교육용 게임 콘텐

츠를 활용한다. 콘텐츠 상에서 학생들은 조작 활

동을 통해 알고리즘 원리를 이해하며 난이도를

(12)

통한 레벨 제공 및 순위 비교로 학습 의욕을 고 취시킬 수 있다.

둘째, 교실 놀이 활동을 통해 알고리즘 원리를 학습한다. 일상생활에서 알고리즘 원리가 이용된 사례를 도입하여 그 원리를 생각해본 후, 다양한 교실 놀이 활동을 통해 알고리즘을 학습한다. 또 한 난이도 있는 활동과 문제 설계 과정 등을 통 해 학습한 원리를 적용할 수 있다.

셋째, 야외 활동을 통해 알고리즘 원리를 학습 한다. 신체 활동은 학습의 파지 효과를 높일 수 있는 대표적인 학습 방법으로 문제 해결을 위해 구성원간의 협의를 통해 알고리즘 원리를 학습한 다. 또한 문제의 범위를 확대하여 제공한 후 알 고리즘의 신속성을 확인해보는 활동을 통해 더욱 효율적인 알고리즘을 탐색할 수 있다.

넷째, 컴퓨터에서 알고리즘이 어떻게 동작하며 구현해야하는지 직접 적용해보는 활동으로 교육 용 프로그래밍 언어를 활용하여 학습한다. 스크 래치는 학생들의 생각을 블록 형태로 조립함으로 써 문제 해결을 위한 프로그램을 구현할 수 있 다. 로고 역시 직관적인 명령어로 학생들이 손쉽 게 익힐 수 있어 알고리즘 원리를 직접 컴퓨터로 구현해보는데 효과적이다.

위와 같은 학습 방안은 학생 수준, 학교 및 지 역 실정을 고려하여 독립적으로 운영하거나 연계 하여 운영할 수 있도록 교육과정을 설계하였다.

따라서 구체적 조작 활동을 통해 알고리즘 원리 를 학습하고 교육용 프로그래밍 언어를 활용하여 직접 구현해보는 과정을 통해 지도할 수 있다.

초․중등학생을 대상으로 이루어지는 알고리즘 학습은 대학 컴퓨터 교육의 효율성을 더해줄 것 이고 기업의 고용 불일치 문제 역시 해결할 수 있다. 또한 알고리즘 학습은 학생들의 논리적 사 고능력과 문제해결능력을 신장시켜줌으로써 사회 적 요구에 부응하는 인재를 양성할 수 있을 것이 다.

참고 문헌

교육인적자원부(2007). 2007년 개정 초․중등학교 교육과정, 교육인적자원부, 446~456.

강순희ㆍ노정원ㆍ박종윤(1998). 과학교육 연구에 사용된 GALT 완본과 축소본에 대한 조사 연 구, 한국과학교육학회, 18(3), 399~413.

김혜숙ㆍ박현정ㆍ서정희(2008). 교육에서의 ICT 효과 분석(PISA 2006을 중심으로), 한국교육학 술정보원, 34~53.

권은정(2008). 놀이를 통한 알고리즘 개념 학습이 학습 동기 및 학업 성취도에 미치는 영향, 한 국교원대학교 교육대학원 석사학위논문, 59~61.

이영미(2008). 활동을 통한 알고리즘 교육과 ICT 기반 알고리즘 교육의 성취도 연구, 전주교육 대학교 교육대학원 석사학위논문, 51~52.

정미연(2008), Squeak 기반 알고리즘 학습이 학습 자 문제해결능력에 미치는 영향, 한국교원대학 교 교육대학원 석사학위 논문, 49~60.

황인철(2009). 놀이 중심 알고리즘 학습이 초등학 생의 논리적 사고력 향상에 미치는 영향, 진주 교육대학교 교육대학원 석사학위논문, 32~36.

Cormen, H. T., Leiserson, E. C., Rivest, L. R. &

Stein, C.(2001). Introduction to Algorithms, MA: The MIT Press, 10~984.

Frost, D., Verno, A., Burkhart, D., Hutton, M.

& North, K.(2009). A Model Curriculum for K-12 Computer Science: Level I Objectives and Outlines, NY: Computer Science Teachers Association, 2~44.

Madden, B., Verno, A., Carter, D., Cooper, S., Cortina, T., Cudworth, R., Ericson, B. & Parys, E.(2007). A Model Curriculum for K-12 Computer Science: Level III Objectives and Outlines, NY: Computer Science Teachers Association, 3~27.

Tim Bell(2005). Computer Science Unplugged, Computer Science Unplugged, 1~105.

Tucker, A., Deek, F., Jones, J., McCowan, D., Stephenson, C. & Verno, A.(2006). A Model Curriculum for K-12 Computer Science: Final Report of the ACM K-12 Task Force Curriculum Committee, 2nd Ed, NY: Computer Science Teachers Association, 1~38.

Verno, A., Carter, D., Cutler, R., Hutton, M. &

Pitt, L.(2004). A Model Curriculum for K-12

(13)

Computer Science: Level 2 Objectives and Outlines, NY: Computer Science Teachers Association, 3~33.

IT 인재 정책 간담회(2010). 초·중학교 컴퓨터 의 무 교육 필요,

(http://www.edaily.co.kr/news/News Read.edy?SCD=DA14&newsid=01767926592967

608&DCD=A00105&OutLnkChk=Y)

•논문접수일 : 2010년 12월 01일

•심사완료일 : 1차 - 2011년 01월 14일

•게재확정일 : 2011년 02월 05일

참조

관련 문서