창의적 코딩교육 플랫폼 설계에 관한 연구
Copyright ⓒ 2020 The Digital Contents Society
This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-CommercialLicense(http://creativecommons.org/licenses/by-nc/3.0/) which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.
초록
2015 개정 교육과정 발표 이후 코딩교육이 초등학교에서부터 전 사회적인 컴퓨터 교육으로 활성화되어 가고 있다. 그러나 실제 교육현장에서는 이미 만들어놓은 코드를 학습자에게 알려주고 그대로 따라 하는 수업방식으로 창의적인 컴퓨팅 수업이 아닌 주입식 수업방식으로 진행되고 있다. 따라서 학생들이 스스로 생각한 것을 코딩하여 만들고 실현하는 데 어려움이 있는 상황이다. 이에 본 연구에서는 아두이노 교육을 통해 수학, 물리 등의 기초학문을 학습하고, 이론을 바탕으로 컴퓨팅 사고 기반 창의적 학습효과를 위해 3D 펜을 활용한 공동제작 코딩교육 플랫폼을 제안하였다. 제안방식을 이용한 실습 및 만족도 조사 결과, 제안한 창의적 코딩교육 플랫폼은 공간적·시각적인 측면을 고려한 완성품을 만드는 실습활동을 통해서 창의적 컴퓨팅 사고력 향상에 개선효과가 있음을 도출하였다.
Abstract
Since the announcement of the revised curriculum in 2015, coding education has been promoted from elementary school to all social computer education. However, in the actual field of education, students are being informed of the code they have already created and imitating them as they are, and not as creative computing classes, as well. Therefore, it is difficult to code, make and realize what students think. In this study, we studied basic science such as mathematics and physics through Arduino education, and proposed a co-production coding education platform using 3D pen for creative thinking effect based on computing thought. The result of the practical and satisfaction survey using the proposed method, the proposed creative coding education platform resulted in improvements in creative computational thinking through hands-on activities to create finished products considering spatial and visual aspects.
Keywords:
3D Pen, Arduino, Coding Education, Computational Thinking, Physical Computing, Creativity키워드:
3D 펜, 아두이노, 코딩교육, 컴퓨팅 사고력, 피지컬 컴퓨팅, 창의력Ⅰ. 서 론
우리 사회는 소프트웨어를 전문으로 다루는 기업뿐 아니라 금융, 자동차 등의 기업에서도 SW 활용능력을 갖춘 인재를 요구하고 있다. 이러한 사회적 변화에 맞추어 정부는 초등학교, 중학교, 고등학교에 코딩교육을 의무화하였다. 코딩교육의 효과를 높이기 위해서는 어떠한 교육경험을 제공하는가에 따라 좌우될 수 있다. 따라서, 학생들에게 코딩교육의 필요성과 경험을 고려한 교육방식의 새로운 설계가 요구된다. 글로벌 교육환경으로 유명한 미네르바 대학의 경우 캠퍼스가 따로 존재하지 않고 원격으로 강의가 이루어지고 있으며 현장에서 다양한 국적의 사람들과 함께 경험을 통해 학습하는 교육의 전이를 강조하고 있다. 미래 융합형 인재를 양성하고자 하는 교육현장에서도 공간적 제약을 받지 않는 로봇을 이용한 원격교육이 시행되고 있다[1]. 코딩교육의 목표는 컴퓨터의 기본 개념과 원리를 토대로 복잡하고 다양한 문제들을 창의적이고 효율적으로 해결하는 컴퓨팅 사고력(Computational Thinking)의 신장에 있다[2],[3]. 그러나 현실적으로는 컴퓨팅 사고력을 기반으로 문제를 창의적으로 해결하기보다는 미리 만들어진 학습 자료를 그대로 하는 주입식 수업방식으로 진행되고 있다.
따라서 본 연구에서는 컴퓨팅 사고 기반 창의적 학습효과의 향상을 위한 코딩교육으로서 아두이노 플랫폼을 활용한 교육을 통해 수학, 물리 등의 기초학문을 학습하고, 학습한 이론을 구현하기 위하여 3D 펜을 이용한 공동실습 교육플랫폼을 설계하였다. 3D 펜의 활용은 공간적·시각적인 측면을 고려한 실습 활동을 통해서 컴퓨팅 사고력 함양에 개선 효과를 얻고자 적용하였다. 또한, 아두이노는 피지컬 컴퓨팅(Physical Computing)을 쉽게 표현할 수 있는 소형 컴퓨터이다. 피지컬 컴퓨팅이란 컴퓨터 프로그램과 현실 세계가 상호작용하며 센서를 이용하여 다양한 정보를 수집하고 프로그래밍하여 현실 세계에 영향을 주는 것을 의미한다[4]. 다양한 센서를 테스트하고 직접 코딩한 로봇이 움직이는 것을 확인해 수업에 대한 흥미를 높이고 사고를 확장하여 융합 교육에 효율적인 교육용 플랫폼으로 활용되고 있다. 본 연구에서 제안한 교육프로그램에서는 학생들에게 흥미도와 성취도를 높이고자 학생들이 스스로 제작도면이나 여러 가지 센서들을 활용하여 생각한 것을 구현하도록 학습 목표를 설정하여 목표달성 하였는지를 확인하도록 설계하였다. 또한, 수업 후 설문조사를 통해 기존 이론 중심 코딩교육 방식과 비교하여 학습효과와 흥미도 증감 차이를 확인하고자 한다.
Ⅱ. 창의적 코딩교육 프로그램 설계
본 논문에서 제안한 창의적 코딩교육 프로그램에서는 컴퓨팅 사고의 학습을 통해 다양한 문제에 대해 컴퓨팅 사고적 문제 분석 및 해결 방안을 습득하고, 창의적인 문제해결 능력을 함양하도록 하고자 한다. 이를 위해, 컴퓨팅 사고의 기본 개념인 문제 분해, 패턴, 추상화, 알고리즘에 대해서 이해하고, 수학적 함수식을 사용하여 반복분과 조건문, 배열, 포인터 등을 학습하도록 설계하였다. 또한, 학습한 언어를 이용하여 직접 코딩을 하고 아두이노와 3D 펜을 사용한 작품구현을 통해 다양한 3D 모델링 및 변형을 함으로써 창의성을 높이고, 작품을 여러 관점으로 생각해 볼 수 있도록 하고, 복잡한 문제에 대해서는 단순화와 해결 전략을 설계 및 모델링하고 창의적 문제를 해결하는 능력을 개발하는 데 중점을 두었다.
본 논문에서 제시한 교육플랫폼의 교육효과를 검증하기 위해 설계한 프로그램을 반영한 실습교육을 수행하였으며, 이때 코딩교육의 교육목표는 크게 세 가지로 정하였다. 첫째 컴퓨팅 사고에 기초한 문제를 이해한다. 둘째 컴퓨팅 사고를 통한 창의적 문제해결방안 도출 능력을 함양한다. 셋째 문제해결방안을 실현하기 위한 소프트웨어 기초 역량을 향상한다. 수업은 여러 가지 코딩 언어를 습득하고, 함수의 성질을 이해하고 전기, 저항, 센서들을 이용할 수 있는 간단한 아두이노를 이용한 코딩교육을 익히도록 하였다. 어느 정도 습득 후 학생들이 3D 펜을 이용하여 완성품을 제작하도록 하였다. 수업 진행 후 3차시 이후는 팀을 구성하여 분담하도록 하였고 3D 펜이 익숙해지면 스스로 도안을 작성하고 작성한 도안에 자신이 만든 코드를 적용하여 창의적 발상을 하도록 유도하였다.
마지막으로는 미로찾기 자동차를 제작하여 그동안 배운 여러 종류의 센서들을 조합하고 스스로 코딩을 하여 장애물에 부딪혔을 때 초음파센서를 이용하여 회피하여 안전한 방향으로 이동하도록 제작하고 각각의 바퀴에 DC 모터를 부착하여 3D 펜으로 고정하도록 하였다.
교육프로그램은 표 1과 같다. 표 1에 3D 펜을 이용한 코딩교육 계획안은 1일 3시간씩 8주 동안 24시간 수업을 진행하였다. 학생들은 중학교, 고등학교 학생들을 대상으로 수업을 진행하였고, 수업 1주차에서는 아두이노를 이용한 기초실습으로 LED를 이용한 코딩교육, 아두이노 원리 익히기, 수업 2주차는 센서를 이용한 결과 도출 실습으로 아두이노 센서 실습, 수업 3주차는 조도 센서를 활용하여 가로등 제작을 3D 펜을 이용하여 제작, 수업 4주차는 DC 모터를 이용한 헬리콥터 제작, 수업 5주차는 초음파센서와 서보모터를 사용한 작품 제작으로 자동차 차단기 제작, 수업 6주차는 창의적 디자인 구현을 통한 자동차 모형 제작으로 미로찾기 자동차 제작, 수업 7주차는 자동차 경주를 위한 미로찾기 자동차 알고리즘 설계 및 구현을 목표로 미로찾기 자동차 제작, 수업 8주차는 실제 경주대회를 통해 창의력과 알고리즘 제작을 평가하였다.
Ⅲ. 아두이노와 3D 펜을 활용한 코딩교육
3-1 아두이노를 활용한 코딩교육
아두이노는 하드웨어에 전문지식이 없는 사람들이 쉽게 하드웨어를 조작할 수 있도록 고안되었으며, 저렴한 가격과 다양한 센서와 모듈을 작동할 수 있어 교육용으로 효과적인 소형 컴퓨터이다. USB 케이블을 이용해 컴퓨터에 연결하여 C언어 기반의 프로그래밍 제어가 가능하다. 코드를 작성한 프로그래밍이 주로 사용되나 스크래치와 같은 블록코딩을 이용한 프로그래밍으로도 제어할 수 있어, 중학생, 고등학생은 물론 초등학생들도 쉽게 사용할 수 있다[5]. 그림 1과 같이 아두이노를 활용한 교육은 일반 프로그래밍 교육보다도 학생들이 창의력을 높이거나 다양한 문제해결 향상에 도움이 되었다[6]. 그러나, 아두이노만을 이용한 교육에서는 학습 태도, 문제 해결력, 학습 흥미, 학습 몰입도를 증가시켜 주는 것을 확인하였으나 교습자가 미리 작성해 놓은 소스를 주고 그대로 컴파일하는 수업방식이어서 창의력을 개발하기에는 큰 변화를 감지할 수 없었다[7]. 따라서 제안한 교육프로그램에서는 부족한 창의성 부분에 대해 3D 펜을 활용한 제작을 통해서 높이고자 한다.
3-2 3D 펜을 활용한 코딩교육
3D 펜은 플라스틱 재료를 녹여 가는 선 형태로 출력되며 상온에서 쉽게 굳어 원하는 형태의 작품을 만들 수 있는 펜 형태의 3D 프린터이다. 3D 프린터와 비교하여 별도의 전문성 없이 기기의 몇 가지 버튼만 알면 사용할 수 있으며, 가격 면에서도 약 10 ~ 100 배 정도 차이를 보인다. 3D 프린터 한 대 가격으로 다량의 3D 펜을 보급함으로써 한 대의 기기를 사용하기 위해 여러 학생이 대기하는 상황을 방지할 수 있다. 또한, 출력을 시작하면 수정할 수 없는 3D 프린터와 달리 원하는 부분을 수정하고, 일부분의 색을 달리하는 등 활용이 가능하여 창의성과 흥미를 더욱 높여줄 수 있다. 그림 2의 3D 펜을 활용한 교육은 학생들의 정서 지능과 창의성을 높이고 무엇보다 수업에 대한 흥미를 유발하여 만족도를 높여 줄 수 있다. 간단히 코딩하고 하드웨어가 동작하는 것만 확인할 수 있는 기존의 아두이노 교육에서 3D 펜을 활용하여 하드웨어가 사용되는 물건과 물건의 동작 방식을 분석하고, 나아가 어떤 상황에 활용될 수 있는지 생각하도록 유도하여 컴퓨팅 사고력을 높일 수 있다.
Ⅳ. 창의적 코딩교육 모델 설계
본 연구에서 수행한 실습교육에서는 학생들이 전기·전자·통신과 관련된 하드웨어와 소프트웨어를 실제 만들어 구현해 보는 경험을 통해 창의적이고 융합적인 사고력 신장과 효율적인 문제해결을 위한 아두이노 기반 학습을 설계하였다. 실습을 위해 자료를 분석하고, 아두이노 기반 기본 센서들을 이용한 간단한 제작을 하였으며 모터를 부착하여 구동실험을 진행하였다.
3D 펜 제작을 통해 모형을 구현하고, 아두이노 기반의 코딩을 하여 미로찾기 자동차를 설계하고 제작하였다. 제작은 학생들이 수업 3주차 이후 팀 구성을 통해 협동하여 여러 가지 창의적 구상을 하도록 유도하여 경주대회를 통해 코딩교육의 성취감을 느낄 수 있도록 하였다.
사용된 부품은 표 2와 같이 바퀴에 부착하는 2개의 DC 모터와 장애물을 피할 수 있도록 거리를 측정하는 초음파센서, 초음파센서를 회전할 수 있도록 하는 서보모터와 바퀴를 정 회전, 역 회전할 수 있는 모터 드라이버를 부착하도록 제작하였다.
그림 3은 학생들에게 제공한 미로찾기 자동차의 알고리즘 흐름도이다. 자동차가 전진 중 20cm 내에 장애물이 발생했을 경우 서보모터를 −90° 방향으로 회전하여 서보모터에 장착된 초음파센서가 좌측을 확인한다. 좌측에 장애물이 없을 시, 자동차는 좌측으로 회전한다. 좌측에 장애물이 감지되면 서보모터를 90° 방향으로 회전하여 우측을 살피고 장애물이 감지되지 않으면 자동차를 우측으로 회전시켜 이동한다. 이때, 막다른 길에 대한 알고리즘은 삽입하지 않는다. 이 알고리즘을 통해 자동차는 막다른 길이 없는 미로에서는 잘 작동하지만 막다른 길이 있을 시, 같은 자리를 맴돌기만 하도록 하였다. 이에 학생들은 알고리즘의 부재를 느끼고 팀원과의 토론과 문제 분석을 통해 창의적으로 새로운 알고리즘을 설정하게 하였다.
기초적인 내용이 포함된 알고리즘을 제공하여 학생들에게 부담감은 낮추고, 부가적인 기능은 학생들이 스스로 생각하여 추가하고 수정할 수 있도록 유도하여 컴퓨팅 사고력을 향상시키도록 설계하였다. 최종적으로 그림 4와 같이 미로를 설치하여 수업 8주차에 미로 찾기 자동차의 경주대회를 시행하였다. 경기대회 중 몇 개의 팀은 주어진 알고리즘대로 하지 않고 주로 사용되는 오른손의 법칙 즉, 오른쪽 벽을 타고 계속 향하면 복잡한 미로 출구를 찾을 수 있는 알고리즘을 코딩하여 경주하였다. 또 다른 팀의 경우, 기본적으로 제공되는 자동차의 도면을 수정하여 부품의 위치를 효율적으로 재배치하기도 하였다.
학생들이 직접 제작한 자동차로 대회를 열어 스스로 문제를 해결하도록 수업을 진행하면서 도출된 문제점 중 하나는 평가 방식이었다.
학생들의 창의성을 평가하는 데 있어서 기존방식의 정량화된 평가 기준의 적용은 학생들의 창의성을 평가하기에 객관성이 부족한 문제점이 있다[8]. 따라서, 본 연구에서는 학생들의 창의성에 중점을 두어 평가하기 위해 평가 방식에 대해 학생들이 스스로 평가 기준을 마련하고 그룹토의를 통해 스스로 평가하는 방식을 적용하였다. 예를 들어, 미로 찾기 자동차 경주대회에서 자동차 센서들의 작동 여부와 목표지점 도달 시간, 장애물에 부딪히는 횟수, 팀 협동심 정도 등을 토의하여 스스로 점수를 채점하도록 하였다.
Ⅴ. 만족도 조사
코딩교육을 받은 중학교, 고등학교 학생들을 대상으로 3D 펜과 아두이노 교육 후 설문을 조사하였다. 설문내용은 코딩교육에 대한 흥미도와 다양한 코딩교육을 진행 후 학생들의 흥미도 향상과 동기유발 측면을 조사하고 팀 수업을 통한 협동심과 발표력, 창의력, 성취도 등을 조사하였다.
설문지는 총 20문항으로 이루어졌으며 중학교, 고등학교 학생 총 79명의 학생이 참여하였다. 설문내용은 아두이노를 이용한 코딩교육과 3D 펜 실습을 한 후 이루어졌다. 20개의 문항 중 5개 문항(8, 12, 15, 17, 19)을 추출하여 1번 매우 그렇지 않다. 2 번 그렇지 않다. 3. 보통이다. 4번. 그렇다. 5번. 매우 그렇다. 로 분류하여 분석한 결과는 표3과 그림 5와 같다.
표 3에서 ‘3D 펜 & 코딩교육 효과 설문지’에 대한 문항으로 설문 12번. ‘3D 펜과 코딩교육시간에 문제를 스스로 생각하고 해결 방법을 찾는다.’ 설문 15번. ‘3D 펜 & 코딩교육은 실생활에서 문제를 해결하는 데 도움이 된다.’ 설문 17번. ‘3D 펜 & 코딩 교육을 받은 후 문제를 어떻게 해결할 수 있는지 순서를 생각해 보게 된다.’는 문항에서는 다수의 학생이 그렇다, 매우 그렇다고 답했다. 3D 펜 & 코딩교육을 받은 후에 성취도를 묻는 문항으로 설문 19번. ‘3D 펜 & 코딩교육 프로그램 수업을 통해 성취감을 느꼈다.’ 문항에 대한 답변은 79명 중 63명이 그렇다(31.6%), 매우 그렇다(48.1%) 로 답했다.
그림 5에서 코딩교육에 대한 학생들의 생각에 대한 설문내용으로 설문 8번. ‘어른이 되면 코딩과 관련 진로를 희망한다.’에 대한 답변으로 다른 문항에 비해 평균이 3.82로 낮고 표준편차는 1.095로 높았다. 편차가 다른 문항보다 높게 나타난 것으로 대부분의 학생들이 코딩 관련 직업에 대한 관심도는 높지 않음으로 알 수 있었다. 19 번 문항 ‘3D 펜 & 코딩교육을 통해 프로그램 성취도를 느꼈다’라는 문항은 평균 4.266으로 높고 편차는 0.812로 낮아 신뢰도가 높게 작용하는 것을 볼 수 있다. 이는 기존 코딩교육과 다르게 3D 펜 실습을 추가한 교육프로그램을 이수한 학생들이 성취도가 높아졌음을 알 수 있다.
설문조사 결과 12번, 15번, 17번, 19번 문항에 관한 응답은 60% 이상 긍정적으로 코딩에 대한 흥미도는 높게 확인되었다. 이 결과를 통해 수업에서 학생 스스로 컴퓨팅 사고력을 갖게 되었고 코딩교육에 3D 펜을 이용하여 제작하면서 관심이 높아진 것을 알 수 있었다.
Ⅵ. 결 론
코딩교육은 이제 우리나라 교육현장에서 아주 중요한 부분을 차지하고 있다. 그러나 기존 코딩교육방식은 스크래치를 이용하거나 오픈소스를 사용하여 간단한 아두이노를 이용한 실습교육이 대부분이었다.
본 연구에서 제시하는 교육프로그램은 문제를 인식하고 문제해결을 위한 계획을 수립하여 수학적 지식과 기술, 아이디어를 활용해 주어진 자료를 논리적으로 해석하고 직면한 문제해결에 적용할 수 있도록 하였다. 제안한 교육프로그램 검증을 위한 실습교육은 기초 코딩교육 수업을 이수한 학생들을 대상으로 창의적 코딩을 해 볼 수 있도록 유도해 완성품으로 미로찾기 자동차를 만들도록 하였다. 세부적으로는 제작에 사용되는 부품들의 기능을 학습하고, 이를 활용하여 무게중심과 거리측정, 회전각도 등 함수를 스스로 적용하고 계산하여 본인만의 순서도를 작성하도록 유도하였다. 또한, 팀 과제를 수행하여 다양한 의사소통과 협력을 통해 융합소통역량을 높일 수 있도록 하였으며, 과제 수행 중 도출되는 의문점에 대해서는 타당한 증거에 입각한 논리적, 객관적으로 검토하고 해답을 찾는 능력을 습득하도록 하였다. 마지막으로 3D 펜을 사용하여 완성품을 제작하도록 하였다.
실습교육 결과, 학생들이 처음에는 주입식 교육에만 익숙해 이미 정해진 프로그램에 수동적으로 참여하려는 경향이 있었다. 그러나, 수업 중반부터 3D 펜을 사용하여 주어진 코딩에 새로운 함수를 추가하거나, 3D 펜의 필라멘트 색도 다양하게 사용하는 시도를 하였다. 수업 후반 학생들은 도면을 새롭게 디자인하고 경첩 부분, 센서 위치를 바꾸어 부착하는 등 여러 각도로 창의적인 작품을 제작하는 성과를 얻게 되었다. 실습교육 이수 후, 학생을 대상으로 한 설문분석 결과로부터 수업에서 학생 스스로 컴퓨팅 사고력을 갖게 되었고 코딩교육에 3D 펜을 이용하여 제작하면서 관심이 높아진 것을 알 수 있었다.
본 연구에서 중점을 둔 코딩교육의 목표는 컴퓨팅 사고에 기초한 문제 이해, 컴퓨팅 사고를 통한 창의적 문제해결방안 도출, 문제해결방안을 실현하기 위한 소프트웨어 기초 역량 향상이다. 앞으로 컴퓨팅 사고력 향상을 위한 다양한 교육이 이루어지도록 시간적 · 공간적 · 물질적 지원이 이루어지길 바란다.
참고문헌
- M. S. Lim, J. H. Han, “Convergence Technologies by a Long-term Case Study on Telepresence Robot-assisted Learning”, Journal of Convergence for information Technology, Vol. 9 No. 7, pp. 106-113, 2019.
- S. H. Kang, etc, “2018 Software Education Teacher Training Materials (Secondary education)”, Korea Education and Research Information Service, 2018. https://www.keris.or.kr/main/ad/pblcte/selectPblcteETCInfo.do?mi=1142&pblcteSeq=12312
- Paul S. Wang, “Form computing to computational thinking”, Life and power press, 2017
- S. J. Kim, Y. J. Jeon, T. Y. Kim, “A Practical Approach to Arduino Programming for The Physical Computing Section of The Informatics Curriculum in Korean Middle School”, The Korean Association Of Computer Education, pp. 29-34, 2016.08.
- J. H. Yu and etc, “Software Development Education Utilizing Physical Computing based on Arduino”, The Korean Association Of Computer Education, 19(1), pp. 61-64, 2015.01.
- J. G. Yoon, “The Effects of Programming Education Using Arduino on Creative Problem Solving Ability”, Master Thesis, Korea National University of Education, 2017.2.
- K. H. Son, “ The Development and Application to Computer Programming Education using Arduino”, Master Thesis, Gyeongin national university of education, 2013. 08.
- Rose. L. Todd, M. N. Jung, “The end of Average: how we succeed in a world that values sameness”, Book 21, 2018.
저자소개
1995년 : 충남대학교 교육대학원 (수학교육 석사)
2019년 2월 : 목원대학교 대학원 (공학박사)
2019년 3월 ∼ 현재 : 목원대학교 융합컴퓨터·미디어학부 겸임교수
※관심 분야:정보보호(Personal Information), 안전, SW 교육, 드론