검색 전체 메뉴
PDF
맨 위로
OA 학술지
짝 프로그래밍을 이용한 소프트웨어 교육이 학습동기 및 학업성취도에 미치는 영향 The Effect of Software Education using Pair Programming on Learning Motivation and Academic Achievement
ABSTRACT
짝 프로그래밍을 이용한 소프트웨어 교육이 학습동기 및 학업성취도에 미치는 영향
ABSTRACT

As the technology of information communications has developed and its equipment has come into wide use lately, the social structure has been changing from industrial society to informational one. This caused the transformation toward the society in which computers solve complicated problems by using various and a large amount of materials from the society in which people solved simple ones by using a small amount of materials. Owing to this change, each nation in the world became interested in software education and added them to school curriculum as a new subject. However, the studies about ways of teaching and learning to educate software education effectively are insufficient and preliminary elementary teachers have no interest in teaching programming. So this study suggested the way of teaching and learning which can educate software education through pair programming. And this study analyzed statistically the learning motivation and study achievements of software education between a experimental group used the way suggested by this study and a control group used a general teaching way. As a result, the way suggested by this study was more meaningful in terms of the learning motivation and study achievements of software education than a general one.

KEYWORD
Pair Programming , Scratch , Elementary Teacher , Coding , Software Education , Programming Education
  • 1. 서 론

    정보 통신 기술의 발전과 정보 통신 기기의 빠른 보급에 따라 사회 구조는 산업 사회에서 정보 사회, 지식 정보화 사회로 변화하고 있다. 이러한 사회 구조의 변화는 적은 양의 자료들을 사용하여 단순한 문제를 해결하는 사회에서 다양할 뿐만 아니라 빠른 속도로 생산되는 많은 양의 자료들을 사용하여 복잡한 문제를 해결하는 사회로의 변화를 의미한다. 지식 정보화 사회에서는 다양한 종류의 데이터, 매우 빠른 속도로 생산될 뿐만 아니라 대규모 수십 테라바이트 이상 데이터와 복잡한 문제를 분석하고 해석할 수 있는 능력, 분석하고 해석한 문제를 자동화할 수 있는 능력, 자동화를 통하여 미래를 예측할 수 있는 능력, 창의적으로 무언가를 만들어 내는 능력을 갖춘 인재가 필요하다 [1]. 이러한 인재들을 양성하기 위하여 세계의 많은 나라들은 21세기 핵심 산업 분야로 소프트웨어 분야를 선정하여 소프트웨어에 대한 투자 및 많은 관심을 가지고 있을 뿐 아니라, 소프트웨어 관련 교육과정을 운영하고 있거나 운영할 예정이다. 영국은 컴퓨터를 활용하는 교육에서 소프트웨어를 제작하기 위한 교육으로 교육과정을 변경하여 2014년부터 만 5세에서 16세까지 소프트웨어 교육을 실시하고 있다[1-3]. 미국은 code.org와 같은 교육용사이트를 개설하여 많은 학생들이 어려서부터 코딩 교육을 접할 수 있는 다양한 환경을 제공하고 있다. 또한 ISTE와 ACM은 컴퓨터 교육에 대한 표준안을 만들어 소프트웨어 교육과정을 제시하고 있다. ACM의 컴퓨터 교사 모임은 2011년부터 컴퓨터 교육의 표준안을 제정하여 전국의 교사들에게 기존의 컴퓨터 활용 교육에서 사고력을 개발하는 계산적 사고와 프로그래밍 영역을 강화한 내용을 초등학교 1학년부터 교육할 것을 권고하고 있다[1,3].

    이러한 시대적 상황뿐만 아니라 사회 구조 변화에 따라 우리나라 교육부는 2015년 초중등학교 컴퓨터 교육 과정 개정을 통해 컴퓨터 과학, 컴퓨팅 사고력 및 소프트웨어 교육 등 컴퓨터 관련 교육에 관심을 나타내고 있다[2,4].

    소프트웨어 교육은 학습자가 다양한 문제 상황에 대처할 수 있는 문제 해결력 및 논리적 사고력에 영향을 미친다는 연구결과에 따라 컴퓨터 교육 관련 분야들 중 가장 중요한 분야로 인식되고 있다[5]. 하지만 예비 초등 교사 대부분은 소프트웨어 교육에 대해 어려움을 가지고 있으며 컴퓨터 프로그래밍 언어에 대한 교수학습 방법 및 평가에 대해 어려워하고 있다[5]. 따라서 본 연구에서는 eXtreme Programming (XP) 개발절차 과정 중 짝 프로그래밍(Pair programming) 방법을 이용하여 예비 초등 교사인 학생들을 대상으로 소프트웨어 교육을 실시한 후 소프트웨어 교육에 대한 학습동기 및 학업 성취도에 어떠한 영향을 미치는지 알아보고자 한다.

    본 논문의 구성은 다음과 같다. 제 2장에서는 짝 프로그램, 짝 프로그램 관련 국내외 연구에 대해서 살펴본다. 제 3장에서는 연구 방법, 연구 대상, 연구 설계 및 절차와 연구가설에 대하여 기술한다. 제 4장에서는 3장에서 제시한 연구가설을 통계적으로 검증한 내용을 기술하고 제 5장에서는 결론을 기술한다.

    2. 관련 연구

       2.1 짝 프로그래밍

    짝 프로그래밍(Pair programming)은 두 명의 동료 프로그램 개발자가 나란히 옆에 앉아, 하나의 컴퓨터를 공유하여 문제의 이해 및 분석, 알고리즘개발, 프로그램 설계, 프로그래밍, 디버깅 등 프로그램 개발 과정을 협력적 분업의 형태로 진행하여 하나의 프로그램을 완성해 가는 방법을 말하며, eXtreme Programming(XP) 소프트웨어 개발 절차과정 중의 한 가지이다[3,5]. 두 명의 동료 프로그래머 중 한 명은 운전자(Driver)의 역할을 수행하며 키보드와 마우스를 사용하여 프로그래밍을 하며, 또 다른 한 명은 안내자(Navigator)의 역할을 하며, 문제를 해결하기 위한 알고리즘을 탐색하거나 구문적 오류(Syntactic error)와 논리적 오류(Logical error)를 찾아 운전자의 작업을 보완하여 준다. 운전자는 안내자가 제안한 내용에 대해 상호 의사교환을 할 수 있으며 안내자는 프로그램 개발 과정을 보다 더 객관적인 시각으로 바라보게 된다. 짝 프로그래밍에서 역할에 따른 작업을 간략하게 정리하면 <표 1>과 같다[3,5].

    [표 1.] 짝 프로그래밍

    label

    짝 프로그래밍

       2.2 스크래치

    스크래치는 새로운 프로그래밍 학습 환경을 제공하는 교육용 프로그래밍 언어로 다음과 같은 특성을 지닌다.

    첫째, 누구나 쉽게 사용할 수 있다. 스크래치는 코드를 입력하는 방식이 아니라 그래픽으로 구성된 프로그래밍 코드 블록들을 조립하는 과정을 통해 이루어진다. 둘째, 학습자들은 자신에게 유의미한 프로젝트를 직접 생성하는 과정에서 최상의 학습을 경험하고 몰입하게 된다. 셋째, 상호작용 활동이 가능하다. scratch.mit.edu 사이트를 통해 학습자들은 자신의 프로젝트를 해당 웹사이트를 통해 공유하고 다른 사용자들의 비평과 의견을 수용하여 발전시킬 수 있다.

    스크래치의 이러한 특성은 어린 학습자들을 소비자가 아닌 창의적 생산자로서 컴퓨팅 영역으로의 진로와 관심을 유도할 수 있을 뿐만 아니라 창의성 및 컴퓨팅 사고력의 발달을 촉진시킬 수 있다.

       2.3 관련 연구

    컴퓨터 과학 교육과정 중 C프로그래밍 과목의 학생들을 대상으로 짝 프로그래밍을 적용한 결과 프로그래밍 능력, 문제해결 의지, 협력학습 면에서 유의미한 차이를 보였다[6]. 짝 프로그래밍의 비용에 대해 조사한 결과 프로그램 설계, 코딩 실수 감소, 프로그래밍 능력 증가, 팀 구성원간의 대화 횟수 증가 등 만족도에 있어서도 유의미한 차이를 보였다[7]. 프로그래밍 수업에 짝 프로그래밍 방법을 적용한 결과 혼자 프로그래밍을 교육받은 집단보다 짝 프로그래밍 방법을 적용한 집단이 새로운 언어를 빠르게 습득하였다[8]. 자신의 프로그래밍 실력을 짝과 비교했을 때 자신의 수준을 어떻게 평가하는지에 따라 학생들을 분류한 후, 각 그룹이 역할 교대에 대해 어떻게 생각하는지를 평가하였다[9]. C 프로그래밍 수업에 짝 프로그래밍을 적용한 결과 성취도 면에서는 긍정적인 효과가 있었지만 일반적인 수업 방식보다 비효율적인 것으로 나타났다. 이는 짝을 구성할 때 친한 학생들을 짝으로 구성하였기 때문에 학생들이 잡담하는 시간이 많아졌기 때문인 것으로 분석되었다[10]. 고등학생을 대상으로 C 언어, 비주얼 베이직 수업 시간에 짝 프로그래밍을 적용한 결과 문제해결력, 학업성취도에서 통계적으로 유의미한 결과를 보이고 있다[11,12]. 자바를 이용한 프로그래밍 입문 수업에서 짝 프로그래밍을 적용한 효과를 수용성 측면, 학습 성과와 만족도 측면에서 다양한 효과가 있음을 보였다[13,14].

    관련 연구들은 일반대학교 대학생 또는 고등학생 대상으로 C, 비주얼 베이직, 자바 등을 이용하여 코딩 교육을 실시하거나 교육적 효과보다는 소프트웨어 개발 방법론적 입장에서 프로그래밍 생산 능력에 중점을 두었다. 본 연구에서는 교육대학교 학생 대상으로 교육용 프로그래밍 언어인 스크래치와 짝 프로그래밍 방법을 이용하여 소프트웨어 교육을 실시하고자 한다.

    3. 연구 방법

       3.1 연구 대상 및 측정도구

    교육대학교에 재학 중인 1학년 학생들 중 A학과 학생 27명과 B학과 학생 29명을 선택하여 한학기 동안 실험을 진행하였다. 본 실험에서 실험 처치한 교수학습 방법이 학습동기에 어떠한 효과가 있는지 검사하기 위하여 [15]의 측정도구와 [1,16]에서 만든 측정도구를 참고하여 본 실험 환경에 맞게 15문항 5점 Likert 척도로 구성하였다. 본 실험에 참여한 학생들은 프로그래밍이나 코딩 경험뿐만 아니라 관련 지식이 풍부하지 못한 학생들이기 때문에 SNS, 스마트 폰 관련 용어들을 사용하여 4지선다 10문항으로 학업성취도 사전 측정도구로 만들었다. 정보처리 관련 자격증 문제들 중 본 실험에서 수업한 내용과 관련된 문제들을 본 실험에서 사용한 교육용 프로그래밍 언어인 스크래치 환경에 맞게 수정 보완하여 4지선다 15문항으로 학업성취도 사후 측정도구는 만들었다.

       3.2 연구 설계 및 절차

    교육대학교 1학년들 중 A 학과를 통제집단, B학과를 실험집단으로 무선방식으로 배정한 다음 학습동기, 학업성취도에 대한 사전검사를 실시하였다. 짝 프로그래밍을 도입한 수업을 듣는 실험집단과 전통적인 강의 방식의 수업을 듣는 통제집단 대상으로 교육용 프로그래밍 언어인 스크래치를 사용하여 12주 12차시에 걸쳐 실험을 실시한 다음 실험결과를 측정하기 위하여 사후 검사를 실시하였다<표 2>.

    짝 프로그래밍 방법을 이용하여 프로그래밍 수업을 실시하기 전 운전자와 안내자간 해결하고자 하는 문제에 대한 이해, 해결책 공유가 중요하다. 그래서 본 실험에서는 짝 프로그래밍을 실시하기전 운전자와 안내자간 해결하고자 하는 문제를 문제 구성 요소(스프라이트)간, 구성 요소(스프라이트)별 흐름도(순서도)를 작성하면서 문제의 이해와 프로그래밍 방향을 공유한 다음 짝 프로그래밍을 실시하였다. 안내자 역할과 운전자 역할을 차시마다 변경하면서 짝 프로그래밍을 실시하였으며 12주, 12차시 동안 수업한 내용은 <표 3>과 같다. 12주, 12차시 동안 수업을 진행한 다음 후 학습동기, 학업성취도 검사 결과를 측정하였다.

    본 연구에서 통계적으로 검증할 연구가설은 다음과 같다.

    연구가설 1 : 실험집단과 통제집단 간에는 학습동기에 있어서 통계적으로 유의미한 차이가 있을 것이다.

    연구가설 2 : 실험집단과 통제집단 간에는 학업 성취도에 있어서 통계적으로 유의미한 차이가 있을 것이다.

    4. 연구 결과

       4.1 학습동기 검사 결과

    실험을 진행하기 전 실시한 학습동기 측정 점수에 대한 독립표본 t-검증 결과는 <표 4>와 같다. 독립표본 t-검증 결과, 학습동기 점수에서 실험집 단 점수 32.31로 통제집단 점수 31.48보다 높은 평균점수를 보였으나 유의수준 5%에서 p 값이 .15로 통계적으로 유의하지 않음을 알 수 있다. 즉, 실험집단과 통제집단은 동질집단으로 판단할 수 있다. 짝 프로그래밍을 통한 수업을 진행한 집단과 일반적인 강의식 수업을 진행한 집단 간에는 학습동기면에서 통계적으로 유의미한 차이가 있을 것이다란 연구가설 1을 검증하기 위하여 실시한 학습동기 검사 결과에 대한 독립표본 t-검증 결과는 <표 5>와 같다. 집단별 학습동기에 대한 독립표본 t-검증 결과 통제집단의 점수는 50.48이었고, 실험집단의 점수는 66.17으로 실험집단의 점수가 높게 나타났다. 또한 독립표본 t-검증 결과 두 집단은 유의 수준 5%에서 p 값이 .000로 통계적으로 유의미한 차이가 있는 것으로 나타났다. 이 결과는 짝 프로그래밍을 통한 수업이 일반적인 강의식 수업보다 더 높은 학습동기를 유발함을 보여 준다.

    [표 4.] 학습동기(사전검사)

    label

    학습동기(사전검사)

    [표 5.] 학습동기(사후 검사)

    label

    학습동기(사후 검사)

       4.2 학업성취도 검사 결과

    실험을 진행하기 전 실시한 학업성취도 측정 점수에 대한 독립표본 t-검증 결과는 <표 6>과 같다. 독립표본 t-검증결과, 통제 집단 점수 6.63이, 실험 집단 점수 6.41보다 높은 평균점수를 보였으나 유의수준 5%에서 p 값이 .54로 통계적으로 유의하지 않음을 알 수 있다. 즉, 실험집단과 통제집단은 동질집단으로 판단할 수 있다.

    [표 6.] 학업성취도(사전검사)

    label

    학업성취도(사전검사)

    짝 프로그래밍을 사용해서 진행한 수업을 받은 집단과 일반적인 강의식 수업을 받은 집단 간에는 학업성취도 측면에서 통계적으로 유의한 차이가 있을 것이다란 연구가설 2를 검증하기 위하여 실시한 학업성취도 측정 결과에 대한 독립표본 t-검증 결과는 <표 7>과 같다. 집단별 학업성취도에 대한 독립표본 t-검증 결과 통제집단의 점수는 11.00이었고, 실험집단의 학업성취도 점수는 12.89로 실험집단의 점수가 높게 나타났다. 검증 결과 두 집단은 유의수준 5%에서 p 값이 .000로 두 집단 간의 유의미한 차이가 있는 것으로 나타났다. 이 결과는 짝 프로그래밍을 이용한 소프트웨어 교육 수업이 일반적인 강의식 수업에 비해 더 높은 학업성취도를 얻을 수 있음을 보여준다.

    [표 7.] 학업성취도(사후검사)

    label

    학업성취도(사후검사)

    5. 결 론

    세계의 많은 나라들은 21세기 핵심 산업 분야로 소프트웨어 분야를 선정하여 소프트웨어에 대한 투자 및 많은 관심을 가지고 있을 뿐 아니라, 코딩교육 관련 교육과정을 운영하고 있거나 운영할 예정이다. 그러나 예비 초등 교사 대부분은 소프트웨어 교육에 대해 어려움을 가지고 있으며 컴퓨터 프로그래밍 언어에 대한 교수학습 방법이 부족한 실정이다. 그래서 연구자는 예비 초등학교 교사들에게 프로그래밍을 효과적으로 교육할 수 있는 교수학습 방법을 제안하였다.

    본 연구에서 제안한 교수학습 방법은 컴퓨터 과학 분야 중 소프트웨어 교육 내용을 소프트웨어개발 방법 중 하나인 짝 프로그래밍을 이용하여 코딩 교육을 실시하는 것이며, 연구 목적은 짝 프로그래밍 방법을 이용하여 예비 초등교사로 구성된 집단에 프로그래밍 수업을 진행한 다음 학습동기와 학업성취도에 어떠한 영향을 미치는지를 알아보는 것이다. 본 논문에서 제안한 짝 프로그래밍을 통한 교수학습 프로그램이 예비 초등 교사들의 코딩, 프로그래밍 등 소프트웨어 교육에 대한 학습동기와 학업 성취도에 미친 영향은 다음과 같다.

    두 집단의 학습동기 사전 검사를 통해 측정된 측정 점수를 독립표본 t-검증한 결과 동질집단으로 판단된 실험집단과 통제집단간의 학습동기 사후 측정 결과, 실험집단은 66.17, 통제집단은 50.48로 실험집단이 높게 나타났다. 또한 사후 두 집단 간의 학습동기 점수에 대한 독립표본 t-검증 결과 유의수준 5%에서 p 값이 .000으로 통계적으로 유의한 차이가 있는 것으로 나타났다. 학업성취도 사전검사를 통해 동질집단인 실험집단과 통제집단간의 학업성취도 사후 검사 결과, 실험집단 점수는 12.89, 통제집단 점수는 11.00로 실험집단이 높게 나타났으며, 독립표본 t-검증 결과 유의수준 5%에서 p 값이 .000으로 통계적으로 유의미한 차이가 있는 것으로 나타났다.

    본 연구는 대학교 수업 시간에 진행된 관계로 짝 구성 방법으로 자유 방식을 채택할 수밖에 없었다. 그래서 짝을 구성하는 방법, 짝을 성별에 따라 구성하는 방법 등 짝 구성 방법에 따른 학습동기, 학업성취도에 미치는 영향에 대한 연구 또한 필요하다.

    본 연구의 결과는 교육대학교 1학년 두 개 학과 학생 56명을 대상으로 실험한 결과로 일반화하기에는 다소 무리가 있다.

