Mapeamento e análise empírica de misconceptions comuns em avaliações de introdução à programação

Resumo


Alunos de disciplinas introdutórias de programação exibem vários entendimentos equivocados de conceitos e dificuldades no conhecimento sintático, conceitual e estratégico. Tais equívocos levam os alunos a cometerem erros como atribuições erradas em variáveis, chamadas de métodos não declarados, passagens erradas de parâmetros para métodos, dentre outros. Esses erros são comuns e são chamados de misconceptions. Este trabalho apresenta um levantamento dos misconceptions cometidos por estudantes de duas turmas nos trabalhos práticos da disciplina introdutória de programação (IPC) ofertada em uma Universidade Federal. Para fazer o levantamento, foram utilizados os códigos produzidos pelos alunos durante os trabalhos práticos da disciplina. Foi usada como base uma lista pré-definida de misconceptions relacionados à programação introdutória em Python, separados por assuntos computacionais comuns em disciplinas de IPC, como laços, matrizes, vetores, dentre outros. Por fim, foi identificado em quais assuntos da disciplina cada turma teve mais dificuldade e foi criada uma lista com 14 erros comuns que foram identificados nas duas turmas.
Palavras-chave: erros de compreensão, ensino de programação, misconceptions, análise dirigida aos dados, juiz online

Referências

Ricardo Caceffo, Pablo Frank-Bolton, Renan Souza, and Rodolfo Azevedo. 2019. Identifying and validating java misconceptions toward a cs1 concept inventory. In Proceedings of the 2019 ACM Conference on Innovation and Technology in Computer Science Education. 23–29.


Williams Carlsen. 1999. Domains of teacher knowledge. In Examining pedagogical content knowledge. Springer, 133–144.


Adam Carter, Christopher Hundhausen, and Daniel Olivares. 2019. Leveraging the IDE for learning analytics. The Cambridge Handbook of Computing Education Research, Sally A. Fincher and Anthony V. Robins (Eds.). Cambridge University Press, Cambridge (2019), 679–706.


Yuliya Cherenkova, Daniel Zingaro, and Andrew Petersen. 2014. Identifying challenging CS1 concepts in a large problem dataset. In Proceedings of the 45th ACM technical symposium on Computer science education. 695–700.


Hermino Barbosa de Freitas Júnior and Filipe Dwan Pereira. 2020. Recomendação de Problemas em Juízes Onlines Utilizando Técnicas de Processamento de Linguagem Natural e Análise Dirigida aos Dados. In Anais dos Workshops do IX Congresso Brasileiro de Informática na Educação. SBC, 94–94.


Joseph de Oliveira, Felipe Salem, Elaine Harada Teixeira de Oliveira, David Braga Fernandes Oliveira, Leandro Silva Galvão de Carvalho, and Filipe Dwan Pereira. 2020. Os estudantes leem as mensagens de feedback estendido exibidas em juízes online?. In Anais do XXXI Simpósio Brasileiro de Informática na Educação. SBC, 1723–1732.


Ingrid Lima dos Santos, David Braga Fernandes Oliveira, Leandro Silva Galvão de Carvalho, Filipe Dwan Pereira, and Elaine Harada Teixeira de Oliveira. 2020. Tempos de Transição em Estados de Corretude e Erro como Indicadores de Desempenho em Juízes Online. In Anais do XXXI Simpósio Brasileiro de Informática na Educação. SBC, 1283–1292.


Filipe Dwan, Elaine Oliveira, and David Fernandes. 2017. Predição de zona de aprendizagem de alunos de introdução à programação em ambientes de correção automática de código. In Brazilian Symposium on Computers in Education (Simpósio Brasileiro de Informática na Educação-SBIE), Vol. 28. 1507.


Andrew Ettles, Andrew Luxton-Reilly, and Paul Denny. 2018. Common logic errors made by novice programmers. In Proceedings of the 20th Australasian Computing Education Conference. Association for Computing Machinery, New York, NY, USA, 83–89.


Samuel Fonseca, Elaine Oliveira, Filipe Pereira, David Fernandes, and Leandro Silva Galvão de Carvalho. 2019. Adaptação de um método preditivo para inferir o desempenho de alunos de programação. In Brazilian Symposium on Computers in Education (Simpósio Brasileiro de Informática na Educação-SBIE), Vol. 30. 1651.


Samuel C Fonseca, Filipe Dwan Pereira, Elaine HT Oliveira, David BF Oliveira, Leandro SG Carvalho, and Alexandra I Cristea. 2020. Automatic subject-based contextualisation of programming assignment lists. International Educational Data Mining Society (2020).


Guilherme Gama, Ricardo Caceffo, Renan Souza, Raysa Bennati, Tales Aparecida, Islene Garcia, and Rodolfo Azevedo. 2018. An antipattern documentation about misconceptions related to an introductory programming course in Python. Technical Report. Institute of Computing, University of Campinas, Tech. Rep. IC-18-19.


