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

SW(소프트웨어) 교육이란?(개념과 등장배경)

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

  안녕하세요 에듀몬입니다. 이번 시간에는 2015 개정교육과정에서 초중등 교육과정의 의무 교육과정으로 편성되며 점점 그 중요성이 확대되고 있는 소프트웨어 교육의 개념에 대해 알아보도록 하겠습니다.

 

 

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

 

 

1. 소프트웨어 교육의 개념

 

  4차 산업 혁명 시대는 초연결‧초지능 사회로 정보혁명의 시대입니다. 정보가 넘쳐나는 지식 정보 사회에서 온라인상에 존재하는 수많은 정보 중 필요한 것을 찾아내고, 재가공하고 활용하는 능력, 그리고 우리를 둘러싼 수많은 디지털 기기와 상호작용하고 다룰 수 있는 능력은 반드시 필요한 역량으로 강조되고 있습니다. 이러한 역량이 발현된 결과물을 소프트웨어라고 합니다. 즉, 소프트웨어는 디지털기기를 사용자의 요구에 따라 작동하도록 하는 기제를 의미합니다. 
  이미 우리 사회는 다양한 문제 상황에 적합한 소프트웨어를 개발하고 이를 활용하여 일상생활의 편의성을 추구하고 있습니다. 생활 속에서 손 안의 작은 스마트폰 속의 다양한 애플리케이션을 활용하여 정보를 얻고 활용하는 모든 모습이 우리 사회에서 소프트웨어의 중요성을 보여주는 것이라고 할 수 있습니다.

  소프트웨어 교육은 이러한 사용자의 필요에 의해 창의적인 과정을 통해 만들어진 소프트웨어의 특성을 바탕으로 이해되어야 합니다. 다른 말로 소프트웨어 교육은 컴퓨터의 기본적인 작동 원리를 이해하고, 실생활 속의 문제와 다양한 필요를 인식하여 정보화 기기를 활용한 해결방법을 탐구해 나가는 과정을 포함하는 교육입니다. 이와 함께 아날로그 정보들을 컴퓨터의 디지털 정보로 바꾸어 논리적으로 이해하고 효율적인 알고리즘을 구현하는 과정 모두를 포괄하는 광범위한 교육이라 할 수 있습니다. 이전에도 컴퓨터 등 정보화 기기 활용 교육이 있어왔습니다. 그러나 과거의 컴퓨터 활용 교육은 단순히 이미 상용화된 소프트웨어를 활용하고 기능적으로 익히는 수준에 그치는 것이었습니다. 그러나 현재의 소프트웨어 교육은 일상생활에서 문제를 인식하고 문제를 해결하기 위해 디지털 기기를 활용하고, 일련의 과정을 통해 능동적으로 소프트웨어를 디자인하고 창조하며 피드백을 통해 이를 정교화 해가는 과정을 담은 교육을 의미합니다.

  이에 소프트웨어 교육의 필요성이 증가하며 교육 현장에서 이를 적용하기 위한 다양한 노력을 하고 있습니다. 먼저 국가수준 2015 개정 교육과정에서 초‧중등 시기에 소프트웨어 교육을 의무적으로 이수하도록 하고 있습니다.

 

 

<2015 개정교육과정 개편 내용>

구분

현행

개편안

주요 개편 방향