참고문헌
  • 1. 2018 The effect of unplugged rolep-Play on learning motivation and academic achievement focusing how computers work [Journal of Knowledge Information Technology and Systems] Vol.13 P.221-229 google cross ref
  • 2. 2016 A recognition analysis of elementary teachers for software education of 2015 revised korea curriculum [Journal of The Korean Association of information Education] Vol.20 P.47-56 google cross ref
  • 3. 2018 The effect or pair programming on learning motivation and academic achievement in software education [Proceedings of conference on Knowledge Information Technology and Systems] Vol.12 P.218-221 google
  • 4. 2019 Revised National Curriculum google
  • 5. 2016 Effects of pair programming on creative problem-solving ability and efficiency [Journal of The Korean Association of information Education] Vol.20 P.21-28 google cross ref
  • 6. 2007 Experimenting with industry’s pair programming model in teaching and learning programming google
  • 7. 2000 The costs and benefits of pair programming eXtreme programming and flexible processes in software engineering-xp2000 google
  • 8. 2000 Experimenting with industry's pair programming model in the computer science classroom [Journal of Computer Science Education] Vol.10 google
  • 9. 2016 Exploring pair programming benefits for mis majors [Journal of Information Technology Education] Vol.15 P.223-239 google cross ref
  • 10. 2008 Evaluating the effectiveness of pair programming, Master’s Thesis, Graduate School of Konkuk University google
  • 11. 2018 A design and evaluation of learning motivation strategy based on pair programming: focused on the specialized high school [Journal of Knowledge Information Technology and Systems] Vol.13 P.687-694 google cross ref
  • 12. 2007 The effects of pair programming on achievement and motivated strategies in programming course [The journal of Korean Association of Computer Education] Vol.10 P.19-28 google
  • 13. 2018 Pair programming in programming lab: the effects, limits, and guidelines based on the student receptivity [Journal of Digital Contents Society] Vol.19 P.1663-1669 google cross ref
  • 14. 2017 Effects of pair programming in an introductory programming course for college students:academic performance and student satisfaction [Journal of The Korean Association of Information Education] Vol.21 P.537-545 google cross ref
  • 15. 2004 Development of physics inquiry learning materials and application in the play-based inquiry context google
  • 16. 2010 The effect of learning information representation through playing on learning motivation and academic achievement [Journal of The Korea Knowledge Information Technology Society] Vol.5 P.55-61 google
OAK XML 통계
이미지 / 테이블
  • [ 표 1. ]  짝 프로그래밍
    짝 프로그래밍
  • [ 표 2. ]  연구 설계
    연구 설계
  • [ 표 3. ]  내용
    내용
  • [ 표 4. ]  학습동기(사전검사)
    학습동기(사전검사)
  • [ 표 5. ]  학습동기(사후 검사)
    학습동기(사후 검사)
  • [ 표 6. ]  학업성취도(사전검사)
    학업성취도(사전검사)
  • [ 표 7. ]  학업성취도(사후검사)
    학업성취도(사후검사)
(우)06579 서울시 서초구 반포대로 201(반포동)
Tel. 02-537-6389 | Fax. 02-590-0571 | 문의 : oak2014@korea.kr
Copyright(c) National Library of Korea. All rights reserved.