Feedback através da comparação de códigos no apoio ao processo de ensino-aprendizagem de introdução à programação.
Autor(a) principal: | |
---|---|
Data de Publicação: | 2015 |
Tipo de documento: | Tese |
Idioma: | por |
Título da fonte: | Biblioteca Digital de Teses e Dissertações da UFCG |
Texto Completo: | http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/451 |
Resumo: | A atividade de codificar programas é uma das mais utilizadas no ensino de programação. Uma das dificuldades na realização desta atividade está em ser capaz de obter informação sobre os códigos produzidos. A atividade manual de análise de códigos é lenta, especialmente quando se pensa em observar um conjunto de programas como um todo. Ao observar o conjunto de códigos, professores e alunos podem refletir sobre as estratégias tentadas para uma determinada questão ou identificar relações entre as diferentes questões de uma lista de exercícios. Este trabalho de doutorado utilizou estratégias automáticas para a comparação de códigos de uma população de programas. Tais técnicas foram avaliadas e,a partir delas, foram criadas visualizações que possibilitam explorar tal informação. A metodologia inicial para fazer essa investigação consistiu em um experimento avaliando como professores comparam códigos e como esta comparação se assemelha a técnicas automáticas de comparação de código. Posteriormente, os algoritmos de comparação de código foram usados para a criação de uma visualização em grafo de tais comparações. Esta visualização teve seu uso testado pelos alunos em uma atividade de avaliação de códigos entre-pares. Por fim, foi criada uma visualização através de um mapa-de calor para comparar diferentes questões de uma lista de exercícios, bem como a indentificação dos tópicos que cada questão explorava. Como resultados, foi possível identificar que os professores podem não ter apresentado alta concordância entre si (mínimo de 62%) em como códigos se relacionam, mas ainda assim foi possível capturar a noção de similaridade entre a forma em que alguns professores e estratégias automáticas comparam códigos (mínimo de 75%). No entanto, para atingir tal concordância, é preciso considerar um parâmetro que define quando uma estratégia deve considerar duas soluções como muito próximas. Além disso, observou-se que a avaliação de código pelos próprios alunos guiada pela comparação entre artefatos não alterou a qualidade da avaliação de soluções de um problema, mas melhorou a percepção que o estudante tem sobre o processo de avaliação de códigos entre-pares,bem como a percepção da sua própria capacidade de revisar o que foi produzido pelos colegas. Os estudantes também consideraram que a visualização era simples de ser utilizada. O útimo estudo apontou que é possível construir uma visualização para comparar diferentes questões, bem como identificar tópicos explorados numa lista de exercícios. Em um estudo qualitativo, foi possível refletir sobre a produção de exercícios durante a disciplina e sobre a intensidade com que determinados tópicos foram praticados ao longo do semestre. |
id |
UFCG_100c5862e3f4da6228ad322c30455b15 |
---|---|
oai_identifier_str |
oai:localhost:riufcg/451 |
network_acronym_str |
UFCG |
network_name_str |
Biblioteca Digital de Teses e Dissertações da UFCG |
repository_id_str |
4851 |
spelling |
Feedback através da comparação de códigos no apoio ao processo de ensino-aprendizagem de introdução à programação.Feedback through the comparison of codes in support of the teaching-learning process of introduction to programmingEnsino de ProgramaçãoCiência da ComputaçãoCodificação de ProgramasAtividade Manual de Análise de CódigosEstratégias Automáticas para Comparação de CódigosEnsino de ComputaçãoIntrodução à ProgramaçãoEnsino-aprendizagem em ComputaçãoIntroduction to ProgrammingComputer ScienceProgramming TeachingCiência da Computação.A atividade de codificar programas é uma das mais utilizadas no ensino de programação. Uma das dificuldades na realização desta atividade está em ser capaz de obter informação sobre os códigos produzidos. A atividade manual de análise de códigos é lenta, especialmente quando se pensa em observar um conjunto de programas como um todo. Ao observar o conjunto de códigos, professores e alunos podem refletir sobre as estratégias tentadas para uma determinada questão ou identificar relações entre as diferentes questões de uma lista de exercícios. Este trabalho de doutorado utilizou estratégias automáticas para a comparação de códigos de uma população de programas. Tais técnicas foram avaliadas e,a partir delas, foram criadas visualizações que possibilitam explorar tal informação. A metodologia inicial para fazer essa investigação consistiu em um experimento avaliando como professores comparam códigos e como esta comparação se assemelha a técnicas automáticas de comparação de código. Posteriormente, os algoritmos de comparação de código foram usados para a criação de uma visualização em grafo de tais comparações. Esta visualização teve seu uso testado pelos alunos em uma atividade de avaliação de códigos entre-pares. Por fim, foi criada uma visualização através de um mapa-de calor para comparar diferentes questões de uma lista de exercícios, bem como a indentificação dos tópicos que cada questão explorava. Como resultados, foi possível identificar que os professores podem não ter apresentado alta concordância entre si (mínimo de 62%) em como códigos se relacionam, mas ainda assim foi possível capturar a noção de similaridade entre a forma em que alguns professores e estratégias automáticas comparam códigos (mínimo de 75%). No entanto, para atingir tal concordância, é preciso considerar um parâmetro que define quando uma estratégia deve considerar duas soluções como muito próximas. Além disso, observou-se que a avaliação de código pelos próprios alunos guiada pela comparação entre artefatos não alterou a qualidade da avaliação de soluções de um problema, mas melhorou a percepção que o estudante tem sobre o processo de avaliação de códigos entre-pares,bem como a percepção da sua própria capacidade de revisar o que foi produzido pelos colegas. Os estudantes também consideraram que a visualização era simples de ser utilizada. O útimo estudo apontou que é possível construir uma visualização para comparar diferentes questões, bem como identificar tópicos explorados numa lista de exercícios. Em um estudo qualitativo, foi possível refletir sobre a produção de exercícios durante a disciplina e sobre a intensidade com que determinados tópicos foram praticados ao longo do semestre.In introductory programming courses it is common to ask students to solve exercises that require code as solution. When evaluating a code, a teacher or student often compare how that solution relates to other codes. This comparison gives insight about different strategies to solve a problem or information about what students are doing for a given problem. It is a costly task to evaluate codes and understand how they are related. We propose a novel approach to use automatic code comparison strategies to compare a pool of programs. Using the result from this approach we created visualizations for this given data. First, we present a study on how automatic code comparison strategies are related to the way that teachers compare codes. Then we use the code similarity information to create a graph visualization that was later used by students during a peer assessment task. Finally we create a heatmap that show how different questions are related and which topics each of those questions explore. Then we do aqualitative study on how that information can be used and is useful for a teacher. Our first experiment shows that teachers may not have a high agreement among themselves while comparing codes, but is possible to have a personalized fined tuned algorithm that has a great similarity score with some teachers. Code comparison doesn’t seem to improve the technical quality of feedback created by the students during the peer assessment task, but that visualization improves the student’s confidence in their peer assessment capability. The last study shows that we can have information about how different exercisesare related and how some topics are being used in suchUniversidade Federal de Campina GrandeBrasilCentro de Engenharia Elétrica e Informática - CEEIPÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃOUFCGGUERREIRO, Dalton Dario Serey.GUERREIRO, D. D. S.http://lattes.cnpq.br/2050632960242405REBOUÇAS, Ayla Débora Dantas de Souza.REBOUÇAS, A. D. D. S.http://lattes.cnpq.br/1095204533816403RÊGO, Matheus Gaudencio do.2015-112018-04-22T14:19:54Z2018-04-222018-04-22T14:19:54Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesishttp://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/451RÊGO, Matheus Gaudencio do. Feedback através da comparação de códigos no apoio ao processo de ensino-aprendizagem de introdução à programação. 2015. 106 f. Tese (Doutorado em Ciência da Computação), Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande - Paraiba - Brasil, 2015. Disponível em: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/451porinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFCGinstname:Universidade Federal de Campina Grande (UFCG)instacron:UFCG2024-08-16T12:21:33Zoai:localhost:riufcg/451Biblioteca Digital de Teses e Dissertaçõeshttp://bdtd.ufcg.edu.br/PUBhttp://dspace.sti.ufcg.edu.br:8080/oai/requestbdtd@setor.ufcg.edu.br || bdtd@setor.ufcg.edu.bropendoar:48512024-08-16T12:21:33Biblioteca Digital de Teses e Dissertações da UFCG - Universidade Federal de Campina Grande (UFCG)false |
dc.title.none.fl_str_mv |
Feedback através da comparação de códigos no apoio ao processo de ensino-aprendizagem de introdução à programação. Feedback through the comparison of codes in support of the teaching-learning process of introduction to programming |
title |
Feedback através da comparação de códigos no apoio ao processo de ensino-aprendizagem de introdução à programação. |
spellingShingle |
Feedback através da comparação de códigos no apoio ao processo de ensino-aprendizagem de introdução à programação. RÊGO, Matheus Gaudencio do. Ensino de Programação Ciência da Computação Codificação de Programas Atividade Manual de Análise de Códigos Estratégias Automáticas para Comparação de Códigos Ensino de Computação Introdução à Programação Ensino-aprendizagem em Computação Introduction to Programming Computer Science Programming Teaching Ciência da Computação. |
title_short |
Feedback através da comparação de códigos no apoio ao processo de ensino-aprendizagem de introdução à programação. |
title_full |
Feedback através da comparação de códigos no apoio ao processo de ensino-aprendizagem de introdução à programação. |
title_fullStr |
Feedback através da comparação de códigos no apoio ao processo de ensino-aprendizagem de introdução à programação. |
title_full_unstemmed |
Feedback através da comparação de códigos no apoio ao processo de ensino-aprendizagem de introdução à programação. |
title_sort |
Feedback através da comparação de códigos no apoio ao processo de ensino-aprendizagem de introdução à programação. |
author |
RÊGO, Matheus Gaudencio do. |
author_facet |
RÊGO, Matheus Gaudencio do. |
author_role |
author |
dc.contributor.none.fl_str_mv |
GUERREIRO, Dalton Dario Serey. GUERREIRO, D. D. S. http://lattes.cnpq.br/2050632960242405 REBOUÇAS, Ayla Débora Dantas de Souza. REBOUÇAS, A. D. D. S. http://lattes.cnpq.br/1095204533816403 |
dc.contributor.author.fl_str_mv |
RÊGO, Matheus Gaudencio do. |
dc.subject.por.fl_str_mv |
Ensino de Programação Ciência da Computação Codificação de Programas Atividade Manual de Análise de Códigos Estratégias Automáticas para Comparação de Códigos Ensino de Computação Introdução à Programação Ensino-aprendizagem em Computação Introduction to Programming Computer Science Programming Teaching Ciência da Computação. |
topic |
Ensino de Programação Ciência da Computação Codificação de Programas Atividade Manual de Análise de Códigos Estratégias Automáticas para Comparação de Códigos Ensino de Computação Introdução à Programação Ensino-aprendizagem em Computação Introduction to Programming Computer Science Programming Teaching Ciência da Computação. |
description |
A atividade de codificar programas é uma das mais utilizadas no ensino de programação. Uma das dificuldades na realização desta atividade está em ser capaz de obter informação sobre os códigos produzidos. A atividade manual de análise de códigos é lenta, especialmente quando se pensa em observar um conjunto de programas como um todo. Ao observar o conjunto de códigos, professores e alunos podem refletir sobre as estratégias tentadas para uma determinada questão ou identificar relações entre as diferentes questões de uma lista de exercícios. Este trabalho de doutorado utilizou estratégias automáticas para a comparação de códigos de uma população de programas. Tais técnicas foram avaliadas e,a partir delas, foram criadas visualizações que possibilitam explorar tal informação. A metodologia inicial para fazer essa investigação consistiu em um experimento avaliando como professores comparam códigos e como esta comparação se assemelha a técnicas automáticas de comparação de código. Posteriormente, os algoritmos de comparação de código foram usados para a criação de uma visualização em grafo de tais comparações. Esta visualização teve seu uso testado pelos alunos em uma atividade de avaliação de códigos entre-pares. Por fim, foi criada uma visualização através de um mapa-de calor para comparar diferentes questões de uma lista de exercícios, bem como a indentificação dos tópicos que cada questão explorava. Como resultados, foi possível identificar que os professores podem não ter apresentado alta concordância entre si (mínimo de 62%) em como códigos se relacionam, mas ainda assim foi possível capturar a noção de similaridade entre a forma em que alguns professores e estratégias automáticas comparam códigos (mínimo de 75%). No entanto, para atingir tal concordância, é preciso considerar um parâmetro que define quando uma estratégia deve considerar duas soluções como muito próximas. Além disso, observou-se que a avaliação de código pelos próprios alunos guiada pela comparação entre artefatos não alterou a qualidade da avaliação de soluções de um problema, mas melhorou a percepção que o estudante tem sobre o processo de avaliação de códigos entre-pares,bem como a percepção da sua própria capacidade de revisar o que foi produzido pelos colegas. Os estudantes também consideraram que a visualização era simples de ser utilizada. O útimo estudo apontou que é possível construir uma visualização para comparar diferentes questões, bem como identificar tópicos explorados numa lista de exercícios. Em um estudo qualitativo, foi possível refletir sobre a produção de exercícios durante a disciplina e sobre a intensidade com que determinados tópicos foram praticados ao longo do semestre. |
publishDate |
2015 |
dc.date.none.fl_str_mv |
2015-11 2018-04-22T14:19:54Z 2018-04-22 2018-04-22T14:19:54Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/doctoralThesis |
format |
doctoralThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/451 RÊGO, Matheus Gaudencio do. Feedback através da comparação de códigos no apoio ao processo de ensino-aprendizagem de introdução à programação. 2015. 106 f. Tese (Doutorado em Ciência da Computação), Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande - Paraiba - Brasil, 2015. Disponível em: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/451 |
url |
http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/451 |
identifier_str_mv |
RÊGO, Matheus Gaudencio do. Feedback através da comparação de códigos no apoio ao processo de ensino-aprendizagem de introdução à programação. 2015. 106 f. Tese (Doutorado em Ciência da Computação), Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande - Paraiba - Brasil, 2015. Disponível em: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/451 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.publisher.none.fl_str_mv |
Universidade Federal de Campina Grande Brasil Centro de Engenharia Elétrica e Informática - CEEI PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO UFCG |
publisher.none.fl_str_mv |
Universidade Federal de Campina Grande Brasil Centro de Engenharia Elétrica e Informática - CEEI PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO UFCG |
dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações da UFCG instname:Universidade Federal de Campina Grande (UFCG) instacron:UFCG |
instname_str |
Universidade Federal de Campina Grande (UFCG) |
instacron_str |
UFCG |
institution |
UFCG |
reponame_str |
Biblioteca Digital de Teses e Dissertações da UFCG |
collection |
Biblioteca Digital de Teses e Dissertações da UFCG |
repository.name.fl_str_mv |
Biblioteca Digital de Teses e Dissertações da UFCG - Universidade Federal de Campina Grande (UFCG) |
repository.mail.fl_str_mv |
bdtd@setor.ufcg.edu.br || bdtd@setor.ufcg.edu.br |
_version_ |
1809744350031118336 |