Utilize este identificador para referenciar este registo: https://hdl.handle.net/1822/42735

TítuloDetection of plagiarism in software in an academic environment
Autor(es)Martins, Vítor Tiago Varajão
Orientador(es)Henriques, Pedro Rangel
Cruz, Daniela Carneiro
Data2016
Resumo(s)We illustrate the state of the art in software plagiarism detection tools by comparing their features and testing them against a wide range of source codes. The source codes are copies of the same file disguised to hide plagiarism and show the tools accuracy at detecting each type. The decision to focus our research on plagiarism of programming languages is two fold: on one hand, it is a challenging case-study since programming languages impose a structured writing style; on the other hand, we are looking for the integration of such a tool in an Automatic-Grading System (AGS) developed to support teachers in the context of Programming courses. Based on that analysis, we set out to develop our own tool and describe the process from the architecture to the implementation. With examples of how the algorithms works. Followed by the analysis of the finished tool in terms of speed and accuracy against the ones in existence.
Nós ilustramos o estado da arte no que toca a ferramentas de deteção de plágio de software comparando as ferramentas existentes em termos de funcionalidades e testando-as contra um leque de códigos fonte. Os códigos são cópias do mesmo ficheiro disfarçados de forma a esconder o plágio e permitem-nos analisar a eficácia das ferramentas na deteção de cada um dos tipos. A decisão de focar a pesquisa no plágio de linguagens de programação teve dois objetivos: por um lado, é um caso de estudo desafiante já que as linguagens de programação requerem uma escrita estruturada; por outro lado, estamos à procura de integrar uma ferramenta num Sistema de Avaliação-Automática (AGS) desenvolvido para ajudar os professores no contexto de Disciplinas de programação. Com base nessa análise, prosseguimos com a construção da nossa ferramenta e descrevemos o processo desde a arquitetura à implementação. Com exemplos de como funcionam os algoritmos. Finalizando com a análise da ferramenta acabada em termos de velocidade e eficácia contra as existentes.
TipoDissertação de mestrado
DescriçãoDissertação de mestrado - Área de especialização Engenharia da Computação
URIhttps://hdl.handle.net/1822/42735
AcessoAcesso aberto
Aparece nas coleções:BUM - Dissertações de Mestrado

Ficheiros deste registo:
Ficheiro Descrição TamanhoFormato 
eeum_di_dissertacao_pg21482.pdf1,43 MBAdobe PDFVer/Abrir

Partilhe no FacebookPartilhe no TwitterPartilhe no DeliciousPartilhe no LinkedInPartilhe no DiggAdicionar ao Google BookmarksPartilhe no MySpacePartilhe no Orkut
Exporte no formato BibTex mendeley Exporte no formato Endnote Adicione ao seu ORCID