Petri Ihantola, Arto Vihavainen, Alireza Ahadi, Matthew Butler, Jürgen Börstler, Stephen H Edwards, Essi Isohanni, Ari Korhonen, Andrew Petersen, Kelly Rivers, et al. 2015. Educational data mining and learning analytics in programming: Literature review and case studies. In Proceedings of the 2015 ITiCSE on Working Group Reports. Association for Computing Machinery, New York, NY, USA, 41–63.


Fionnuala Johnson, Stephen McQuistin, and John O’Donnell. 2020. Analysis of Student Misconceptions using Python as an Introductory Programming Language. In Proceedings of the 4th Conference on Computing Education Practice 2020. 1–4.


Lisa C Kaczmarczyk, Elizabeth R Petrick, J Philip East, and Geoffrey L Herman. 2010. Identifying student misconceptions of programming. In Proceedings of the 41st ACM technical symposium on Computer science education. 107–111.


Cazembe Kennedy, Aubrey Lawson, Yvon Feaster, and Eileen Kraemer. 2020. Misconception-Based Peer Feedback: A Pedagogical Technique for Reducing Misconceptions. In Proceedings of the 2020 ACM Conference on Innovation and Technology in Computer Science Education. 166–172


Kai S Koong, Lai C Liu, and Xia Liu. 2020. A study of the demand for information technology professionals in selected internet job portals. Journal of Information Systems Education 13, 1 (2020), 4.


Marcos Lima, Leandro Silva Galvão de Carvalho, Elaine Harada Teixeira de Oliveira, David Braga Fernandes Oliveira, and Filipe Dwan Pereira. 2020. Classificação de dificuldade de questões de programação com base em métricas de código. In Anais do XXXI Simpósio Brasileiro de Informática na Educação. SBC, 1323–1332.


Andrew Luxton-Reilly, Ibrahim Albluwi, Brett A Becker, Michail Giannakos, Amruth N Kumar, Linda Ott, James Paterson, Michael James Scott, Judy Sheard, and Claudia Szabo. 2018. Introductory programming: a systematic literature review. In Proceedings Companion of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education. 55–106.


Rodrigo Pessoa Medeiros, Geber Lisboa Ramalho, and Taciana Pontual Falcão. 2018. A systematic literature review on teaching and learning introductory programming in higher education. IEEE Transactions on Education 62, 2 (2018), 77–90.


Filipe Pereira, Elaine Oliveira, David Fernandes, Leandro Silva Galvão de Carvalho, and Hermino Junior. 2019. Otimização e automação da predição precoce do desempenho de alunos que utilizam juízes online: uma abordagem com algoritmo genético. In Brazilian Symposium on Computers in Education (Simpósio Brasileiro de Informática na Educação-SBIE), Vol. 30. 1451.


Filipe Dwan Pereira, Linnik Maciel de Souza, Elaine Harada Teixeira de Oliveira, David Braga Fernandes de Oliveira, and Leandro Silva Galvão de Carvalho. 2020. Predição de desempenho em ambientes computacionais para turmas de programação: um Mapeamento Sistemático da Literatura. In Anais do XXXI Simpósio Brasileiro de Informática na Educação. SBC, 1673–1682.


Filipe Dwan Pereira, Samuel C Fonseca, Elaine HT Oliveira, David BF Oliveira, Alexandra I Cristea, and Leandro SG Carvalho. 2020. Deep learning for early performance prediction of introductory programming students: a comparative and explanatory study. Brazilian journal of computers in education. 28 (2020), 723–749.


Filipe D Pereira, Elaine Oliveira, Alexandra Cristea, David Fernandes, Luciano Silva, Gene Aguiar, Ahmed Alamri, and Mohammad Alshehri. 2019. Early dropout prediction for programming courses supported by online judges. In International Conference on Artificial Intelligence in Education. Springer, Springer International Publishing, Cham, 67–72.


Filipe Dwan Pereira, Elaine HT Oliveira, David Fernandes, and Alexandra Cristea. 2019. Early performance prediction for CS1 course students using a combination of machine learning and an evolutionary algorithm. In 2019 IEEE 19th International Conference on Advanced Learning Technologies (ICALT), Vol. 2161. IEEE, 183–184.


Filipe D Pereira, Elaine HT Oliveira, David BF Oliveira, Alexandra I Cristea, Leandro SG Carvalho, Samuel C Fonseca, Armando Toda, and Seiji Isotani. 2020. Using learning analytics in the Amazonas: understanding students’ behaviour in introductory programming. British Journal of Educational Technology 51, 4 (jul 2020), 955–972.


