Enhancing textual explanations for Java methods with variable role knowledge

During their early stages of learning programming, students will naturally face various obstacles in their journey to understand the various programming concepts. Although the teacher is responsible for helping with these events, students still have difficulty understanding the basic concepts of pro...

ver descrição completa

Detalhes bibliográficos
Autor principal: Silva, Ricardo Cardoso da (author)
Formato: masterThesis
Idioma:eng
Publicado em: 2021
Assuntos:
Texto completo:http://hdl.handle.net/10071/22092
País:Portugal
Oai:oai:repositorio.iscte-iul.pt:10071/22092
Descrição
Resumo:During their early stages of learning programming, students will naturally face various obstacles in their journey to understand the various programming concepts. Although the teacher is responsible for helping with these events, students still have difficulty understanding the basic concepts of programming and a low understanding of these can jeopardize students' future projects. To improve this learning experience, this dissertation presents a prototype that can translate basic methods into a textual explanation, which is also enriched with the knowledge of variable roles. First, based on a previous experience, two studies were made, the first analyzes the metadiscourse of how code is explained and the second focuses on how each variable role influences an explanation, these serve as the basis for the implementation structure. For the evaluation, we made a questionnaire that contains translations for different basic methods and sent it to several experienced teachers to evaluate, from one to five in functionality, completeness, and readability. The results show that half of the translations received good results, with most votes being four or five. However, in specific methods, the results show that it had low performance and so, the prototype was adapted to perform better in these situations. The results show that knowledge of variable roles can be used to improve textual components, and these can be useful to improve the initial learning experience, at least from a teacher's perspective.