Utilize este identificador para referenciar este registo:
http://hdl.handle.net/10071/37045| Autoria: | Serrano, Gonçalo Miguel Costa |
| Orientação: | Santos, André Leal |
| Data: | 5-Dez-2025 |
| Título próprio: | Questions about learners’ code focusing on semantic style |
| Referência bibliográfica: | Serrano, G. M. C. (2025). Questions about learners’ code focusing on semantic style [Dissertação de mestrado, Iscte - Instituto Universitário de Lisboa]. Repositório Iscte. http://hdl.handle.net/10071/37045 |
| Palavras-chave: | Code quality Questions about learner’s code Refactoring Programming education Qualidade de código Questões sobre codigo desenvolvido Educação de programação |
| Resumo: | Learning to program remains a central difficulty in computer science education. Although
novice programmers can often produce functionally correct code, their solutions frequently
expose misconceptions. Existing automated grading systems primarily assess correctness
and efficiency, offering limited or no support for reflection on code quality.
This dissertation presents an extension of the Jask library through a catalog of
Questions about Learners’ Code (QLC) focused on semantic style issues in Java. The
catalog defines templates for common problems such as redundant conditionals, unused
variables, unnecessary parameters, and duplications. Each template generates multiple-
choice questions by refactoring student code and producing distractors, enabling automated
question generation directly from submissions.
To evaluate the approach’s applicability, student submissions from an introductory
programming course were analyzed. Of the relevant cases, 11.5% contained methods with
identifiable quality issues. The two most common issues were the unnecessary comparison
to true or false and the indirect return of the if condition, each affecting nearly half of
the students.
The results demonstrate the feasibility of transforming code quality issues into struc-
tured questions and provide an overview of their frequency in novice programming. Al-
though the generated questions were not administered to students, the findings establish
a basis for their future integration into assessment systems and for further research on
supporting reflection in programming education. Aprender a programar continua a ser uma dificuldade central no ensino de informática. Embora programadores principiantes sejam capazes de criar código funcionalmente correto, as suas soluções expõem falta de conhecimento. Os sistemas automáticos de avaliação existentes avaliam principalmente a exatidão e a eficiência, oferecendo pouco ou nenhum suporte à reflexão sobre qualidade de código. Esta dissertação apresenta uma extensão da biblioteca Jask através de um catálogo de Questões sobre código desenvolvido (QLC) focadas em problemas de semântica em Java. O catálogo define modelos predefinidos para problemas comuns como condições redundantes, variáveis não utilizadas, parâmetros desnecessários, e duplicações. Cada modelo gera questões de escolha múltipla fazendo refactoring do código dos alunos e criando alternativas incorretas, permitindo a geração automática de questões diretamente de submissões. Para avaliar a aplicabilidade, foram analisadas submissões de alunos da unidade curricular de Introdução à Programação. Das submissões consideradas, 11,5% continham métodos com problemas de qualidade identificáveis. Os dois problemas mais comuns foram a comparação desnecessária a true ou false e o retorno indireto da condição do if, cada um afetando aproximadamente metade dos alunos. Os resultados demonstram a viabilidade de transformar problemas de qualidade de código em questões estruturadas e fornecem uma visão geral da sua frequência na programação de principiantes. Embora as questões geradas não tenham sido aplicadas a estudantes, os resultados estabelecem uma base para a sua futura integração em sistemas de avaliação e para investigações adicionais sobre o apoio à reflexão no ensino da programação. |
| Designação do Departamento: | Departamento de Ciências e Tecnologias da Informação |
| Designação do grau: | Mestrado em Engenharia Informática |
| Arbitragem científica: | yes |
| Acesso: | Acesso Aberto |
| Aparece nas coleções: | T&D-DM - Dissertações de mestrado |
Ficheiros deste registo:
| Ficheiro | Descrição | Tamanho | Formato | |
|---|---|---|---|---|
| Master_goncalo_costa_serrano.pdf | 734,96 kB | Adobe PDF | Ver/Abrir |
Todos os registos no repositório estão protegidos por leis de copyright, com todos os direitos reservados.












