본문 바로가기
교육방법/SW 교육

SW(소프트웨어) 교육방법(엔트리, 스크래치)

by 신박에듀 2020. 3. 14.
반응형

  안녕하세요 에듀몬입니다. 지난 시간에는 소프트웨어 교육의 개념과 등장 배경에 대해 알아보았는데요. 교육과정의 추진 배경 및 내용을 살펴볼 수 있었습니다. 이번 시간에는 소프트웨어 교육방법에 대해 알아보도록 하겠습니다.

 

 

본 포스팅은 '유아 소프트웨어 교육 활동에서 교사의 실천과 반성(임지명, 2019)'을 재구성하였습니다.

 

 

1. 소프트웨어 교육 방법

 

  소프트웨어 교육 방법은 큰 범주로 컴퓨터를 사용하는지 여부에 따라 언플러그드 활동과 플러그드 활동으로 나눌 수 있습니다. 언플러그드 활동은 컴퓨터를 활용하지 않고 컴퓨터 과학의 원리나 개념을 이해하기 위하여 만들어진 활동을 뜻합니다. 반대로 컴퓨터를 사용하는 모든 소프트웨어 교육 활동은 플러그드 활동이라고 불리는데, 플러그드 활동은 어떠한 도구(매체)를 활용하느냐에 따라 세분화할 수 있습니다. 종류로는 교육용 프로그래밍 언어활동, 피지컬 소프트웨어 교육 활동이 있습니다.

 

  언플러그드 활동은 뉴질랜드 Bell 외 3인이 제안한 프로젝트로써 컴퓨터를 사용하지 않고 이루어지는 컴퓨팅 교육으로 컴퓨터 없이 다양한 활동과 게임을 통해 컴퓨터과학의 원리나 개념을 쉽게 이해할 수 있는 활동을 말합니다. 컴퓨터를 활용하지 않는 언플러그드 활동은 구체적인 경험과 실생활과 관련된 놀이 형태의 활동을 매개로 활동이 이루어집니다. 특별한 도구나 프로그램 없이도 컴퓨터 과학의 개념과 원리를 효과적으로 가르칠 수 있다는 점에서 컴퓨터 교육의 새로운 방법으로 떠오르고 있습니다. 그러나 언플러그드 활동을 통해 가르치고자 하는 이진법, 탐색 알고리즘, 확장트리 등과 같은 컴퓨터 과학의 지식적인 측면이 유아들에게 교육적 가치가 있는지에 대한 비판이 존재하기도 합니다. 또한 이러한 내용이 정보문화 소양, 컴퓨팅 사고력, 협력적 문제해결력과 같은 소프트웨어 교육의 목적에 부합하는지에 대한 것도 문제가 될 수 있습니다. 이러한 이유로 많은 소프트웨어 교육은 컴퓨터를 활용한 플러그드 활동을 직접적으로 포함합니다. 특히, 플러그드 활동에서 많은 비중을 차지하는 것이 교육용 프로그래밍 언어를 활용한 소프트웨어 교육 활동입니다.

 

 

  가. 프로그래밍 언어

 

  교육용 프로그래밍 언어는 알고리즘 및 프로그래밍 방법에 대한 학습을 목적으로 초보 프로그래머를 위해 개발된 특수 목적용 프로그래밍 언어입니다. 교육용 프로그래밍 언어는 대상과 수준에 따라 여러 언어가 있으며, 2016년 기준 세계적으로 50여 종의 교육용 프로그래밍 언어가 개발되어 교육에 사용되고 있습니다. 최근 유아용으로 개발되는 프로그래밍 언어는 구문과 문법의 학습에 대한 부담을 줄이기 위해 간단하고 직관적인 형태로 새롭게 개발되고 있습니다. 이러한 이유로 최근의 교육용 프로그래밍 언어는 텍스트보다 주로 비주얼 기반으로 만들어지는 추세입니다. 

  이러한 프로그래밍 언어는 초등학교에서 적극적으로 장려되는 추세인데, 소프트웨어 교육의 핵심이 되는 교육으로 교육용 프로그래밍 언어는 일반적인 프로그래밍 언어에 비해 간단한 문법과 사용법을 갖추어 누구나 쉽게 프로그래밍을 하고 빠르게 결과를 확인할 수 있어야 합니다. 초등학교의 소프트웨어 교육은 전문적 프로그래머를 기르기 위한 교육이
아니기에 이해하기 쉽고 즐겁게 교육을 받을 수 있도록 교육용 프로그래밍 언어를 활용하여 교육해야 합니다. 이러한 교육용 프로그램 언어를 EPL이라 지칭합니다.

  EPL은 컴퓨터 사고를 이끄는데 다른 어떤 방법보다 가장 훌륭한 도구로 현재 세계적으로 40여 종의 교육용 프로그래밍 언어가 개발되어 사용되고 있으며, 그중에서 초등학생들이 가장 활발하게 사용하고 있는 엔트리와 스크래치의 특징은 다음과 같습니다.

 

<초등학생을 위한 교육용 프로그래밍 언어>

이름

소개

엔트리(play_entry.com)

엔트리 연구소에서 개발된 블록형 프로그래밍 도구로 프로그래밍 교육에 특화되어 있고, 다양한 디바이스와 웹에서 활용가능함(국내 개발)

스크래치(scratch.mit.edu)

MIT에서 제작한 블록형 프로그래밍 도구로 세계적으로 가장 많이 사용되고 있으며, 다양한 운영체제에 지원

코듀(www.kodugamelab.com)

마이크로소프트에서 만든 3차원 그래픽을 이용한 게임제작 도구

앨리스(www.alice.org)

게임과 애니메이션을 쉽게 만들 수 있는 3D 프로그래밍 환경

