Identificação de Autoria em Projetos Cooperativos de Programação Orientada a Objetos
Resumo
A criação de sistemas de forma cooperativa é uma atividade comum no ensino de programação orientada a objetos (POO) e é importante ter o conhecimento da contribuição de cada aluno ao projeto. Este trabalho propõe o uso de análises automáticas de detecção de autoria que identificam o quanto cada aluno pode ser considerado dono (autor) de um arquivo. Nós avaliamos três técnicas de detecção de autoria no contexto de projetos de POO e as comparamos com o que os alunos reportaram sobre sua produção de código. Nossos resultados apontam que os algoritmos mais básicos concordam em 69,9% a 88,7% das autorias indicadas pelos alunos. Uma das estratégias avaliadas foi capaz de, inclusive, detectar possíveis coautorias dos arquivos.
Palavras-chave:
autoria de código, detecção de autoria, programação orientada a objetos, projetos cooperativos, controle de versão
Referências
Association for Computing Machinery (ACM) e IEEE Computer Society (2013), Computer Science Curricula 2013: Curriculum Guidelines for Undergraduate Degree Programs in Computer Science, ACM, New York, NY, USA.
Barros, E. e Menezes, C. (2016) EsCola Ambiente Educacional para Escrita Colaborativa. Em: Anais do XXVII Simpósio Brasileiro de Informática na Educação (SBIE 2016), 2016, Uberlândia.
Cochez, M., Isomottonen, V., Tirronen, V. e Itkonen, J. (2013) The Use of Distributed Version Control Systems in Advanced Programming Courses. Em: ICT in Education, Research and Industrial Applications: Integration, Harmonization and Knowledge Transfer ICTERI 2013, p.221-235.
Fritz, T., Murphy, G. C., Murphy-Hill, E., Ou, J. e Hill, E. (2014). Degree-of-knowledge: Modeling a developer's knowledge of code. Em: ACM Trans. Softw. Eng. Methodol. 23, 2, Article 14 (April 2014), 42 pages. DOI: 10.1145/2512207
Hattori, L. e Lanza, M. (2009) Mining the history of synchronous changes to refine code ownership. Em: Proceedings of the 2009 6th IEEE International Working Conference on Mining Software Repositories (MSR '09). IEEE Computer Society, Washington, DC, USA, 141-150. DOI: 10.1109/MSR.2009.5069492
Barros, E. e Menezes, C. (2016) EsCola Ambiente Educacional para Escrita Colaborativa. Em: Anais do XXVII Simpósio Brasileiro de Informática na Educação (SBIE 2016), 2016, Uberlândia.
Cochez, M., Isomottonen, V., Tirronen, V. e Itkonen, J. (2013) The Use of Distributed Version Control Systems in Advanced Programming Courses. Em: ICT in Education, Research and Industrial Applications: Integration, Harmonization and Knowledge Transfer ICTERI 2013, p.221-235.
Fritz, T., Murphy, G. C., Murphy-Hill, E., Ou, J. e Hill, E. (2014). Degree-of-knowledge: Modeling a developer's knowledge of code. Em: ACM Trans. Softw. Eng. Methodol. 23, 2, Article 14 (April 2014), 42 pages. DOI: 10.1145/2512207
Hattori, L. e Lanza, M. (2009) Mining the history of synchronous changes to refine code ownership. Em: Proceedings of the 2009 6th IEEE International Working Conference on Mining Software Repositories (MSR '09). IEEE Computer Society, Washington, DC, USA, 141-150. DOI: 10.1109/MSR.2009.5069492
Publicado
29/10/2018
Como Citar
PEREIRA, David Eduardo; ARAUJO JR., José Robson da Silva; MENDES E SILVA, Mariana; GAUDENCIO, Matheus.
Identificação de Autoria em Projetos Cooperativos de Programação Orientada a Objetos. In: SIMPÓSIO BRASILEIRO DE INFORMÁTICA NA EDUCAÇÃO (SBIE), 29. , 2018, Fortaleza/CE.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2018
.
p. 1663-1672.
DOI: https://doi.org/10.5753/cbie.sbie.2018.1663.
