Electronic Theses and Dissertations



Document Type


Degree Name

Doctor of Philosophy


Computer Science

Committee Chair

Vasile Rus

Committee Member

Scott Fleming

Committee Member

Deepak Venugopal

Committee Member

Amy Cook


Programming skills are a vital part of many disciplines but can be challenging to teach and learn. Thus, the programming courses are considered difficult and a major stumbling block. To overcome these challenges, students could benefit from extensive individual support such as tutoring, but there are simply not enough qualified tutors available to meet rising demands.A potential solution is the development of intelligent tutoring systems (ITSs), which offer individualized, one-on-one instruction. Such systems can offer the support to make programming instruction more effective, scalable and reduce existing teachers' workloads.This dissertation demonstrates how conversational ITSs and the Socratic method of teaching can improve a novice's understanding of programming concepts and, in particular, the scaffolding of code comprehension processes. Furthermore, this work provides a novel method to automatically author a Socratic dialogue-based ITS. Indeed, two major outcomes of this work are a Socratic dialogue-based ITS and an automated dialogue authoring tool, which generates full Socratic dialogue from Java source code.The key objectives of this dissertation were, first, to determine whether the Socratic method would be effective at eliciting learners to engage in self-explanations with the help of the Socratic Tutor ITS and, second, to assess the quality of Socratic Author's auto-generated tutorial dialogue. Thus, the work presented here sought to answer two main research questions: (1) can a Socratic ITS lead to improved code comprehension? and (2) to what extent can Socratic dialogue be generated automatically?In sum, this research helps establish a relationship between code comprehension and the use of the Socratic method in learning computer programming. Furthermore, the work introduces a novel approach for generating Socratic dialogue from source code with examples for the Java programming language. The auto-authoring tool could help teachers and ITS developers create tutorial dialogues automatically from Java code without requiring nondomain knowledge. To the best of our knowledge, no such auto-generation of tutorial dialogues from source code has been done before and thus constituting a premiere.


Data is provided by the student.

Library Comment

Dissertation or thesis originally submitted to ProQuest