{"title":"Ontology Reasoning for Explanatory Feedback Generation to Teach How Algorithms Work","authors":"A. Anikin, O. Sychev, M. Denisov","doi":"10.3233/faia210100","DOIUrl":null,"url":null,"abstract":"Developing algorithms using control structures and understanding their building blocks are essential skills in mastering programming. Ontologies and software reasoning is a promising method for developing intelligent tutoring systems in well-defined domains (like programming languages and algorithms); it can be used for many kinds of teaching tasks. In this work, we used a formal model consisting of production rules for Apache Jena reasoner as a basis for developing a constraint-based tutor for introductory programming domain. The tutor can determine fault reasons for any incorrect answer that a student can enter. The problem the student should solve is building an execution trace for the given algorithm. The problem is a closed-ended question that requires arranging given actions in the (unique) correct order; some actions can be used several times, while others can be omitted. Using formal reasoning to check domain constraints allowed us to provide explanatory feedback for all kinds of errors students can make.","PeriodicalId":234167,"journal":{"name":"International Conference on Novelties in Intelligent Digital Systems","volume":"32 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-09-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Conference on Novelties in Intelligent Digital Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.3233/faia210100","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1
Abstract
Developing algorithms using control structures and understanding their building blocks are essential skills in mastering programming. Ontologies and software reasoning is a promising method for developing intelligent tutoring systems in well-defined domains (like programming languages and algorithms); it can be used for many kinds of teaching tasks. In this work, we used a formal model consisting of production rules for Apache Jena reasoner as a basis for developing a constraint-based tutor for introductory programming domain. The tutor can determine fault reasons for any incorrect answer that a student can enter. The problem the student should solve is building an execution trace for the given algorithm. The problem is a closed-ended question that requires arranging given actions in the (unique) correct order; some actions can be used several times, while others can be omitted. Using formal reasoning to check domain constraints allowed us to provide explanatory feedback for all kinds of errors students can make.