초등학교('19~)

실과 ICT 단원 12시간

실과 SW 교육 17시간 이상

문제 해결 과정, 알고리즘, 프로그래밍 체험, 정보윤리 의식 함양

중학교('18~)

정보 선택

정보 34시간 필수

컴퓨팅 사고 기반 문제 해결 실시, 간단한 알고리즘, 프로그래밍 개발

고등학교('18~)

정보 심화 선택

정보 일반 선택

다양한 분야와 융합하여 알고리즘 프로그램 설계

 ※ 출처: SW 중심사회를 위한 인재양성 추진계획(교육부, 2015)

 

 

  또한 민간에서도 소프트웨어 교육이 다양한 방법으로 활성화되고 있는데, 포털사이트 네이버와 교육부가 함께 운영한 ‘소프트웨어야 놀자’ 프로젝트나, 삼성전자에서 운영한 주니어 소프트웨어 아카데미는 대표적인 예입니다. 이러한 움직임에 발맞추어 학생들이 쉽게 이해하고 실습할 수 있도록 하는 교육용 프로그램 언어와 교육 플랫폼의 보급 또한 증가하고 있습니다.

  2015 개정교육과정은 인문학적 상상력과 과학기술 창조력을 갖춘 창의 융합형 인재 양성을 목표로 하며 소프트웨어 교육을 강조하고 있습니다. 또한 소프트웨어 교육의 목적을 정보‧문화 소양, 컴퓨팅 사고력, 협력적 문제해결력의 신장으로 설정하였습니다. 이 중 ‘정보문화 소양’은 정보처리 기술을 올바르게 사용하는 역량이며, ‘컴퓨팅 사고력’은 다양한 문제를 창의적이고 효율적으로 해결하기 위해 논리적 사고력과 컴퓨터과학의 기본 개념과 원리, 컴퓨팅 기술을 적합하게 활용하는 능력입니다. 또한 ‘협력적 문제해결력’은 지식‧학습 공동체에서 컴퓨팅 사고를 바탕으로 효율적인 의사소통, 협업을 통해 문제를 창의적으로 해결할 수 있는 능력입니다.

 

 

 

2. 소프트웨어 교육의 배경

 

  소프트웨어 교육은 구성주의 철학에 기반을 두고 있습니다. 소프트웨어 교육은 단순한 설명 위주의 수업을 통해 지식과 기능을 익히는 것 이상이며, 학습자의 문제 인식과 요구를 토대로 컴퓨터를 활용하여 창의적으로 문제를 해결하는 과정 자체에 의미를 두고 있습니다. 또한 소프트웨어 교육은 기존의 정보통신 기술 교육에서 수행했던 ICT 소양 및 활용 교육의 관점을 확장하여 컴퓨팅 사고력을 기반으로 문제를 해결하는 역량을 기르기 위한 내용을 담고 있다. 그 과정에서 소프트웨어를 단순하게 활용하거나 프로그램을 단순하게 개발하는 것보다 정보 윤리 의식과 태도를 바탕으로 컴퓨팅 사고력을 발휘하여 실생활의 문제를 해결하는 것에 역점을 두고 있습니다.
  현재의 소프트웨어 교육의 시초인 Papert는 스스로 Piaget의 영향을 받은 구성주의자라고 하였습니다. 이와 함께 Papert는 학습자의 평균 수준을 추정하는 설명식의 일방적인 지도가 부적절하며, 구성주의 철학을 바탕으로 하는 교육활동이 이루어져야 한다고 주장하였습니다. Papert는 Piaget의 유아가 지식으로 채워지는 빈 그릇이 아니라 능동적을 지식을 구성해나가는 작은 과학자라고 보는 관점을 공유하였습니다. 또한 이러한 구성주의가 선호나 선택의 문제가 아니라 과학적인 사실이기 때문에 모든 교육에 자리 잡아야함을 주장하였습니다.
  이처럼 Papert는 Piaget의 구성주의 이론에 대부분 동의하였으나, 일부 내용에 대해서는 보다 급진적인 면모를 보였습니다. 대표적인 차이는 Piaget의 아동 인지발달 단계에 관계와 관련되는데, Piaget는 감각 조작기, 구체적 조작기, 형식적 조작기로 이어지는 아동의 인지발달단계에서 구체적 사고와 형식적 사고를 구분하였고, 어떤 연구가들은 이에 대해 일정 연령 이전에는 형식적 사고가 완전히 불가능하다고 주장하였습니다. 그러나 Papert는 구체적 조작기가 형식적 조작기 이전에 나타나는 불완전한 발달 단계가 아니라, 구체적 조작이나 사고의 과정이 그 자체의 힘을 가지고 있다고 주장하였습니다. 이러한 주장을 바탕으로 Papert는 아이들을 어른과 같이 사고하도록 강요할 것이 아니라, 어른들이 오히려 아이들의 구체적 사고를 능동적으로 활용해야 한다고 하며 구체적 사고의 중요성을 강조하였습니다.
  이와 함께 Papert는 컴퓨터가 구체적 사고를 촉진할 수 있는 도구가 될 수 있다 주장하였습니다. 이에 대한 근거는 컴퓨터가 형식적인 사고와 구체적 사고의 분리된 경계를 허물 수 있는 역할을 할 수 있다는 것이었습니다. 즉, 컴퓨터를 통해 학습자가 이전에 만질 수 없는 추상적인 지식의 영역을 구체적인 영역으로 끌어들일 수 있을 것이라고 여겼습니다. 또한 Papert는 유아들이 컴퓨터를 프로그래밍 함으로써 더욱더 적극적으로 활동하고, 이 과정에서 다양한 지식의 영역을 스스로 구성하고 배워나갈 수 있다고 주장하였습니다. 또한 Papert는 프로그래밍 활동을 통해 유아들이 ‘맞았다’ 또는 ‘틀렸다’ 식의 학습모델에서 벗어나 오류를 발견하고 적극적으로 수정하며, 성공과 실패에 대한 흑백 논리는 변화시킬 수 있게 된다고 하였습니다. 또한 컴퓨터를 프로그래밍 하는 과정에서 정보처리 이론에서 말하는 메타인지를 발달시킬 수 있다고 주장하였는데, 이는 자신의 사고에 대해 논리적으로 반성하도록 하는 ‘사고 자체에 대해 명확하게 생각하도록 하는 학습’을 가능하게 한다는 것입니다.

  Papert의 컴퓨터를 활용한 구성주의 철학의 기반은 Resnick에게로 이어졌습니다. Resnick은 MIT 미디어랩 레고-페퍼트의 석좌교수로 1982년 Papert 교수를 처음 만난 후 어린이들이 창의적 학습 경험에 참여할 수 있는 새로운 기술과 활동을 개발하는 등 학습 방법론을 연구하며 MIT 미디어랩의 ‘평생유치원’그룹을 이끌고 있습니다. Resnick의 가장 잘 알려진 업적 중 하나는 교육용 프로그래밍 언어로 전 세계 150국에서 사용되고 있는 스크래치(Scratch)의 발명을 들 수 있습니다. Resnick의 스크래치는 아이들이 무엇을 하도록 하는데 컴퓨터를 사용하는 ‘컴퓨터 보조 수업’ 접근 방식과 비교하여 아이들이 컴퓨터가 무엇을 하도록 컴퓨터를 프로그램하는 Papert 고유의 접근방식에 영향을 받았습니다. 기존에 Papert는 로고라는 프로그래밍 언어를 활용하여 이러한 접근방식을 시도하였으나, 이 과정에서 사용한 로고라는 프로그래밍 언어가 직관적이지 않아 선생님과 학생들이 사용하는데 어려움을 겪었습니다. 프로그래밍 언어 자체가 어려운 이유로 로고를 활용한 소프트웨어 활동은 학습자가 중심이 되어 자신의 아이디어를 프로그래밍 과정을 통해 발현하는 과정이 되기보다, 교사가 유아에게 프로그래밍 언어 자체로서 로고를 가르치는 활동이 되었습니다. 이러한 한계를 극복하기 위해 개발된 것이 보다 직관적인 형태의 교육용 프로그래밍 언어인 스크래치(Scratch)입니다. 스크래치 속에서 아이들은 자신의 이야기를 만들기 위해 디지털 기술을 도구삼아 무엇인가를 창작하고, 프로젝트의 목적을 스스로 상기하며, 개선해나가고 다른 사람과 공유합니다. 그리고 소통을 통해 더 나은 프로그램을 만들어 나갑니다.

  여전히 코딩을 소개하는 대부분의 프로그램은 퍼즐을 기반으로 하고, 주어진 과제를 해결해나가는 과정에서 기본적인 문법과 구두점을 배워나갑니다. 그러나 Resnick은 스크래치를 통해 아이들이 자신의 프로젝트를 구성해나가는 과정에서 주도적인 학습이 중요하다고 합니다. 또한 학습자 스스로 프로젝트를 통해 자신을 표현하고, 자신의 의견과 정체성을 표현해나감으로서 창의적인 사람이 될 수 있어야 한다고 강조합니다.
  소프트웨어 교육에 담긴 구성주의 철학은 Piaget의 영향을 받은 Papert, 그리고 Resnick을 통해 이어져왔습니다. 그리고 이러한 구성주의 철학적 사조는 소프트웨어 교육이 컴퓨터와 관련한 단순한 지식이나 기능을 배우는 교육이 아닌 학습자가 자발적으로 자신의 프로젝트를 만드는 과정에서 창의성을 발휘하고, 필요한 지식과 기술을 구성해나간다는 공유된 이해를 형성하도록 하였습니다. 그러므로 소프트웨어 교육 자체에 대한 연구는 비교적 역사가 짧고 다양하게 이루어지지 못하였다고 하더라도, 소프트웨어 교육은 구성주의 관점에서 바라본 유아교육의 큰 틀에서 이해되어야 합니다.

 

 

※ 참고문헌: 유아 소프트웨어 교육 활동에서 교사의 실천과 반성(임지명, 2019)

반응형