RECOMMENDER SYSTEM FOR EXCEPTION HANDLING CODE
PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIRO === CONSELHO NACIONAL DE DESENVOLVIMENTO CIENTÍFICO E TECNOLÓGICO === FUNDAÇÃO DE APOIO À PESQUISA DO ESTADO DO RIO DE JANEIRO === Mecanismos de tratamento de exceções são modelos comumente usados em linguagens de programação para a estruturação do...
Main Author: | |
---|---|
Other Authors: | |
Language: | Portuguese |
Published: |
PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIRO
2012
|
Online Access: | http://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=20357@1 http://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=20357@2 |
id |
ndltd-IBICT-oai-MAXWELL.puc-rio.br-20357 |
---|---|
record_format |
oai_dc |
collection |
NDLTD |
language |
Portuguese |
sources |
NDLTD |
description |
PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIRO === CONSELHO NACIONAL DE DESENVOLVIMENTO CIENTÍFICO E TECNOLÓGICO === FUNDAÇÃO DE APOIO À PESQUISA DO ESTADO DO RIO DE JANEIRO === Mecanismos de tratamento de exceções são modelos comumente usados em
linguagens de programação para a estruturação do fluxo de execução excepcional
de módulos de software. Tais mecanismos possibilitam a detecção e a sinalização
da ocorrência de exceções, permitindo que módulos de software tomem medidas
corretivas que recuperem o sistema para um estado correto. Estudos recentes
mostram que falhas recorrentes e problemas de desempenho em aplicações de
software estão relacionados à má qualidade do código que implementa o
tratamento de exceções. Os estudos preliminares realizados no contexto desta
dissertação não apenas corroboram esses resultados, como também evidenciam
uma série de outros fatos interessantes que ocorrem durante a evolução de
sistemas de software. Em especial, percebeu-se que é bastante comum nas versões
preliminares de um sistema a implementação de ações de tratamento de exceções
ineficazes. Também se percebeu que pouco (ou nenhum) esforço é realizado em
termos de melhorar o tratamento de exceções durante a evolução do sistema de
software. Os trabalhos recentes que se propõem a auxiliar desenvolvedores de
software a lidar com código de tratamento de exceções falham em auxiliá-los em
uma tarefa primordial: implementar código de tratamento de exceções bem
estruturado desde as primeiras versões de um sistema. Neste contexto, o presente
trabalho propõe um sistema de recomendação capaz de prover exemplos de
código tratando exceções de modo a auxiliar desenvolvedores a implementarem
seu próprio código em suas aplicações. O sistema extrai informações estruturais
do código sob desenvolvimento para buscar por exemplos em um repositório local
a fim de recomendar exemplos de código com contexto parecido ao que o
desenvolvedor está trabalhando. O sistema implementado neste trabalho
recomenda exemplos de código implementados em Java. === Exception handling mechanisms are models commonly used in
programming languages to structure the exceptional execution flow of software
modules. These mechanisms enable the detection and signaling of exception
occurrences, allowing these modules to take corrective actions to recover a
module to a correct state. Recent studies show that recurrent failures and
performance issues in software applications are related to the poor structuring of
exception handling code. The preliminary studies performed in the context of this
dissertation not only confirm these results, but also show other interesting facts
that occur during software evolution. In particular, it was realized that it is often
very common to observe ineffective exception handling actions in the first
releases of a system. It was also realized that little (or no) effort was allocated to
improve the quality of these action during the software evolution. Recent studies
that aim aiding software developers to deal with exception handling elements fail
in assisting them in a crucial task: implementing well-structured exception
handling code since the first release of a system. In this context, this dissertation
proposes a recommender system able to provide code fragments implementing
exception handling code. The proposed strategy aims to assist developers in
implementing their own code in their applications. The system extracts structural
information from the code under development to search for examples in a local
repository in order to recommend code examples that share similar structural
context with the code that the developer is working on. The system implemented
in the context of this dissertation recommends code examples implemented in
Java. |
author2 |
ALESSANDRO FABRICIO GARCIA |
author_facet |
ALESSANDRO FABRICIO GARCIA EIJI ADACHI MEDEIROS BARBOSA |
author |
EIJI ADACHI MEDEIROS BARBOSA |
spellingShingle |
EIJI ADACHI MEDEIROS BARBOSA RECOMMENDER SYSTEM FOR EXCEPTION HANDLING CODE |
author_sort |
EIJI ADACHI MEDEIROS BARBOSA |
title |
RECOMMENDER SYSTEM FOR EXCEPTION HANDLING CODE |
title_short |
RECOMMENDER SYSTEM FOR EXCEPTION HANDLING CODE |
title_full |
RECOMMENDER SYSTEM FOR EXCEPTION HANDLING CODE |
title_fullStr |
RECOMMENDER SYSTEM FOR EXCEPTION HANDLING CODE |
title_full_unstemmed |
RECOMMENDER SYSTEM FOR EXCEPTION HANDLING CODE |
title_sort |
recommender system for exception handling code |
publisher |
PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIRO |
publishDate |
2012 |
url |
http://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=20357@1 http://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=20357@2 |
work_keys_str_mv |
AT eijiadachimedeirosbarbosa recommendersystemforexceptionhandlingcode AT eijiadachimedeirosbarbosa sistemaderecomendacaoparacodigodetratamentodeexcecoes |
_version_ |
1718988131467788288 |
spelling |
ndltd-IBICT-oai-MAXWELL.puc-rio.br-203572019-03-01T15:40:12Z RECOMMENDER SYSTEM FOR EXCEPTION HANDLING CODE SISTEMA DE RECOMENDAÇÃO PARA CÓDIGO DE TRATAMENTO DE EXCEÇÕES EIJI ADACHI MEDEIROS BARBOSA ALESSANDRO FABRICIO GARCIA ALESSANDRO FABRICIO GARCIA RENATO FONTOURA DE GUSMAO CERQUEIRA RENATO FONTOURA DE GUSMAO CERQUEIRA ALESSANDRO FABRICIO GARCIA ALESSANDRO FABRICIO GARCIA CHRISTINA VON FLACH GARCIA CHAVEZ PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIRO CONSELHO NACIONAL DE DESENVOLVIMENTO CIENTÍFICO E TECNOLÓGICO FUNDAÇÃO DE APOIO À PESQUISA DO ESTADO DO RIO DE JANEIRO Mecanismos de tratamento de exceções são modelos comumente usados em linguagens de programação para a estruturação do fluxo de execução excepcional de módulos de software. Tais mecanismos possibilitam a detecção e a sinalização da ocorrência de exceções, permitindo que módulos de software tomem medidas corretivas que recuperem o sistema para um estado correto. Estudos recentes mostram que falhas recorrentes e problemas de desempenho em aplicações de software estão relacionados à má qualidade do código que implementa o tratamento de exceções. Os estudos preliminares realizados no contexto desta dissertação não apenas corroboram esses resultados, como também evidenciam uma série de outros fatos interessantes que ocorrem durante a evolução de sistemas de software. Em especial, percebeu-se que é bastante comum nas versões preliminares de um sistema a implementação de ações de tratamento de exceções ineficazes. Também se percebeu que pouco (ou nenhum) esforço é realizado em termos de melhorar o tratamento de exceções durante a evolução do sistema de software. Os trabalhos recentes que se propõem a auxiliar desenvolvedores de software a lidar com código de tratamento de exceções falham em auxiliá-los em uma tarefa primordial: implementar código de tratamento de exceções bem estruturado desde as primeiras versões de um sistema. Neste contexto, o presente trabalho propõe um sistema de recomendação capaz de prover exemplos de código tratando exceções de modo a auxiliar desenvolvedores a implementarem seu próprio código em suas aplicações. O sistema extrai informações estruturais do código sob desenvolvimento para buscar por exemplos em um repositório local a fim de recomendar exemplos de código com contexto parecido ao que o desenvolvedor está trabalhando. O sistema implementado neste trabalho recomenda exemplos de código implementados em Java. Exception handling mechanisms are models commonly used in programming languages to structure the exceptional execution flow of software modules. These mechanisms enable the detection and signaling of exception occurrences, allowing these modules to take corrective actions to recover a module to a correct state. Recent studies show that recurrent failures and performance issues in software applications are related to the poor structuring of exception handling code. The preliminary studies performed in the context of this dissertation not only confirm these results, but also show other interesting facts that occur during software evolution. In particular, it was realized that it is often very common to observe ineffective exception handling actions in the first releases of a system. It was also realized that little (or no) effort was allocated to improve the quality of these action during the software evolution. Recent studies that aim aiding software developers to deal with exception handling elements fail in assisting them in a crucial task: implementing well-structured exception handling code since the first release of a system. In this context, this dissertation proposes a recommender system able to provide code fragments implementing exception handling code. The proposed strategy aims to assist developers in implementing their own code in their applications. The system extracts structural information from the code under development to search for examples in a local repository in order to recommend code examples that share similar structural context with the code that the developer is working on. The system implemented in the context of this dissertation recommends code examples implemented in Java. 2012-03-30 info:eu-repo/semantics/publishedVersion info:eu-repo/semantics/masterThesis http://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=20357@1 http://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=20357@2 por info:eu-repo/semantics/openAccess PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIRO PPG EM INFORMÁTICA PUC-Rio BR reponame:Repositório Institucional da PUC_RIO instname:Pontifícia Universidade Católica do Rio de Janeiro instacron:PUC_RIO |