※ 출처: 초등학생의 창의적 문제해결력 향상을 위한 소프트웨어 교육 프로그램 효과 연구(윤혜정, 2019)

 

  엔트리는 카이스트 출신의 학생들이 주축이 되어 만들었으며, 엔트리교육연구소가 2014년 10월 네이버에 인수되어 이후 비영리로 사업목적을 전환하여 운영하고 있습니다.
  스크래치는 미국 매사추세츠공과대학(MIT)의 라이프 롱 킨더가든 그룹(Lifelong Kindergarten Group) 미디어연구실(Media Lab)에서 운영하는 EPL입니다. 2003년 개발 프로젝트로 출발하여, 세계 150여 국가에 40여 개의 언어로 공개되었습니다. 미국과학재단, 스크래치 재단, 구글, 레고 재단, 인텔, 카툰네트워크, 레만캐단, 맥아더재단에서 지원을 받았습니다.

 

SCRATCH 3.0

 

 

  나. 피지컬 컴퓨팅


  피지컬 컴퓨팅은 사용자로부터 물리적인 방식으로 아날로그 정보를 입력받아 처리한 디지털 정보처리 결과를 물리적 방식으로 디지털 기기의 모터나 구동기를 통해 출력하는 시스템을 만드는 일련의 과정입니다. 피지컬 컴퓨팅은 Papert의 Logo 언어를 활용하여 거북이 모형 장난감을 움직이도록 하는 것을 교육에 적용한 데서 시작되었습니다. 피지컬 컴퓨팅은 유아들이 출력된 결과물을 실제로 확인할 수 있다는 점에서 주목받는 형태의 소프트웨어 활동입니다. 그러나 피지컬 컴퓨팅은 교육의 비용 면에서 많은 현장에 적용되기에 어려움이 있습니다. 물론 현재의 피지컬 컴퓨팅은 과거에 비해 하드웨어 기술력이 향상되면서 가격이 저렴해지고 교육의 접근성도 높아졌습니다. 예를 들어 이탈리아 예술가들에 의해 개발된 아두이노 이후, 라즈베리 파이, 스크래치 센서 보드, 갈릴레오 보드 등 저렴한 컴퓨팅 보드의 확산은 피지컬 컴퓨팅을 활성화하였습니다. 그러나 여전히 피지컬 컴퓨팅은 부수 장치 구입, 고장 및 분실 우려로 비용적인 측면에서 교육 현장에서 널리 적용되기에 어려움이 있습니다.

 

 

2. 교육용 프로그래밍 언어의 바람직한 특성

 

  소프트웨어 활동에서 디지털 환경의 바람직한 특성을 지칭하는 명칭은 학자마다 다릅니다. 그러나 학습자의 자발적인 탐구와 지식의 구성을 강조한다는 측면에서 비슷한 내용을 담고 있습니다. 이러한 사실에 비추어 교육용 프로그래밍언어의 바람직한 특성을 정리하여보면 다음과 같습니다.
  첫째, 교육용 프로그래밍 언어는 충분히 쉬워야 합니다. 학습자가 프로그래밍 언어의 문법과 기능을 익히기 어렵다고 느끼는 경우, 소프트웨어 활동으로 자발적인 창작활동을 하기 이전 인지적 부담으로 인해 소프트웨어 활동 자체에 흥미를 잃기 쉽습니다. 그러므로 학습자가 교육용 프로그래밍 언어의 기본 문법을 이해할 수 있어야 하며, 이해한 내용을 쉽게 자신의 생각을 표현하는데 적용할 수 있어야 합니다.
  둘째, 교육용 프로그래밍 언어는 유연해야 합니다. 교육용 프로그래밍 언어를 활용한 소프트웨어 활동을 학습자가 자신의 관심이나 흥미에 관련된 프로그램을 프로젝트로 삼고 제작하는 방식으로 이루어집니다. 이때 학습자의 관심이나 흥미, 이를 표현하고자 하는 방식은 모두 다릅니다. 그러므로 교육용 프로그래밍 언어 또한 학습자의 다양한 생각을 반영할 수 있도록 유연해야 합니다.
  셋째, 교육용 프로그래밍 언어는 시행착오를 허용해야 합니다. 교육용 프로그래밍 언어를 활용한 소프트웨어 활동에서 유아는 프로그래밍 과정에서 수많은 오류를 경험합니다. 이때 유아는 자신의 결정을 돌아보고 잘못된 점을 수정해나가는 디버깅을 통해 자신의 생각을 수정해 나가고, 더 나은 이해로 나아가며, 이와 함께 실패를 두려워하지 않는 태도를 기르게 됩니다. 그러므로 교육용 프로그래밍 언어는 유아가 활동의 결과를 쉽게 확인할 수 있도록 해야 하며, 쉽게 수정할 수 있도록 해야 합니다.
  넷째, 교육용 프로그래밍 언어는 도전적이어야 합니다. 유아가 소프트웨어 활동에서 자신의 표현의 폭을 넓히며 계속해서 참여할 수 있는 도전적인 기회를 가질 때 유아는 자신의 활동에 보다 몰입하고, 자신의 활동 결과에 대한 높은 성취감을 느낄 수 있습니다. 그러므로 교육용 프로그래밍 언어는 쉬운 단계에서 시작하여 점차 확장된 생각을 표현할 수 있는 높은 한계점을 제공하여야 합니다.

 

 

※ 참고문헌

초등학생의 창의적 문제해결력 향상을 위한 소프트웨어 교육 프로그램 효과 연구(윤혜정, 2019)

유아 소프트웨어 교육 활동에서 교사의 실천과 반성(임지명, 2019)'

반응형