A Constraint-based ITS for the Java Programming Language

Type of content
Theses / Dissertations
Publisher's DOI/URI
Thesis discipline
Computer Science
Degree name
Master of Science
Publisher
University of Canterbury. Computer Science and Software Engineering
Journal Title
Journal ISSN
Volume Title
Language
Date
2009
Authors
Holland, Jay
Abstract

Programming is one of the core skills required by Computer Science undergraduates in tertiary institutions worldwide, whether for study itself, or to be used as a tool to explore other relevant areas. Unfortunately, programming can be incredibly difficult; this is for several reasons, including the youth, depth, and variety of the field, as well as the youth of the technology that frames it. It can be especially problematic for computing neophytes, with some students repeating programming courses not due to academic laziness, but due to an inability to grasp the core concepts. The research outlined by this thesis focuses on our proposed solution to this problem, a constraint-based intelligent tutoring system for teaching the Java programming language, named J-LATTE.

J-LATTE (Java Language Acquisition Tile Tutoring Environment) is designed to solve this problem by providing a problem-solving environment for students to work through programming problems. This environment is unique in that it partitions interaction into a concept mode and a coding mode. Concept mode allows the student to form solutions using high-level Java concepts (in the form of tiles), and coding mode allows the student to enter Java code into these tiles to form a complete Java program. The student can, at any time, ask for feedback on a solution or partial solution that they have formed.

A pilot study and two full evaluations were carried out to test the effectiveness of the system. The pilot study was run with an assignment given to a postgraduate Computer Science course, and because of the advanced knowledge level of the students, it was not designed to test teaching effectiveness, but instead was useful in determining usability issues and identifying any software errors.

The full evaluations of the system were designed to give insight into the teaching effectiveness of J-LATTE, by comparing the results of using the system against a simulated classroom situation. Unfortunately, the participant base was small, for several reasons that are explained in the thesis. However, the results prove interesting otherwise and for the most part are positive towards the effectiveness of J-LATTE. The participants’ knowledge did improve while interacting with the system, and the subjective data collected shows that students like the interaction style and value the feedback obtained.

Description
Citation
Keywords
Intelligent Tutoring System, Teaching programming, teaching Java
Ngā upoko tukutuku/Māori subject headings
ANZSRC fields of research
Rights
Copyright Jay Holland