A HISTORY SENSITIVE APPROACH TO CODE ANOMALY DETECTION

Detalhes bibliográficos
Autor(a) principal: LEANDRA MARA DA SILVA
Data de Publicação: 2010
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da PUC-RIO (Projeto Maxwell)
Texto Completo: https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=17163@1
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=17163@2
Resumo: A modularização do código pode influenciar diretamente a manutenibilidade de sistemas de software. Por isso, pesquisadores têm proposto mecanismos que visam contribuir com a identificação de potenciais anomalias de modularidade no código. Nesse contexto, um mecanismo baseado em métricas que vêm sendo bastante divulgado são as estratégias de detecção. Comumente, elas são compostas por métricas que consideram apenas propriedades de versões isoladas dos sistemas. Entretanto, estudos recentes relatam que tal abordagem têm se apresentado contraproducente. Nossa pesquisa está relacionada à investigação dos possíveis benefícios de se considerar informações sobre a evolução do código na detecção de anomalias. Nesse contexto, este trabalho propõe um conjunto de métricas e de estratégias de detecção que consideram propriedades históricas do código em evolução. Além disso, uma ferramenta de medição e avaliação para dar suporte à abordagem também foi desenvolvida. Essa ferramenta permite a especificação declarativa de diferentes estratégias de detecção através de uma linguagem específica de domínio. Tal fato atende a necessidades particulares de desenvolvedores na configuração de estratégias e disponinbiliza a pesquisadores um ambiente propício à experimentação de estratégias de detecção. Ainda como contribuição desta pesquisa, é apresentada uma avaliação das estratégias em termos de precisão e revocação em dois sistemas de domínio diferentes. Resultados de estratégias convencionais e sensíveis à história são comparados em detecções de anomalias clássicas, tais como God Class, Divergent Change e Shotgun Surgery em um total de 16 versões desses sistemas. Como resultado desse estudo observou-se que a utilização de informações relacionadas à evolução do código pode trazer importantes contribuições à detecção de anomalias de código.
id PUC_RIO-1_deb312f6661aaf16609030fba843b7e3
oai_identifier_str oai:MAXWELL.puc-rio.br:17163
network_acronym_str PUC_RIO-1
network_name_str Repositório Institucional da PUC-RIO (Projeto Maxwell)
repository_id_str 534
spelling info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisA HISTORY SENSITIVE APPROACH TO CODE ANOMALY DETECTION UMA ABORDAGEM SENSÍVEL À HISTÓRIA PARA DETECÇÃO DE ANOMALIAS DE CÓDIGO 2010-08-23CARLOS JOSE PEREIRA DE LUCENA04169212720lattes.cnpq.br/2491891766759477CARLOS JOSE PEREIRA DE LUCENA04169212720lattes.cnpq.br/2491891766759477ALESSANDRO FABRICIO GARCIA02059205948lattes.cnpq.br/0807511237795775ALESSANDRO FABRICIO GARCIA02059205948lattes.cnpq.br/0807511237795775CARLOS JOSE PEREIRA DE LUCENAALESSANDRO FABRICIO GARCIAARNDT VON STAACARLOS JOSE PEREIRA DE LUCENAALESSANDRO FABRICIO GARCIALEANDRA MARA DA SILVAPONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIROPPG EM INFORMÁTICAPUC-RioBRA modularização do código pode influenciar diretamente a manutenibilidade de sistemas de software. Por isso, pesquisadores têm proposto mecanismos que visam contribuir com a identificação de potenciais anomalias de modularidade no código. Nesse contexto, um mecanismo baseado em métricas que vêm sendo bastante divulgado são as estratégias de detecção. Comumente, elas são compostas por métricas que consideram apenas propriedades de versões isoladas dos sistemas. Entretanto, estudos recentes relatam que tal abordagem têm se apresentado contraproducente. Nossa pesquisa está relacionada à investigação dos possíveis benefícios de se considerar informações sobre a evolução do código na detecção de anomalias. Nesse contexto, este trabalho propõe um conjunto de métricas e de estratégias de detecção que consideram propriedades históricas do código em evolução. Além disso, uma ferramenta de medição e avaliação para dar suporte à abordagem também foi desenvolvida. Essa ferramenta permite a especificação declarativa de diferentes estratégias de detecção através de uma linguagem específica de domínio. Tal fato atende a necessidades particulares de desenvolvedores na configuração de estratégias e disponinbiliza a pesquisadores um ambiente propício à experimentação de estratégias de detecção. Ainda como contribuição desta pesquisa, é apresentada uma avaliação das estratégias em termos de precisão e revocação em dois sistemas de domínio diferentes. Resultados de estratégias convencionais e sensíveis à história são comparados em detecções de anomalias clássicas, tais como God Class, Divergent Change e Shotgun Surgery em um total de 16 versões desses sistemas. Como resultado desse estudo observou-se que a utilização de informações relacionadas à evolução do código pode trazer importantes contribuições à detecção de anomalias de código.The modularization of the code can directly influence the software maintainability. Therefore, researchers have proposed mechanisms to contribute to the identification of potential modularity anomalies in source code. In this context, a mechanism based on metrics that have been widespread are the detection strategies. Commonly, they are based on metrics that consider only properties of isolated versions of the systems. However, recent studies have reported that these strategies have been considered counter-productive. Our research is related to the investigation of the possible benefits of considering information about the code evolution to detect anomalies. In this context, this paper proposes a set of metrics and detection strategies that consider historic properties of the code evolution. Furthermore, a measuring and assessing tool to support the approach was also developed. This tool allows the declarative specifcation of different detection strategies through a domain-specific language. This fact meets the particular needs of developers in setting strategies and dispose to researchers an opportune environment to detection strategies experimentations. Also as a contribution of this research is presented an evaluation of strategies in terms of precision and recall in two systems of different domains. Results of conventional strategies and of history-sensitive strategies are compared in detections of classical modularity flaws, such as God Class, Divergent Change and Shotgun Surgery in a total of 16 versions of these systems. Results of this study showed that the use of information related to the code evolution can provide important contributions to detect design flaws in code.COORDENAÇÃO DE APERFEIÇOAMENTO DO PESSOAL DE ENSINO SUPERIORhttps://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=17163@1https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=17163@2porreponame:Repositório Institucional da PUC-RIO (Projeto Maxwell)instname:Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)instacron:PUC_RIOinfo:eu-repo/semantics/openAccess2022-11-01T13:12:38Zoai:MAXWELL.puc-rio.br:17163Repositório InstitucionalPRIhttps://www.maxwell.vrac.puc-rio.br/ibict.phpopendoar:5342018-08-21T00:00Repositório Institucional da PUC-RIO (Projeto Maxwell) - Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)false
dc.title.en.fl_str_mv A HISTORY SENSITIVE APPROACH TO CODE ANOMALY DETECTION
dc.title.alternative.pt.fl_str_mv UMA ABORDAGEM SENSÍVEL À HISTÓRIA PARA DETECÇÃO DE ANOMALIAS DE CÓDIGO
title A HISTORY SENSITIVE APPROACH TO CODE ANOMALY DETECTION
spellingShingle A HISTORY SENSITIVE APPROACH TO CODE ANOMALY DETECTION
LEANDRA MARA DA SILVA
title_short A HISTORY SENSITIVE APPROACH TO CODE ANOMALY DETECTION
title_full A HISTORY SENSITIVE APPROACH TO CODE ANOMALY DETECTION
title_fullStr A HISTORY SENSITIVE APPROACH TO CODE ANOMALY DETECTION
title_full_unstemmed A HISTORY SENSITIVE APPROACH TO CODE ANOMALY DETECTION
title_sort A HISTORY SENSITIVE APPROACH TO CODE ANOMALY DETECTION
dc.creator.ID.none.fl_str_mv
dc.creator.Lattes.none.fl_str_mv
author LEANDRA MARA DA SILVA
author_facet LEANDRA MARA DA SILVA
author_role author
dc.contributor.advisor2ID.none.fl_str_mv 04169212720
dc.contributor.advisor1.fl_str_mv CARLOS JOSE PEREIRA DE LUCENA
dc.contributor.advisor1ID.fl_str_mv 04169212720
dc.contributor.advisor1Lattes.fl_str_mv lattes.cnpq.br/2491891766759477
dc.contributor.advisor2.fl_str_mv CARLOS JOSE PEREIRA DE LUCENA
dc.contributor.advisor2Lattes.fl_str_mv lattes.cnpq.br/2491891766759477
dc.contributor.advisor-co1.fl_str_mv ALESSANDRO FABRICIO GARCIA
dc.contributor.advisor-co1ID.fl_str_mv 02059205948
dc.contributor.advisor-co1Lattes.fl_str_mv lattes.cnpq.br/0807511237795775
dc.contributor.advisor-co2.fl_str_mv ALESSANDRO FABRICIO GARCIA
dc.contributor.advisor-co2ID.fl_str_mv 02059205948
dc.contributor.advisor-co2Lattes.fl_str_mv lattes.cnpq.br/0807511237795775
dc.contributor.referee1.fl_str_mv CARLOS JOSE PEREIRA DE LUCENA
dc.contributor.referee2.fl_str_mv ALESSANDRO FABRICIO GARCIA
dc.contributor.referee3.fl_str_mv ARNDT VON STAA
dc.contributor.referee4.fl_str_mv CARLOS JOSE PEREIRA DE LUCENA
dc.contributor.referee5.fl_str_mv ALESSANDRO FABRICIO GARCIA
dc.contributor.author.fl_str_mv LEANDRA MARA DA SILVA
contributor_str_mv CARLOS JOSE PEREIRA DE LUCENA
CARLOS JOSE PEREIRA DE LUCENA
ALESSANDRO FABRICIO GARCIA
ALESSANDRO FABRICIO GARCIA
CARLOS JOSE PEREIRA DE LUCENA
ALESSANDRO FABRICIO GARCIA
ARNDT VON STAA
CARLOS JOSE PEREIRA DE LUCENA
ALESSANDRO FABRICIO GARCIA
description A modularização do código pode influenciar diretamente a manutenibilidade de sistemas de software. Por isso, pesquisadores têm proposto mecanismos que visam contribuir com a identificação de potenciais anomalias de modularidade no código. Nesse contexto, um mecanismo baseado em métricas que vêm sendo bastante divulgado são as estratégias de detecção. Comumente, elas são compostas por métricas que consideram apenas propriedades de versões isoladas dos sistemas. Entretanto, estudos recentes relatam que tal abordagem têm se apresentado contraproducente. Nossa pesquisa está relacionada à investigação dos possíveis benefícios de se considerar informações sobre a evolução do código na detecção de anomalias. Nesse contexto, este trabalho propõe um conjunto de métricas e de estratégias de detecção que consideram propriedades históricas do código em evolução. Além disso, uma ferramenta de medição e avaliação para dar suporte à abordagem também foi desenvolvida. Essa ferramenta permite a especificação declarativa de diferentes estratégias de detecção através de uma linguagem específica de domínio. Tal fato atende a necessidades particulares de desenvolvedores na configuração de estratégias e disponinbiliza a pesquisadores um ambiente propício à experimentação de estratégias de detecção. Ainda como contribuição desta pesquisa, é apresentada uma avaliação das estratégias em termos de precisão e revocação em dois sistemas de domínio diferentes. Resultados de estratégias convencionais e sensíveis à história são comparados em detecções de anomalias clássicas, tais como God Class, Divergent Change e Shotgun Surgery em um total de 16 versões desses sistemas. Como resultado desse estudo observou-se que a utilização de informações relacionadas à evolução do código pode trazer importantes contribuições à detecção de anomalias de código.
publishDate 2010
dc.date.issued.fl_str_mv 2010-08-23
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=17163@1
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=17163@2
url https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=17163@1
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=17163@2
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 PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIRO
dc.publisher.program.fl_str_mv PPG EM INFORMÁTICA
dc.publisher.initials.fl_str_mv PUC-Rio
dc.publisher.country.fl_str_mv BR
publisher.none.fl_str_mv PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIRO
dc.source.none.fl_str_mv reponame:Repositório Institucional da PUC-RIO (Projeto Maxwell)
instname:Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)
instacron:PUC_RIO
instname_str Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)
instacron_str PUC_RIO
institution PUC_RIO
reponame_str Repositório Institucional da PUC-RIO (Projeto Maxwell)
collection Repositório Institucional da PUC-RIO (Projeto Maxwell)
repository.name.fl_str_mv Repositório Institucional da PUC-RIO (Projeto Maxwell) - Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)
repository.mail.fl_str_mv
_version_ 1748324908596723712