SCIENCE EDUCATION ISSUE

소프트웨어 교육의 방향 모색과 학습전략

페이지 정보

본문

놀이중심의 알고리즘과 교육용 도구를 활용한
프로그래밍 체험


최근 미래의 창의적인 인재를 육성하려는 노력으로 소프트웨어에 대한 관심이 점차 높아지면서, 소프트웨어 중심사회의 실현을 위해 소프트웨어 교육 기회를 확대하는 방향을 수립하고 있다. 소프트웨어 교육의 중요성에서 거론되는 것은 컴퓨팅 사고력 함양이다. 소프트웨어 교육의 궁극적인 목적은 자라나는 학생들에게 실생활에 필요한 문제 해결을 위한 논리적 사고력을 키우며 문제 해결 과정을 통해 스스로 창의적인 생각을 하도록 유도하는 교육이다. 이제 소프트웨어 교육은 21세기의 모든 사람들이 갖춰야 할 새로운 능력으로 등장해 코딩을 통해 실생활의 복잡한 문제들을 논리적으로 해결하고 객관화시키는 새로운 교육 트렌드가 되고 있다.


소프트웨어 교육의 방향
2015 개정 교육과정에서 초등학교는 교과(실과)내용을 SW 기초소양교육, 중학교는 정보 교과 신설, 고등학교는 ‘정보’과목을 일반선택 전환으로 소프트웨어 교육을 강화하기로 했다. 이 개정교육과정의 적용시기는 2017년(초 1~2학년), 2018년(초 3~4학년, 중1, 고1,) 2019년(5~6학년, 중2, 고2), 2020년(중3, 고3)이다. 초등학교에서는 실제적으로 적용받는 시기는 2019년 5~6학년에 해당한 것이다.


이러한 소프트웨어 교육의 기본 방향은 기존의 정보통신기술 교육에서 수행하였던 ICT 소양 및 활용 교육의 관점을 확장하여, 학습자들이 미래 사회에서 살아가는데 필요한 컴퓨팅사고력을 기반으로 문제를 해결하는 역량을 신장하고자 한다. 따라서 초·중등학교에서 이루어지는 소프트웨어 교육은 프로그램 개발 역량보다는 정보윤리 의식과 태도를 바탕으로 실생활의 문제를 컴퓨팅 사고력으로 해결할 수 있도록 하는 것에 역점을 둔다고 한다.

▣ 컴퓨팅 사고력
컴퓨팅의 기본적인 개념과 원리를 기반으로 문제를 효율적으로 해결할 수 있는 사고능력


▣ 컴퓨팅 사고력의 구성 요소
- 문제를 컴퓨터로 해결할 수 있는 형태로 구조화하기
- 자료를 분석하고 논리적으로 조직하기
- 모델링이나 시뮬레이션 등의 추상화를 통해 자료를 표현하기
- 알고리즘적 사고를 통하여 해결방법을 자동화하기
- 효율적인 해결방법을 수행하고 검증하기

- 문제 해결 과정을 다른 문제에 적용하고 일반화하기.
소프트웨어 교육의 교수학습 전략


교육부에서는 소프트웨어 교육 운영 지침에서 다음과 같이 소프트웨어 교육의 교수학습 전략을 제시하였다.


