2022 캡스톤 디자인 경진대회 (2022년 1학기 1차 예선)
-
CAUnity
- 팀장
- 한경빈 (컴퓨터공학부 | 4)
- 팀원
- 구태성 (컴퓨터공학부 | 4)
- 김성연 (컴퓨터공학부 | 4)
작품영상
-
VRgorithm - VR 기기를 활용한 코딩 교육 플랫폼
개발 동기
디지털 기술로 인한 사회 변화와 더불어 정부의 교육정책과 관련하여 초중고 대상 코딩 교육 시장이 빠르게 성장하고 있다.
2018년부터 중학생의 경우 34시간 이상 코딩 교육 의무화, 고등학생의 경우 정보 과목이 심화 선택과목에서 일반선택과목으로 변경, 또한 2019년부터 초등학생의 경우 17시간 이상의 코딩 교육을 의무적으로 받아야한다. 현재 다수의 대학에서 소프트웨어 인재 전형으로 학생을 선발하고 있다. 즉, 프로그래밍 역량이 초중고 학생들의 진학에 미치는 등 관련 교육의 중요성이 더욱 커지고 있는 상황이다.
이러한 수요에 맞춰 다양한 코딩교육 플랫폼이 등장하고 있으나, 저학년을 대상으로 하는 코딩 교육은 주로 흥미에 집중하여 프로그래밍에 대한 간접 체험을 통해 SW의 기초 원리는 경험을 하는 과정에 목적이 맞추어져 있다. 그러나 실제 프로그래밍과 다소 거리가 있는 퍼즐형 게임에서 그치기도 한다. 반대로 실제 프로그래밍 언어를 다루며 공부하는 것은 관련 기반이 부족한 초중학생이 시도하기엔 부담스럽기 때문에 나날이 커져가는 중요성에 발맞춰 적절한 교육 플랫폼이 제공되지는 못하는 상황이다. 즉 게임과 함께 흥미 위주로 진행하던 초등학교 현장의 코딩 수업이 중학교부터 갑자기 이론 위주로 변해 어려워지는 것이 자칫 학생들로 하여금 코딩 등 정보 교육에 대한 관심을 잃게 만들기도 한다.
(참고기사 : https://www.codingworldnews.com/news/articleView.html?idxno=4396)
한편 메릴랜드 대학교의 연구 결과에 따르면 VR기기를 사용해서 공부했을 경우 그렇지 않은 경우보다 기억효과가 8.8% 향상된다고 한다. VR기기가 경험에 현실의 층을 추가하면서 VR 세계에서의 몰입적 존재가 실험자들을 더 잘 집중하게 한다는 것이다.
(참고기사 : https://www.digitaltoday.co.kr/news/articleView.html?idxno=200567)
본 프로젝트에서는 이러한 교육 상황에서 흥미로우면서도 지속가능한 코딩 교육을 제공할 수 있는 플랫폼으로 VR 기기를 활용해 아동들에게 흥미를 유발하는 동시에 실제 프로그래밍과 흡사한 감각을 제공하는 교육 플랫폼을 개발하였다. 웹서버를 사용하여 선생님은 알고리즘 문제를 제작하고 배포할 수 있으며, 학생들은 리스트에서 문제를 선택해 VR기기를 활용해 플레이할 수 있다. VR 환경에서 블럭과 변수들을 배치하고 실행해보면서 문제를 풀이한 후 결과는 다시 웹으로 전송되어 저장된다. 이 과정을 통해 학생들은 VR기기를 활용하며 자연스럽게 소프트웨어와 프로그래밍에 익숙해지며, 이러한 교육은 곧 창의적 SW 인재 양성에 기여할 수 있다.
기존 코딩 교육 플랫폼 현황
1. 엔트리(https://playentry.org/) : 네이버 커넥트재단에서 개발하고 운영하는 비영리 소프트웨어 교육 플랫폼으로, 스크래치와 유사한 방식의 블록을 조립하는 방식으로 코딩하는 그래픽 기반 프로그래밍 프로그램이며 유저들이 쉽게 자신이 만든 프로그램을 공유할 수 있다. 그러나 저학년 위주의 대상을 목표로 하기 때문에 실제 프로그래밍과는 거리가 있는 자연어 블록 방식의 코딩이며 코드 실행 중간 과정의 확인이 불가능하다.
2. DEBUGGER(https://www.tynker.com/hour-of-code/debugger) : 2d 플랫포머 코딩 게임 해외 사이트로 주어진 블록들로 상황에 맞게 명령어를 배치해 문제를 해결한다. 다만 퍼즐 게임에 가까운 구성을 지니고 있어 실제 코딩과는 거리가 있다.
3. VR-OCKS(https://onlinelibrary.wiley.com/doi/abs/10.1002/cae.22172) : VR 환경에서 즐길수 있는 블럭 배치 게임으로 레벨마다 주어진 블럭을 컨베이어 벨트와 비슷한 역할을 하는 장치 위에 두어 순서대로 명령어가 실행되며 캐릭터를 이동시켜 목표를 달성한다. VR이라는 공통점이 있으나 해당 플랫폼도 프로그래밍보다는 퍼즐 게임에 가까운 구성을 지니고 있다.
4. 백준(https://www.acmicpc.net/) & 프로그래머스(https://programmers.co.kr/) : 실제 프로그래밍 언어를 활용해 알고리즘 문제 풀이, 코딩 테스트 등을 연습할 수 있는 플랫폼으로 초중학생이 사용하기에는 많은 기반 지식이 필요하기 때문에 접근이 어렵다.
-
node.js(서버) & unity(클라이언트) 를 사용하여 개발
서버 : 로그인, 문제 생성, 문제 조회, 결과 조회, 클라이언트 연동 기능
클라이언트 : 서버 연동 기능, VR 조작, 블럭 배치 및 문제 풀이 기능
역할 분담
구태성 : Unity Client 개발 (VR 조작 및 블럭, 변수 배치, 그래픽 디자인, 유저 경험 등)
김성연 : Server 개발 (문제 생성, 조회, 확인 기능 등), Unity Client 개발 (서버 연동, 데모 레벨 제작 등)
한경빈 : Unity Client 개발 (VR 내부 변수, 컴파일러, 기차 이동, 데모 레벨 제작 등), 데모 수행
-
기대효과
VR기기를 활용해 흥미롭게 공부함과 동시에 알고리즘 문제 풀이과정과 흡사한 경험을 제공함으로서 창의적 SW인재 양성에 기여할 수 있는 플랫폼.
즉 Multi verse 시대의 코딩 교육 플랫폼으로써의 정착을 기대할 수 있다.
중학생 대상 데모 수행 후 사후설문지 결과
-
서버
1) 로그인
2) 문제 보기
3) 문제 제작
4. 결과 확인
클라이언트
1) 문제 선택
2) 패널 화면
3) 블럭 배치
4) 블럭 연결
5) 실행 후 성공 결과
데모 수행 사진