정보시대에 걸맞는 교육혁신을 위해 우리는 4차 산업혁명을 주도할 소프트웨어 인재를 양성하여야 한다. 우리 정부는 2014년부터 소프트웨어 인재 양성 전문 기구를 만들어 운영하고 2018년부터 소프트웨어를 초,중,고에 정규교과목으로 편성하였다. 본 고에 소프트웨어 교과목의 교육내용에 대하여 논하고자 한다.

  소프트웨어 교과목의 교육목표는 컴퓨팅적 사고력을 향상하여 문제해결(Problem Solving)의 능력을 배양하는 것이다. 2019년부터 초등학교 고학년에서는 “소프트웨어에 대한 기초교육”을 실시하고 문제해결 과정과 알고리즘 등에 대하여 필수적으로 배우고 있다. 2018년부터 중학교에서는 “정보와 과학기술”과목으로 컴퓨팅적 사고력을 기반으로 문제해결의 능력을 배양하고 있으며, 고등학교에서는 “정보와 과학기술”과목으로 융합과 알고리즘의 설계능력을 배양하고 있다. 그러나 아직은 초,중,고의 소프트웨어 교육내용과 방법이 체계적으로 정립되지 못한 실정이고 과정 간의 일관성도 매우 미흡하다. 예컨대, 소프트웨어 교과목이 학생들의 관심과 만족도를 높이기 위하여 쉽게 접근할 수 있는 블럭형 언어(언플러그드, 스크래치, 엔트리, 스마트메이커 등)를 이용한 단순한 코딩교육으로 전락하고 있어 본래의 교육목표와는 거리가 있어 보인다.

  본래의 목적을 달성하기 위헤 자연언어(Natural Language)와 모델링언어(Modeling Language)를 학습해야 한다. 과거 문제를 해결하기 위한 모델링언어가 매우 다양했다. 1995년 이후에 객체지향의 모델링언어(Unified Modeling Language)가 전 세계에 일반화되었다. 모든 대학, 연구소, 산업체에서 소프트웨어의 문제를 해결하기 위하여 UML을 학습하고 사용한다. UML은 블록형 언어나 프로그래밍 언어(C++, Java, Ada 등)와 독립적이다. UML을 이용하여 분석 및 설계한 것을 블록형 언어나 프로그래밍 언어를 이용하여 기계적으로 또는 자동으로 구현할 수 있다. 만일, 우리가 학생들에게 블록형 언어나 프로그래밍 언어를 집중적으로 교육한다면 그들의 창의성과 상상력을 파괴해 소프트웨어 교육목표에 역행하는 결과가 초래될 것이다.

  UML은 창의적인 아이디어를 쉽고 정확하게 표현할 수 있는 구문을 가지고 있다. UML은 비주얼테크닉으로 다양한 다이어그램으로 문제를 기술할 수 있다. 유스케이스 다이어그램으로 사람과 컴퓨터시스템 등과의 상호작용을 표현할 수 있고, 액티비티 다이어그램으로 순차적인 알고리즘을 표현할 수 있다. 시퀀스 다이어그램으로 시간개념과 객체 간의 관계를 기술할 수 있다. 스태이트 다이어그램으로 모든 객체의 상태를 정밀하게 기술할 수 있다. 이를 바탕으로 클래스 다이어그램과 컴포넌트 다이어그램을 작성하여 자동으로 블록형 언어나 프로그래밍 언어의 형태로 전환하여 소프트웨어를 실행해 볼 수 있다. 따라서 우리는 4차 산업혁명을 효과적으로 달성하기 위해 초,중,고등학교 뿐만이 아니라 대학에서도 교양으로 UML기반의 소프트 웨어교과목을 교육하여야 한다.

저작권자 © 숭대시보 무단전재 및 재배포 금지