Abstract
In this paper, we review tutoring approaches of computer-supported systems for learning programming. From the survey we have learned three lessons. First, various AI-supported tutoring approaches have been developed and most existing systems use a feedback-based tutoring approach for supporting students. Second, the AI techniques deployed to support feedback-based tutoring approaches are able to identify the student’s intention, i.e. the solution strategy implemented in the student solution. Third, most reviewed tutoring approaches only support individual learning. In order to fill this research gap, we propose an approach to pair learning which supports two students who solve a programming problem face-to-face.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Radosevic, D., Lovrencic, A., Orehovacki, T.: New Approaches and Tools in Teaching Programming. In: Central European Conference on Information and Intelligent Systems (2009)
Yudelson, M., Brusilovsky, P.: NavEx: Providing Navigation Support for Adaptive Browsing of Annotated Code Examples. In: The 12th International Conference on AI in Education, pp. 710–717. IOS Press (2005)
Gegg-Harrison, T.S.: Exploiting Program Schemata in a Prolog Tutoring System. Phd Thesis, Duke University, Durham, North Carolina 27708-0129 (1993)
Chang, K.E., Chiao, B.C., Chen, S.W., Hsiao, R.S.: A Programming Learning System for Beginners - A Completion Strategy Approach. Journal IEEE Transactions on Education 43(2), 211–220 (1997)
Gomes, A., Mendes, A.J.: SICAS: Interactive system for algorithm development and simulation. In: Computers and Education - Towards an Interconnected Society, pp. 159–166 (2001)
Esteves, M., Mendes, A.: A simulation tool to help learning of object oriented programming basics. In: FIE 34th Annual on Frontiers in Edu., vol. 2, pp. F4C7-12 (2004)
Mendes, A., Jordanova, N., Marcelino, M.: PENSEN - A visual programming environment to support initial programming learning. In: International Conference on Computer Systems and Technologies - CompSysTech 2005 (2005)
Brusilovsky, P., Spring, M.: Adaptive, Engaging, and Explanatory Visualization in a C Programming Course. In: World Conference on Educational Multimedia, Hypermedia and Telecommunications (ED-MEDIA), pp. 21–26 (2004)
Lane, H.C., Vanlehn, K.: Teaching the tacit knowledge of programming to novices with natural language tutoring. J. Computer Science Education 15, 183–201 (2005)
Kumar, A.N.: Explanation of step-by-step execution as feedback for problems on program analysis, and its generation in model-based problem-solving tutors. Journal Technology, Instruction, Cognition and Learning 4 (2006)
Anderson, J.R., Reiser, B.: The Lisp Tutor. Journal Byte 10, 159–175 (1985)
Sykes, E.R.: Qualitative Evaluation of the Java Intelligent Tutoring System. Journal of Systemics, Cyber (2006)
Suarez, M., Sison, R.C.: Automatic construction of a bug library for object-oriented novice java programmer errors. In: Woolf, B.P., Aïmeur, E., Nkambou, R., Lajoie, S. (eds.) ITS 2008. LNCS, vol. 5091, pp. 184–193. Springer, Heidelberg (2008)
Johnson, W.L.: Understanding and debugging novice programs. Journal Artificial Intelligence 42, 51–97 (1990)
Brusilovsky, P., Schwarz, E.W., Weber, G.: ELM-ART: An Intelligent Tutoring System on World Wide Web. In: Lesgold, A.M., Frasson, C., Gauthier, G. (eds.) ITS 1996. LNCS, vol. 1086, pp. 261–269. Springer, Heidelberg (1996)
Looi, C.-K.: Automatic Debugging of Prolog Programs in a Prolog Intelligent Tutoring System. Journal Instructional Science 20, 215–263 (1991)
Le, N.T., Menzel, W.: Using Weighted Constraints to Diagnose Errors in Logic Programming - The case of an ill-defined domain. J. of AI in Edu. 19, 381–400 (2009)
VizcaÃno, A.: A Simulated Student Can Improve Collaborative Learning. Journal AI in Education 15, 3–40 (2005)
Van Gorp, M.J., Grissom, S.: An Empirical Evaluation of Using Constructive Classroom Activities to Teach Introductory Programming. J. Computer Science Education 11(3), 247–260 (2001)
Nagappan, N., Williams, L., Ferzli, M., Wiebe, E., Yang, K., Miller, C., Balik, S.: Improving the CS1 experience with pair programming. In: The SIGCSE Technical Symposium on CS Education, pp. 359–362. ACM (2003)
Wills, C.E., Deremer, D., McCauley, R.A., Null, L.: Studying the use of peer learning in the introductory computer science curriculum. J. Computer Science Education 9(2), 71–88 (1999)
Strickroth, S., Olivier, H., Pinkwart, N.: Das GATE-System: Qualitätssteigerung durch Selbsttests für Studenten bei der Onlineabgabe von Übungsaufgaben? In: GI LNI, vol. P-188, pp. 115–126. Köllen Verlag (2010)
Deek, F.P., Ho, K.-W., Ramadhan, H.: A critical analysis and evaluation of web-based environments for program development. J. Internet and Higher Education 3, 223–269 (2000)
Hoppe, H.U.: The use of multiple student modeling to parameterize group learning. In: Int. Conference on AIED (1995)
Muehlenbrock, M.: Formation of Learning Groups by using Learner Profiles and Context Information. In: Int. Conference on AI in Education, pp. 507–514 (2005)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer International Publishing Switzerland
About this paper
Cite this paper
Le, NT., Strickroth, S., Gross, S., Pinkwart, N. (2013). A Review of AI-Supported Tutoring Approaches for Learning Programming. In: Nguyen, N., van Do, T., le Thi, H. (eds) Advanced Computational Methods for Knowledge Engineering. Studies in Computational Intelligence, vol 479. Springer, Heidelberg. https://doi.org/10.1007/978-3-319-00293-4_20
Download citation
DOI: https://doi.org/10.1007/978-3-319-00293-4_20
Publisher Name: Springer, Heidelberg
Print ISBN: 978-3-319-00292-7
Online ISBN: 978-3-319-00293-4
eBook Packages: EngineeringEngineering (R0)