. 응용 소프트웨어의 사용법이나 프로그래밍 언어의 문법 학습을 최소화하고, 문제 해결에 필요한 프로그래밍을 통해 컴퓨팅 사고력을 신장하는데 초점을 둔다.
. 실생활 속에서 일어나는 문제 상황을 중심으로 학생들이 쉽게 컴퓨팅 사고에 익숙할 수 있도록 지도한다.
. 컴퓨터를 활용한 활동 외에도 컴퓨터 없이 문제해결의 방법이나 절차를 쉽게 이해할 수 있는 다양한 방법(언플러그드 활동 등)을 활용하여 지도한다. * 언플러그드 : 컴퓨터 없이 컴퓨터 과학의 원리와 개념을 학습할 수 있는 활동(뉴질랜드 팀벨 교수 등이 제안한 학습 방법
. 언플러그드 활동 시 놀이와 학습이 동시에 이루어질 수 있도록 시간과 내용을 적절하게 구성하여 지도한다.
. 단원과 내용의 특성에 따라 놀이, 체험, 관찰, 발표, 토론 등 다양한 방법을 적용하여 지도한다.
. 학습 동기를 유발할 수 있는 다양한 매체와 학습 자료를 활용하여 학교급 별 성취기준에 도달하도록 지도한다.
. 컴퓨팅 사고는 정보 교육에 국한되는 것이 아니므로 다양한 교과, 특히 수학, 과학, 언어, 사회 교육 등에서도 반영하여 지도한다.
소프트웨어 교육의 교육용 도구


▪ 언플러그드 활동 (Unplugged Activity)
언플러그드 활동은 뉴질랜드의 Tim Bell교수가 컴퓨터가 없는 환경에서 컴퓨터 과학 원리를 학습할 수 있는 놀이를 개발한 교수학습방법으로 놀이를 통해 컴퓨터 원리를 학습하여 문제해결에 있어서 컴퓨터 원리를 적용할 수 있는 능력을 신장시키는 목적을 둔 활동이다. 한선관(2010)은 언플러그드 컴퓨팅의 목표 달성하기 위해서 세 가지 사항을 고려하여야 한다고 하였다.


놀이로 배우는 컴퓨터 과학( http://csunplugged.org/)



언플러그드 컴퓨팅의 유형

첫째, 컴퓨터를 사용하지 않고 놀이 또는 게임, 구체적 조작물의 활용을 기반으로 하는 주제여야 한다. 즉, 학생들이 즐겁고 흥미롭게 주제를 구성하고 내용을 만들어야 한다.


둘째, ‘컴퓨팅’의 목표를 달성하기 위하여 절차적인 사고력이 요구되고 알고리즘적인 문제해결과 이산 수학적인 연산 과정을 통하여 학생들의 추론능력과 고급 사고력, 디지털 사고를 신장시키는 주제여야 한다.


셋째, 이 부분은 언플러그드 컴퓨팅 수업의 심화 단계 부분으로 가장 핵심이 되는 부분이다. 언플러그드 컴퓨팅’의 목표를 부합시키기 위하여 앞서 가정했던 ‘언플러그드’와 ‘컴퓨팅’의 두 요소를 모두 만족하는 내용으로 구성되어야 한다.

컴퓨팅의 요소를 만족시키기 위해 프로그래밍이 필요하며 선행 경험이 없는 초등학생의 경우 그 대안이 EPL을 사용하는 것으로 대체할 수 있다.


위에서 제시한 4가지 언플러그드 유형은 언플러그드 수업의 단계가 될 수 있다.즉, 네 가지의 단계는 또는 네 가지 모듈을 모두 포함하는 언플러그드 컴퓨팅 수업 내용이 언플러그드 컴퓨팅의 수업내용과 목표를 효과적으로 전달할 수 있는 수업전략이다.


현재 본교는 교육부 SW교육 연구학교에서 운영하고 있는 언플러그드 활동 교육 내용은 위에서 제시했던 기본 전략을 바탕으로 알고리즘( 문제를 해결하기 위해 정해진 일련의 절차)을 이해하는 활동으로 진행하고 있다. 이러한 알고리즘을 언플러그 활동을 통해서 익히고 그것의 실제 프로그래밍 과정을 교육용 프로그래밍 언어로 구현하고 더 나아가 피지컬 컴퓨팅으로 연동하고 있다.


대표적인 EPL의 종류



▪ 교육용 프로그래밍 언어(Education Programming Language, EPL)
EPL은 일반 프로그래밍 언어에 비해 학습자가 이해하기 쉽고, 습득 시간이 짧으며, 단계적이고 즉각적인 피드백을 제공함으로써 본교에서 효과적인 프로그래밍 교육을 실시하고 있다.

▪ 피지컬 컴퓨팅 (Physical Computing)도구
v피지컬 컴퓨팅의 개념은 컴퓨터과학자들이 아니라 뉴미디어아티스트에 의해 정립되고 발전된 것으로 디지털 기술 및 장치를 이용하여 사용자로부터 물리적인 방식으로 정보를 입력받아(Sensors) 처리한 결과를 물리적인 방식(Actuators)으로 출력하는 컴퓨팅이다. 이러한 도구들 중에서 위에서 언급된 EPL와 연동되어 편리하게 사용되는 도구는 메이키메이키, 아두이노, 햄스터, 비트브릭 등 많은 제품들이 출시되고 있다. 이러한 교육용 도구의 선택은 가격, 준비도의 간편성, 확장성 등을 고려하여 구매하는 것이 중요하다.


소프트웨어 교육의 비젼


‘SW교육은 프로그래머를 만드는 것이 목적이다.’라는 오해. 이 오해 아닌 오해는 당연한 것이다. 먼 미래에 아이들의 직업으로 프로그래머가 나올 수 도 있다. 그러나 그건 정해진 운명일까? 우리가 고민해야 할 것은 학생들이 문제 상황을 이해하고 그 문제 상황을 해결하는 과정에서 사용할 수 있는 생각의 힘을 키우는 교육을 하는 교사임을 잊어서 안 되며, 교육이라는 것을 기능적인 측면에서만 강조해서는 안 된다는 것을 여러 번에 걸쳐서 주지하고 있다. 또한 교사들에게는 교육 콘텐츠 개발에 조금 더 적극적인 노력과 공유가 필요하다는 것을, 그리고 전반적인 언론 홍보에서는 미래를 살아가기 위한 기초적이며 필수적인 요소를 갖추고 있는 것이 SW교육이라는 점을 강조하고 노력하고 있다. 즉, 소프트웨어 교육은 미래 사회를 살아가는데 필요충분조건인 것이다.


글 | 박찬규 교사(서울신남성초등학교)
박찬규 선생님은 서울교육대학교를 졸업하고 한국교원대학원에서 공통과학 초등과학교육 석사과정을 마쳤다. 동작교육지원청 과학영재원 강사, 과천과학관 자문위원, 교육부 SW교육 선도요원 등과 함께 엔트리 자문교사, Intel Creative Teacher Network Moderator 등을 역임하고, 현재 교육부, 서울시교육청 소프트웨어 교육 연구학교를 운영하고 있다.