자동평가시스템을 활용한 프로그래밍 교육에서 블록형 언어와 텍스트형 언어 간 자기효능감의 차이 Differences in self-efficacy between block and textual language in programming education using online judge원문보기
온라인 저지는 학습자가 제출한 소스의 컴파일과 실행, 문제 해결 여부에 대한 즉각적인 교정적 피드백을 제공하며 평가의 정확성과 신뢰성을 확보할 수 있지만, 대부분의 온라인 저지가 텍스트형 언어 만을 제공하고 있어 학습자의 수준에 따른 언어 선택이 어렵다. 본 연구에서는 온라인 저지용 블록형 언어를 개발하여 고등학교 수업에 적용하고, 블록형 언어 집단과 텍스트형 언어 집단 간 자기효능감의 차이를 확인하였다. 검정 결과, 블록형 언어 집단은 텍스트형 언어 집단 보다 '혐오경험극복 능력기대'가 더 높았고, 텍스트형 언어 집단은 사전-사후 검사에서 '활동시작 능력기대'와 '활동지속 능력기대'가 유의하게 감소된 것을 확인하였다. 이는 블록형 언어의 경우 차후 프로그래밍 활동에 대한 효능감에 효과가 있으며, 텍스트형 언어는 활동의 시작 단계와 진행 단계에서 학생의 자기효능감이 저하되지 않도록 하는 교수·학습 및 평가 방법을 강구해야 한다는 점을 함의한다. 본 연구는 고교 프로그래밍 수업에서 블록형 언어와 텍스트형 언어의 적용과 관련하여 자기 효능감 증진을 위한 교수·학습 설계의 기초를 제공한다는 점에서 의미가 있다.
온라인 저지는 학습자가 제출한 소스의 컴파일과 실행, 문제 해결 여부에 대한 즉각적인 교정적 피드백을 제공하며 평가의 정확성과 신뢰성을 확보할 수 있지만, 대부분의 온라인 저지가 텍스트형 언어 만을 제공하고 있어 학습자의 수준에 따른 언어 선택이 어렵다. 본 연구에서는 온라인 저지용 블록형 언어를 개발하여 고등학교 수업에 적용하고, 블록형 언어 집단과 텍스트형 언어 집단 간 자기효능감의 차이를 확인하였다. 검정 결과, 블록형 언어 집단은 텍스트형 언어 집단 보다 '혐오경험극복 능력기대'가 더 높았고, 텍스트형 언어 집단은 사전-사후 검사에서 '활동시작 능력기대'와 '활동지속 능력기대'가 유의하게 감소된 것을 확인하였다. 이는 블록형 언어의 경우 차후 프로그래밍 활동에 대한 효능감에 효과가 있으며, 텍스트형 언어는 활동의 시작 단계와 진행 단계에서 학생의 자기효능감이 저하되지 않도록 하는 교수·학습 및 평가 방법을 강구해야 한다는 점을 함의한다. 본 연구는 고교 프로그래밍 수업에서 블록형 언어와 텍스트형 언어의 적용과 관련하여 자기 효능감 증진을 위한 교수·학습 설계의 기초를 제공한다는 점에서 의미가 있다.
Online judge provides compilation, execution, and immediate feedback on the source submitted by the learner, and ensures the accuracy and reliability of the evaluation, but it's difficult to select the language according to the level of the learner because most of them provide only textual language....
Online judge provides compilation, execution, and immediate feedback on the source submitted by the learner, and ensures the accuracy and reliability of the evaluation, but it's difficult to select the language according to the level of the learner because most of them provide only textual language. In this study, a block language for online judge was developed and applied to high school classes, and the difference in self-efficacy between the block language and the textual language group was confirmed. It was found that Block language group have more ability expectation to overcome disgust experience than textual language group and Textual language group have significant decrease in ability expectation to start activity and to continue activity. It implies that Block language has an effect on self-efficacy for afterward programming activities, and methods of teaching, learning and evaluation should be devised in the case of textual language so that student's self-efficacy does not deteriorate at the initial and ongoing stage of activity. The results of this study are meaningful in that it provide various implications of methods for enhancing self-efficacy in high school class of programming.
Online judge provides compilation, execution, and immediate feedback on the source submitted by the learner, and ensures the accuracy and reliability of the evaluation, but it's difficult to select the language according to the level of the learner because most of them provide only textual language. In this study, a block language for online judge was developed and applied to high school classes, and the difference in self-efficacy between the block language and the textual language group was confirmed. It was found that Block language group have more ability expectation to overcome disgust experience than textual language group and Textual language group have significant decrease in ability expectation to start activity and to continue activity. It implies that Block language has an effect on self-efficacy for afterward programming activities, and methods of teaching, learning and evaluation should be devised in the case of textual language so that student's self-efficacy does not deteriorate at the initial and ongoing stage of activity. The results of this study are meaningful in that it provide various implications of methods for enhancing self-efficacy in high school class of programming.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 연구 결과를 토대로 프로그래밍의 자기 효능감 증진을 위한 ‘블록형 언어와 텍스트형 언어의 블랜디드 수업’을 제안하고자 한다.
본 연구는 고교 프로그래밍수업에서 블록형 언어와 텍스트형 언어의 적용과 관련하여 자기 효능감의 증진을 위한 교수·학습 설계의 기초를 제시한다는 점에서 의미가 있다.
본 연구에서는 고교 단계에서 블록형 언어와 텍스트형 언어를 모두 지원하는 온라인 저지를 활용하여 프로그래밍 교육을 실시하고, 블록형 언어를 사용하는 집단과 텍스트형 언어를 사용하는 집단 간 자기 효능감의 차이를 확인하기 위해 일반고 학생 132명을 대상으로 ‘비동질통제집단 사전 사후 측정 실험’을 수행하였다.
본 연구에서는 온라인 저지를 활용한 고교 단계의 프로그래밍 수업에서 블록형 언어와 텍스트형 언어를 적용하고, 집단 간 자기 효능감의 차이를 확인하기 위해 다음과 같은 연구 문제와 연구 가설을 설정하였다.
연구문제 : 온라인 저지를 활용한 프로그래밍 수업에서 블록형 언어와 텍스트형 언어가 학습자의 자기 효능감에 차이를 가져오는가?
이에 본 연구에서는 온라인 저지에 적용 가능한 블록형 언어를 개발하여 텍스트형 언어와 함께 고교 단계의 프로그래밍 수업에 적용하고, 자기 효능감의 차이를 확인해 봄으로써 고교 단계의 프로그래밍 교육에서 블록형 언어와 텍스트형 언어의 적용과 관련하여 자기 효능감 증진을 위한 교수·학습 설계의 기초를 제공하고자 한다.
가설 설정
H1 : 온라인 저지를 활용한 프로그래밍 수업에서 블록형 언어를 사용한 집단과 텍스트형 언어를 사용한 집단 간 자기 효능감에서 차이를 보일 것이다.
제안 방법
본 연구에서 개발한 블록형 언어는 의 사이트에 탑재하였으며, 고등학교 정보 과목의 ‘문제 해결과 프로그래밍’ 영역에 있는 의 성취 기준에 따라[6] 10차 시 분량의 교수‧학습 자료와 교수‧학습 과정안을 개발하여 수업에 활용하였다.
본 연구에서는 블록형 언어를 개발하여 기존 텍스트형 언어만 제공했던 온라인 저지에 [그림 3]과 같이 탑재하였으며, 학습자가 블록형 언어와 C, C++, Python2, Python3의 텍스트형 언어를 [그림 4]와 같이 자유롭게 선택하여 문제를 해결할 수 있도록 구현하였다. [그림 3]의 동그라미 부분을 클릭하면 [그림 4]와 같이 블록형 언어와 텍스트형 언어를 선택할 수 있다.
블록형 언어를 사용하는 집단(X1, 이하 블록형 집단)과 텍스트형 언어를 사용하는 집단(X2, 이하 텍스트형 집단)을 구분하고, 블록형 언어와 텍스트형 언어를 지원하는 온라인 저지를 활용하여 동일한 문제를 해결하는 프로그래밍 수업을 실시하였다. 블록형 언어는 본 연구에서 개발한 것이며, 텍스트형 언어는 C언어를 선택하였다.
위의 가설을 검정하기 위해 <표 10>의 ‘비동질 통제집단 사전 사후측정설계’ 실험을 실시하였다. 블록형 언어를 사용하는 집단(X1, 이하 블록형 집단)과 텍스트형 언어를 사용하는 집단(X2, 이하 텍스트형 집단)을 구분하고, 블록형 언어와 텍스트형 언어를 지원하는 온라인 저지를 활용하여 동일한 문제를 해결하는 프로그래밍 수업을 실시하였다. 블록형 언어는 본 연구에서 개발한 것이며, 텍스트형 언어는 C언어를 선택하였다.
블록형 언어의 개발은 구글의 Blockly를 활용하였으며, 온라인 저지는 내부적으로 표준 입‧출력 기반으로 작동하기 때문에 [그림 5]와 같은 표준 입력, 표준 출력, 개행 문자, 정수‧실수‧문자열 간 타입 변환 등의 기능을 수행하는 명령문을 추가하였다. 스크래치와 엔트리에는 이러한 기능의 명령문을 제공하지 않는다.
원본 검사지는 24문항 4점 척도이나 연구 참여 학생들에게 익숙한 5점 척도(전혀 아니다 1, 매우 그렇다 5)로 평정하였고, 각 문항의 ‘공부’, 또는 ‘학습’이라는 단어를‘프로그래밍 공부’, ‘프로그래밍 학습’으로 수정하였으며, 다소 어색하다고 판단되는 문항 5개는 제외하였다.
채점 데이터 세트는 [그림 2]와 같이 입력데이터와 정답 데이터의 쌍으로 구성되며, 그 쌍은 10~20개가 일반적이다. 채점 데이터 세트 내에서 입력데이터가 정답 데이터와 쌍을 이루는 종적 구성을 통해 알고리즘의 정확성을 평가하며, 입력 데이터의 범위를 점진적으로 증가시키는 횡적 구성으로 알고리즘의 시간효율성과 공간 효율성을 평가한다. 이러한 평가 요소는[그림1]에서 ②핵심요구사항, ③제한시간, 제한메모리양,④입력데이터의 범위와 밀접하게 관련되어 있다[17].
대상 데이터
본 연구에서 개발한 블록형 언어는 <표 8>의 사이트에 탑재하였으며, 고등학교 정보 과목의 ‘문제 해결과 프로그래밍’ 영역에 있는 <표 9>의 성취 기준에 따라[6] 10차 시 분량의 교수‧학습 자료와 교수‧학습 과정안을 개발하여 수업에 활용하였다. 연구에 사용된 의 온라인 저지에서 지원하는 언어는 총 5개로 C, C++, Python2, Python3, 블록 언어이다.
통계 분석에는 당초 연구 참여 대상자 132명(블록형 집단 70명, 텍스트형 집단 62명) 중에서 연구 참여에 동의하지 않거나 사전, 또는 사후 검사에 참여하지 않은 학생 41명을 제외한 91명(블록형 집단은 44명, 텍스트형 집단 47명)의 자료가 연구 결과에 최종 반영되었다.
데이터처리
블록형 집단과 텍스트형 집단의 동질성을 확인하기 위해 O0과 O2에 대한 독립표본 T-검정을 실시하였으며, 자기 효능감의 차이를 확인하기 위해 O1과 O3에 대한 독립표본 T-검정, O0과 O1, O2과 O3에 대한 대응표본 T-검정을 실시하였다. 신뢰구간은 95%이며, 사전 검사와 사후 검사에서 자기 효능감의 측정은 동일한 검사지를 사용하였다.
이론/모형
자기 효능감을 측정하기 위해 최연희(2001)의 연구에서 활용한 검사지를 사용하였다[22]. 해당 검사지는Sherer와 Maddux(1982)의 척도[23]를 참고로 정탁희(1987)가 재구성한 것인데[24], <표 12>, <표 13>과 같이 활동시작 능력기대, 활동지속 능력기대, 활동수행 능력기대, 혐오경험극복 능력기대 등의 하위 척도로 구성되며, 활동 중심의 교육 상황이나 실험‧실습 중심의 교과수업에 대한 연구에 적절하다고 판단하였다.
성능/효과
본 연구에서는 고교 단계에서 블록형 언어와 텍스트형 언어를 모두 지원하는 온라인 저지를 활용하여 프로그래밍 교육을 실시하고, 블록형 언어를 사용하는 집단과 텍스트형 언어를 사용하는 집단 간 자기 효능감의 차이를 확인하기 위해 일반고 학생 132명을 대상으로 ‘비동질통제집단 사전 사후 측정 실험’을 수행하였다. 검정 결과, 사후 검사의 독립 표본 t검정에서 블록형 집단은 텍스트형 집단 보다 혐오경험극복 능력기대가 유의하게 높은 것으로 나타났으며, 사전-사후 검사의 대응 표본 t검정에서 텍스트형 집단은 활동시작 능력기대와 활동지속능력기대가 유의하게 감소되었음이 확인되었다. 이는 블록형 언어의 경우 차후 프로그래밍 활동에 대한 자기 효능감에 효과가 있으며, 텍스트형 언어는 프로그래밍 활동의 시작 단계와 진행 단계에서 교사가 학생의 자기 효능감이 저하되지 않도록 다양한 교수·학습 및 평가 방법을 강구해야 함을 함의한다.
그러나, 에서 자기 효능감의 하위 척도별 평균의 차이를 확인한 결과, 블록형 집단의 협오경험극복 능력기대가 텍스트형 집단 보다 유의하게 더 높은 것이 확인되었다.
장원영, 김성식(2014)은 온라인 저지의 프로그래밍 학습 효과를 확인하기 위해 실험 집단(18명)에 자체 개발한 클라이언트-서버 방식의 온라인 저지를 적용하였으며, 통제 집단(21명)에는 프로그래밍 코드를 제시하면 학생은 코드를 보고 그대로 실습해 보는 전통적인 교수‧학습방법을 적용하였다. 사전 검사에서 두 집단의 동질성을 확인하였으며, 사후 검사에서 프로그래밍 성취도의 평균점수가 실험 집단이 통제 집단 보다 유의하게 높은 것을 확인하였다. 이러한 분석 결과를 토대로 온라인 저지를 활용한 교수·학습방법이 전통적인 교수·학습방법 보다 프로그래밍 학습에 더 효과적임을 보고하였으며[17], 보고 당시의 온라인 저지는 C, C++ 언어만 지원하였다.
사전, 사후 검사에서 동일한 문항을 사용하였으며, 원본검사지의 신뢰도는 Cronbach’s α계수가 .87 이고, 본 검사의 신뢰도는 Cronbach’s α계수가 사전, 사후 검사 각각 .917, .945으로 양호한 것으로 나타났다.
텍스트형 집단은 에서 t값은 2.403, 자유도 46에서 양쪽 검정의 유의확률이 .02으로 사후 검사에서 자기효능감이 유의하게 낮아졌음이 확인되었다.
후속연구
즉, 텍스트형 언어를 적용하는 고교 단계에서 블록형 언어로 프로그래밍 문제를 해결한 후 텍스트형 언어로 동일 문제를 다시 해결하는 과정에서 문법을 자연스럽게 익히도록 하는 수업 방식을 고려해 볼 수 있다. 아울러, 중학교 단계에서 학습한 블록형 언어에서 고교 단계에서 새롭게 배우는 텍스트형 언어로의 전이를 유도하는 새로운 교수·학습 모델의 개발 및 적용에 관한 연구도 학교 현장에 의미 있는 시사점을 제공할 것이다.
장원영.김성식 (2014). 알고리즘 자동평가 시스템의 개발 및 적용 : 프로그래밍 학습 효과 분석. 한국컴퓨터교육학회 논문지, 17(4), 26-34.
Wasik, S., Badura, J., Laskowski, A., & Sternal, T. (2018). A Survey on Online Judge Systems and Their Applications, ACM Computing Surveys, 51(1), 3:1-3:34.
임형석 (2007). ACM-ICPC 문제의 출제 및 채점 과정. 정보과학회지, 25(7), 52-55.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.