[en] REUSE OF DOMAIN-SENSITIVE STRATEGIES FOR DETECTING CODE ANOMALIES: A MULTI-CASE STUDY

Bibliographic Details
Main Author: ALEXANDRE LEITE SILVA
Publication Date: 2015
Format: Doctoral thesis
Language: por
Source: Repositório Institucional da PUC-RIO (Projeto Maxwell)
Download full: https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=23964&idi=1
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=23964&idi=2
http://doi.org/10.17771/PUCRio.acad.23964
Summary: [pt] Para promover a longevidade de sistemas de software, estratégias de detecção são reutilizadas para identificar anomalias relacionadas a problemas de manutenção, tais como classes grandes, métodos longos ou mudanças espalhadas. Uma estratégia de detecção é uma heurística composta por métricas de software e limiares, combinados por operadores lógicos, cujo objetivo é detectar um tipo de anomalia. Estratégias pré-definidas são usualmente aplicadas globalmente no programa na tentativa de revelar onde se encontram os problemas críticos de manutenção. A eficiência de uma estratégia de detecção está relacionada ao seu reuso, dado o conjunto de projetos de uma organização. Caso haja necessidade de definir limiares e métricas para cada projeto, o uso das estratégias consumirá muito tempo e será negligenciado. Estudos recentes sugerem que o reuso das estratégias convencionais de detecção não é usualmente possível se aplicadas de forma universal a programas de diferentes domínios. Dessa forma, conduzimos um estudo exploratório em vários projetos de um domínio comum para avaliar o reuso de estratégias de detecção. Também avaliamos o reuso de estratégias conhecidas, com calibragem inicial de limiares a partir do conhecimento e análise de especialistas do domínio. O estudo revelou que, mesmo que o reuso de estratégias aumente quando definidas e aplicadas para um domínio específico, em alguns casos o reuso é limitado pela variação das características dos elementos identificados por uma estratégia de detecção. No entanto, o estudo também revelou que o reuso pode ser significativamente melhorado quando as estratégias consideram peculiaridades dos interesses recorrentes no domínio ao invés de serem aplicadas no programa como um todo.
id PUC_RIO-1_3f8b7cd3e757d96e63620f987bf7d12d
oai_identifier_str oai:MAXWELL.puc-rio.br:23964
network_acronym_str PUC_RIO-1
network_name_str Repositório Institucional da PUC-RIO (Projeto Maxwell)
repository_id_str 534
spelling [en] REUSE OF DOMAIN-SENSITIVE STRATEGIES FOR DETECTING CODE ANOMALIES: A MULTI-CASE STUDY[pt] REUSO DE ESTRATÉGIAS SENSÍVEIS A DOMÍNIO PARA DETECÇÃO DE ANOMALIAS DE CÓDIGO: UM ESTUDO DE MÚLTIPLOS CASOS[pt] ANOMALIAS[pt] ACURACIA[pt] REUSO[pt] DETECCAO[en] ANOMALIES[en] DETECTIONAL[pt] Para promover a longevidade de sistemas de software, estratégias de detecção são reutilizadas para identificar anomalias relacionadas a problemas de manutenção, tais como classes grandes, métodos longos ou mudanças espalhadas. Uma estratégia de detecção é uma heurística composta por métricas de software e limiares, combinados por operadores lógicos, cujo objetivo é detectar um tipo de anomalia. Estratégias pré-definidas são usualmente aplicadas globalmente no programa na tentativa de revelar onde se encontram os problemas críticos de manutenção. A eficiência de uma estratégia de detecção está relacionada ao seu reuso, dado o conjunto de projetos de uma organização. Caso haja necessidade de definir limiares e métricas para cada projeto, o uso das estratégias consumirá muito tempo e será negligenciado. Estudos recentes sugerem que o reuso das estratégias convencionais de detecção não é usualmente possível se aplicadas de forma universal a programas de diferentes domínios. Dessa forma, conduzimos um estudo exploratório em vários projetos de um domínio comum para avaliar o reuso de estratégias de detecção. Também avaliamos o reuso de estratégias conhecidas, com calibragem inicial de limiares a partir do conhecimento e análise de especialistas do domínio. O estudo revelou que, mesmo que o reuso de estratégias aumente quando definidas e aplicadas para um domínio específico, em alguns casos o reuso é limitado pela variação das características dos elementos identificados por uma estratégia de detecção. No entanto, o estudo também revelou que o reuso pode ser significativamente melhorado quando as estratégias consideram peculiaridades dos interesses recorrentes no domínio ao invés de serem aplicadas no programa como um todo.[en] To prevent the quality decay, detection strategies are reused to identify symptoms of maintainability problems in the entire program. A detection strategy is a heuristic composed by the following elements: software metrics, thresholds, and logical operators combining them. The adoption of detection strategies is largely dependent on their reuse across the portfolio of the organizations software projects. If developers need to define or tailor those strategy elements to each project, their use will become time-consuming and neglected. Nevertheless, there is no evidence about efficient reuse of detection strategies across multiple software projects. Therefore, we conduct an industry multi-project study to evaluate the reusability of detection strategies in a critical domain. We assessed the degree of accurate reuse of previously-proposed detection strategies based on the judgment of domain specialists. The study revealed that even though the reuse of strategies in a specific domain should be encouraged, their accuracy is still limited when holistically applied to all the modules of a program. However, the accuracy and reuse were both significantly improved when the metrics, thresholds and logical operators were tailored to each recurring concern of the domain.MAXWELLALESSANDRO FABRICIO GARCIAALESSANDRO FABRICIO GARCIAALESSANDRO FABRICIO GARCIAALEXANDRE LEITE SILVA2015-01-30info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesishttps://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=23964&idi=1https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=23964&idi=2http://doi.org/10.17771/PUCRio.acad.23964porreponame: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/openAccess2019-08-20T00:00:00Zoai:MAXWELL.puc-rio.br:23964Repositório InstitucionalPRIhttps://www.maxwell.vrac.puc-rio.br/ibict.phpopendoar:5342019-08-20T00:00Repositório Institucional da PUC-RIO (Projeto Maxwell) - Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)false
dc.title.none.fl_str_mv [en] REUSE OF DOMAIN-SENSITIVE STRATEGIES FOR DETECTING CODE ANOMALIES: A MULTI-CASE STUDY
[pt] REUSO DE ESTRATÉGIAS SENSÍVEIS A DOMÍNIO PARA DETECÇÃO DE ANOMALIAS DE CÓDIGO: UM ESTUDO DE MÚLTIPLOS CASOS
title [en] REUSE OF DOMAIN-SENSITIVE STRATEGIES FOR DETECTING CODE ANOMALIES: A MULTI-CASE STUDY
spellingShingle [en] REUSE OF DOMAIN-SENSITIVE STRATEGIES FOR DETECTING CODE ANOMALIES: A MULTI-CASE STUDY
ALEXANDRE LEITE SILVA
[pt] ANOMALIAS
[pt] ACURACIA
[pt] REUSO
[pt] DETECCAO
[en] ANOMALIES
[en] DETECTIONAL
title_short [en] REUSE OF DOMAIN-SENSITIVE STRATEGIES FOR DETECTING CODE ANOMALIES: A MULTI-CASE STUDY
title_full [en] REUSE OF DOMAIN-SENSITIVE STRATEGIES FOR DETECTING CODE ANOMALIES: A MULTI-CASE STUDY
title_fullStr [en] REUSE OF DOMAIN-SENSITIVE STRATEGIES FOR DETECTING CODE ANOMALIES: A MULTI-CASE STUDY
title_full_unstemmed [en] REUSE OF DOMAIN-SENSITIVE STRATEGIES FOR DETECTING CODE ANOMALIES: A MULTI-CASE STUDY
title_sort [en] REUSE OF DOMAIN-SENSITIVE STRATEGIES FOR DETECTING CODE ANOMALIES: A MULTI-CASE STUDY
author ALEXANDRE LEITE SILVA
author_facet ALEXANDRE LEITE SILVA
author_role author
dc.contributor.none.fl_str_mv ALESSANDRO FABRICIO GARCIA
ALESSANDRO FABRICIO GARCIA
ALESSANDRO FABRICIO GARCIA
dc.contributor.author.fl_str_mv ALEXANDRE LEITE SILVA
dc.subject.por.fl_str_mv [pt] ANOMALIAS
[pt] ACURACIA
[pt] REUSO
[pt] DETECCAO
[en] ANOMALIES
[en] DETECTIONAL
topic [pt] ANOMALIAS
[pt] ACURACIA
[pt] REUSO
[pt] DETECCAO
[en] ANOMALIES
[en] DETECTIONAL
description [pt] Para promover a longevidade de sistemas de software, estratégias de detecção são reutilizadas para identificar anomalias relacionadas a problemas de manutenção, tais como classes grandes, métodos longos ou mudanças espalhadas. Uma estratégia de detecção é uma heurística composta por métricas de software e limiares, combinados por operadores lógicos, cujo objetivo é detectar um tipo de anomalia. Estratégias pré-definidas são usualmente aplicadas globalmente no programa na tentativa de revelar onde se encontram os problemas críticos de manutenção. A eficiência de uma estratégia de detecção está relacionada ao seu reuso, dado o conjunto de projetos de uma organização. Caso haja necessidade de definir limiares e métricas para cada projeto, o uso das estratégias consumirá muito tempo e será negligenciado. Estudos recentes sugerem que o reuso das estratégias convencionais de detecção não é usualmente possível se aplicadas de forma universal a programas de diferentes domínios. Dessa forma, conduzimos um estudo exploratório em vários projetos de um domínio comum para avaliar o reuso de estratégias de detecção. Também avaliamos o reuso de estratégias conhecidas, com calibragem inicial de limiares a partir do conhecimento e análise de especialistas do domínio. O estudo revelou que, mesmo que o reuso de estratégias aumente quando definidas e aplicadas para um domínio específico, em alguns casos o reuso é limitado pela variação das características dos elementos identificados por uma estratégia de detecção. No entanto, o estudo também revelou que o reuso pode ser significativamente melhorado quando as estratégias consideram peculiaridades dos interesses recorrentes no domínio ao invés de serem aplicadas no programa como um todo.
publishDate 2015
dc.date.none.fl_str_mv 2015-01-30
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 https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=23964&idi=1
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=23964&idi=2
http://doi.org/10.17771/PUCRio.acad.23964
url https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=23964&idi=1
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=23964&idi=2
http://doi.org/10.17771/PUCRio.acad.23964
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 MAXWELL
publisher.none.fl_str_mv MAXWELL
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_ 1849967259998486528