개념적 알고리즘에 기반 한 컴퓨터 알고리즘 교육의 방향

On the Direction of the Computer Algorithm Education Based on Conceptual Algorithms

  • 문교식 (대구교육대학교 컴퓨터교육과)
  • Moon, Gyo-Sik (Dept. of Computer Education, Daegu National University of Education)
  • 발행 : 2007.03.30

초록

최근 컴퓨터 교육에서 프로그래밍에 대한 관심이 높아지고 있다. 학습에서 논리력과 창의력의 요구가 늘어나고 있는 추세에 힘입어 컴퓨터 교육 분야에서도 프로그래밍 학습을 통한 논리력과 창의력을 함양하려는 다양한 시도가 이루어지고 있다. 프로그램은 알고리즘을 컴퓨터 언어로 구현한 것이므로 문제해결의 핵심은 논리적 해결 방법의 고안 즉, 알고리즘의 고안에 있다. 알고리즘의 중요성을 인식한다면 이제 알고리즘 교육에 대한 방향 정립을 위한 체계적 연구가 필요한 시점에 와 있다고 볼 수 있다. 지금까지 주로 정렬, 탐색과 같은 특정 문제를 중심으로 한 문제 종속적이고 개별적인 알고리즘 학습을 강조해 왔다. 본 논문에서는 문제 독립적, 집단적 성질을 고려하는 문제 해결의 개념적 유형이라는 관점에서 개념적 알고리즘(conceptual algorithm)을 정의한다. 개념적 알고리즘의 유형적 특성을 바탕으로 개별적, 문제 종속적인 기존의 알고리즘 교육과 구분되는 체계적, 문제 독립적, 알고리즘적인 문제 해결력을 지향하는 알고리즘 교육의 새로운 방향을 제안한다.

Computer programming in computer education draws much attention recently. Encouraged by the increased tendency of acquiring logical ability and creativity through learning, various attempts have been made to develop them through learning computer programming in the area of computer education as well. The fact that a computer program is the representation of a computer algorithm expressed in a computer language makes us realize that the devise of a logical method for a solution - i.e., the design of an algorithm - is the key to the solution of a problem. Recognizing the importance of computer algorithm would lead us to such a point that systematic investigations for directional establishment for algorithm education are necessary. We observe that researches on teaching computer algorithm have concentrated mostly on specific problems such as sorting and searching, which can be characterized as problem-dependent and individual. In this paper, the idea of conceptual algorithm is stated from the standpoint of conceptual types of problem-solving methods which are considered as problem-independent and collective. A novice approach to algorithm education based on the characteristics of types of conceptual algorithms is proposed for the purpose of developing systematic, problem-independent, algorithmic problem-solving capabilities of learners, which is widely different from the current methods of individual and problem-dependent algorithm education.

키워드