DSpace/Manakin Repository

Evaluating python repetition structures with novices: an eye tracking study.

Mostrar registro simples

dc.contributor.advisor1 GHEYI, Rohit
dc.contributor.advisor1ID GHEYI, R. pt_BR
dc.contributor.advisor1Lattes http://lattes.cnpq.br/2931270888717344 pt_BR
dc.contributor.referee1 RIBEIRO , Márcio de Medeiros
dc.contributor.referee2 MACHADO, Ivan do Carmo
dc.description.resumo Ler e compreender o código são atividades cruciais durante o processo de evolução e manutenção de software. Porém, existem vários fatores que podem afetar esse entendimento, como a forma como o código está estruturado. Iteração, Recursão e Compreensão de Lista (LC) são algumas dessas técnicas de estruturação. Entretanto, seu impacto no desempenho dos desenvolvedores tem sido pouco investigado sob a perspectiva do esforço visual com rastreamento ocular, inclusive no contexto de novatos. Portanto, este trabalho tem como objetivo realizar um estudo com rastreamento ocular para investigar o impacto dessas difer entes estruturas na compreensão de código por novatos. Portanto, foi realizado um estudo inicial controlado para resolver seis tarefas, utilizando o desenho do Quadrado Latino com 32 novatos em Python, medindo o tempo, o número de tentativas para resolver a tarefa e o esforço visual através da duração da fixação, contagem de fixação e regressões. Foi utilizada uma comparação com tarefas que possuem as seguintes estruturas: Recursão, estrutura de repetição e LC. Na Área de Interesse (AOI), em relação às métricas analisadas, foram obser vados aumentos nas versões while, Recursão e LC em relação à versão for. No número de regressões, o aumento chegou a 100% e 114,29% com LC e while, respectivamente, indicando a necessidade de retornar mais vezes no código. O aumento no tempo chegou a 95% com while. Através da análise dos padrões de leitura, na Recursão, percebeu-se maior foco de atenção no caso base e na etapa recursiva. A necessidade de uma condição de parada e contador explícito é uma hipótese para o pior desempenho com while. Houve concordâncias e discrepâncias entre os participantes entre desempenho e percepção de di ficuldade dependendo da tarefa. Em geral, a versão for exigiu menos tempo, tentativas e esforço visual, indicando melhor compreensão de algumas tarefas. Este estudo contribui principalmente para aumentar a conscientização entre educadores sobre o impacto da Re cursão, Iteração e LC na compreensão do código para iniciantes em Python. pt_BR
dc.publisher.country Brasil pt_BR
dc.publisher.department Centro de Engenharia Elétrica e Informática - CEEI pt_BR
dc.publisher.program PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO pt_BR
dc.publisher.initials UFCG pt_BR
dc.subject.cnpq Ciência da Computação. pt_BR
dc.title Evaluating python repetition structures with novices: an eye tracking study. pt_BR
dc.date.issued 2024-03-08
dc.description.abstract Reading and understanding code are crucial activities during the software evolution and maintenance process. However, there are several factors that can affect this understanding, such as the way the code is structured. Iteration, Recursion and List Comprehension (LC) are some of these structuring techniques. However, its impact on developers’ performance has been little investigated from the perspective of visual effort with eye tracking, including in the context of novices. Therefore, this work aims to conduct a study with eye tracking to investigate the impact of these different structures on novices’ code understanding. There fore, an initial controlled study was conducted to solve six tasks, using the Latin Square design with 32 Python novices, measuring time, number of attempts to solve the task and visual effort through of fixation duration, fixation count and regressions. A comparison was used with tasks that have the following structures: Recursion, repetition structure and LC. In the Area of Interest (AOI), regarding the metrics analyzed, increases were observed in the while, Recursion and LC versions compared to the for version. In the number of regres sions, the increase reached 100% and 114.29% with LC and while, respectively, indicating the need to return more times in the code. The increase in time reached 95% with while. Through the analysis of reading patterns, in Recursion, greater focus of attention was noticed in the base case and in the recursive step. The need for a stop condition and explicit counter is a hypothesis for the worst performance with while. There were agreements and discrep ancies among participants between performance and perception of difficulty depending on the task. In general, the for version required less time, attempts and visual effort, indicat ing a better understanding of some tasks. This study mainly contributes to raising awareness among educators about the impact of Recursion, iteration and LC on code understanding for Python novices. pt_BR
dc.identifier.uri http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/37716
dc.date.accessioned 2024-09-09T19:10:24Z
dc.date.available 2024-09-09
dc.date.available 2024-09-09T19:10:24Z
dc.type Dissertação pt_BR
dc.subject Engenharia de software pt_BR
dc.subject Code comprehension pt_BR
dc.subject Eye tracking pt_BR
dc.subject Repetition structures pt_BR
dc.subject Engenharia de software pt_BR
dc.subject Compreensão de código pt_BR
dc.subject Rastreamento ocular pt_BR
dc.subject Estruturas de repetição pt_BR
dc.rights Acesso Aberto pt_BR
dc.creator COSTA, José Júnior Silva da.
dc.publisher Universidade Federal de Campina Grande pt_BR
dc.language por pt_BR
dc.title.alternative Avaliando estruturas de repetição em python com novatos: um estudo de rastreamento ocular. pt_BR
dc.description.sponsorship Capes pt_BR
dc.identifier.citation COSTA, José Júnior Silva da. Evaluating python repetition structures with novices: an eye tracking study. 2024. 74 f. Dissertação (Mestrado em Ciência da Computação) – Programa de Pós-Graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande, Paraíba, Brasil, 2024. pt_BR


Arquivos deste item

Este item aparece na(s) seguinte(s) coleção(s)

Mostrar registro simples

Buscar DSpace


Busca avançada

Navegar

Minha conta