Filipe Dwan Pereira, Elaine H T Oliveira, and David F B Oliveira. 2018. Uso de um método preditivo para inferir a zona de aprendizagem de alunos de programação em um ambiente de correção automática de código. Mestrado em Informática. Universidade Federal do Amazonas, Manaus.


Filipe Dwan Pereira, Francisco Pires, Samuel Fonseca, Elaine Oliveira, Leandro Carvalho, David Oliveira, and Alexandra Cristea. 2021. Towards a Human-AI hybrid system for categorising programming problems (SIGCSE ’21). Association for Computing Machinery, New York, NY, USA, 7. https://doi.org/10.1145/ 3408877.3432422


Filipe D Pereira, Armando Toda, Elaine HT Oliveira, Alexandra I Cristea, Seiji Isotani, Dion Laranjeira, Adriano Almeida, and Jonas Mendonça. 2020. Can We Use Gamification to Predict Students’ Performance? A Case Study Supported by an Online Judge. In International Conference on Intelligent Tutoring Systems. Springer, 259–269.


Yizhou Qian, Susanne Hambrusch, Aman Yadav, Sarah Gretter, and Yue Li. 2020. Teachers’ Perceptions of Student Misconceptions in Introductory Programming. Journal of Educational Computing Research 58, 2 (2020), 364–397.


Yizhou Qian and James Lehman. 2017. Students’ misconceptions and other difficulties in introductory programming: A literature review. ACM Transactions on Computing Education (TOCE) 18, 1 (2017), 1–24.


Keith Quille and Susan Bergin. 2019. CS1: how will they do? How can we help? A decade of research and practice. Computer Science Education 29, 2-3 (2019), 254–282.


Meenakshi Raman and Anjani Srikanth Koka. 2015. The ever-increasing demand for soft skills at workplace: A Study on IT professionals’ perspectives. In International Conference on Management and Information Systems, Vol. 18. 4–8.


Kelly Rivers, Erik Harpstead, and Kenneth R Koedinger. 2016. Learning curve analysis for programming: Which concepts do students struggle with?. In ICER. Association for Computing Machinery, New York, NY, USA, 143–151.


A. V. Robins. 2019. Novice programmers and introductory programming. In The Cambridge Handbook of Computing Education Research. Cambridge University Press, Cambridge, Chapter 12, 327–376.


Kate Sanders and Lynda Thomas. 2007. Checklists for grading object-oriented CS1 programs: concepts and misconceptions. ACM SIGCSE Bulletin 39, 3 (2007), 166–170.


Lee Shulman. 1987. Knowledge and teaching: Foundations of the new reform. Harvard educational review 57, 1 (1987), 1–23.


Keith S Taber. 2013. Modelling learners and learning in science education. Springer, Netherlands.


Szymon Wasik, Maciej Antczak, Jan Badura, Artur Laskowski, and Tomasz Sternal. 2018. A survey on online judge systems and their applications. ACM Computing Surveys (CSUR) 51, 1 (2018), 1–34.


R Paul Wiegand, Anthony Bucci, Amruth N Kumar, Jennifer L Albert, and Alessio Gaspar. 2016. A data-driven analysis of informatively hard concepts in introductory programming. In Proceedings of the 47th ACM Technical Symposium on Computing Science Education. Association for Computing Machinery, New York, NY, USA, 370–375.


Aman Yadav, Sarah Gretter, Susanne Hambrusch, and Phil Sands. 2016. Expanding computer science education in schools: understanding teacher experiences and challenges. Computer Science Education 26, 4 (2016), 235–254.


Žana Žanko, Monika Mladenović, and Ivica Boljat. 2019. Misconceptions about variables at the K-12 level. Education and Information Technologies 24, 2 (2019), 1251–1268.


Daniel Lopes Zordan Filho, Elaine Harada Teixeira de Oliveira, Leandro Silva Galvão de Carvalho, Marcela Pessoa, Filipe Dwan Pereira, and David Braga Fernandes de Oliveira. 2020. Uma análise orientada a dados para avaliar o impacto da gamificação de um juiz on-line no desempenho de estudantes. In Anais do XXXI Simpósio Brasileiro de Informática na Educação. SBC, 491–500.
Publicado
26/04/2021
ARAUJO, Ada; FILHO, Daniel Lopes Zordan; OLIVEIRA, Elaine Harada Teixeira de; CARVALHO, Leandro Silva Galvão de; PEREIRA, Filipe Dwan; OLIVEIRA, David Braga Fernandes de. Mapeamento e análise empírica de misconceptions comuns em avaliações de introdução à programação. In: SIMPÓSIO BRASILEIRO DE EDUCAÇÃO EM COMPUTAÇÃO (EDUCOMP), 1. , 2021, On-line. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2021 . p. 123-131. DOI: https://doi.org/10.5753/educomp.2021.14478.