Home > Published Issues > 2012 > Volume 3, No. 1, February 2012 >

iiOSProTrain: An Interactive Intelligent Online System for Programming Training

Tho T. Quan, Phung H. Nguyen, Thang H. Bui, Thuan D. Le, An N. Nguyen, Duc L.N Hoang, Vu H. Nguyen, Binh T. Nguyen
Hochiminh City University of Technology, Vietnam

Abstract— Programming is a crucial skill which is required to be mastered for students on all disciplines of the Computer Science field. For novice students, they always desire explanation and help for all errors encountered in their own solutions. With the recent advancement of Internet technologies, online tutoring systems are increasingly considered. Various systems and applications have been introduced for teaching programming. In this paper, we introduce a tutoring system known as iiOSProTrain (interactive intelligent Online System for Programming Training) for teaching students programming. In iiOSProTrain, we employ two popular formal methods, which are theorem proving and model checking, for verifying students’ works and giving them detailed feedback. The usage of formal methods renders our system the following advantages, as compared to similar systems. First, iiOSProTrain can give an absolute confirmation on the correctness of the submitted programs. More importantly, iiOSProTrain adopts the concept of structured error-flow to give students traceable feedbacks on their mistakes, thus allowing them to track and correct the logic errors in a flexible and convenient manner. Currently, iiOSProTrain is deployed at Faculty of Computer Science and Engineering, Ho Chi Minh University of Technology, Vietnam for teaching first year students on programming methodologies.

Index Terms— intelligent tutoring systems, programming training, formal methods, program verification, courterexamples, error-flows

Cite: Tho T. Quan, Phung H. Nguyen, Thang H. Bui, Thuan D. Le, An N. Nguyen, Duc L.N Hoang, Vu H. Nguyen, Binh T. Nguyen, "iiOSProTrain: An Interactive Intelligent Online System for Programming Training," Journal of Advances in Information Technology, Vol. 3, No. 1, pp. 10-20, February, 2012.doi:10.4304/jait.3.1.10-20