Especificação e monitoramento dinâmico da política de tratamento de exceções

Detalhes bibliográficos
Autor(a) principal: Abrantes, Joilson Vidal
Data de Publicação: 2016
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UFRN
Texto Completo: https://repositorio.ufrn.br/jspui/handle/123456789/21652
Resumo: A política de tratamento de exceções de um sistema compreende o conjunto de regras de design que especificam o comportamento e tratamento das condições excepcionais, ou seja, define como as exceções devem ser manuseadas e disparadas. Essa política geralmente não é documentada e fica definida implicitamente pelo arquiteto do sistema. Por essa razão os desenvolvedores podem pensar que apenas inserindo blocos try-cach em todos locais onde exceções podem potencialmente ser lançadas estão lidando adequadamente com as condições excepcionais de um sistema. Porém este comportamento pode transformar o tratamento das condições excepcionais em uma generalização do mecanismo "goto", tornando o programa mais complexo e menos confiável. Este trabalho propõe uma linguagem específica de domínio, chamada ECL (Exception Contract Language) para especificar a política de tratamento de exceções e uma ferramenta de monitoramento em tempo de execução que verifica dinamicamente a política de tratamento de exceções. Essa ferramenta é chamada de DAEH (Dynamic Analysis of Exception Handling e é implementada na forma de uma biblioteca de aspectos, que pode ser adicionada a uma aplicação Java sem a necessidade de alterar o código fonte da mesma. Esta abordagem foi aplicada a dois sistemas WEB, a quatro versões do framework JUnit e a uma aplicaticação móvel. Os resultados indicam que esta abordagem pode ser usada para expressar e automaticamente verificar a política de tratamento de exceções de sistemas, e, consequentemente apoiar o desenvolvimento de sistemas Java mais robustos.
id UFRN_f849f49e40a928f1dec53404e12b92ad
oai_identifier_str oai:https://repositorio.ufrn.br:123456789/21652
network_acronym_str UFRN
network_name_str Repositório Institucional da UFRN
repository_id_str
spelling Abrantes, Joilson VidalAranha, Eduardo Henrique da SilvaPinto, Felipe Alves PereiraAlmeida, Rodrigo Bonifácio deCoelho, Roberta de Souza2017-01-16T15:05:25Z2017-01-16T15:05:25Z2016-02-25ABRANTES, Joilson Vidal. Especificação e monitoramento dinâmico da política de tratamento de exceções. 2016. 70f. Dissertação (Mestrado em Sistemas e Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2016.https://repositorio.ufrn.br/jspui/handle/123456789/21652A política de tratamento de exceções de um sistema compreende o conjunto de regras de design que especificam o comportamento e tratamento das condições excepcionais, ou seja, define como as exceções devem ser manuseadas e disparadas. Essa política geralmente não é documentada e fica definida implicitamente pelo arquiteto do sistema. Por essa razão os desenvolvedores podem pensar que apenas inserindo blocos try-cach em todos locais onde exceções podem potencialmente ser lançadas estão lidando adequadamente com as condições excepcionais de um sistema. Porém este comportamento pode transformar o tratamento das condições excepcionais em uma generalização do mecanismo "goto", tornando o programa mais complexo e menos confiável. Este trabalho propõe uma linguagem específica de domínio, chamada ECL (Exception Contract Language) para especificar a política de tratamento de exceções e uma ferramenta de monitoramento em tempo de execução que verifica dinamicamente a política de tratamento de exceções. Essa ferramenta é chamada de DAEH (Dynamic Analysis of Exception Handling e é implementada na forma de uma biblioteca de aspectos, que pode ser adicionada a uma aplicação Java sem a necessidade de alterar o código fonte da mesma. Esta abordagem foi aplicada a dois sistemas WEB, a quatro versões do framework JUnit e a uma aplicaticação móvel. Os resultados indicam que esta abordagem pode ser usada para expressar e automaticamente verificar a política de tratamento de exceções de sistemas, e, consequentemente apoiar o desenvolvimento de sistemas Java mais robustos.The exception handling policy of a system comprises the set of design rules that specify its exception handling behavior how exceptions should be handled and thrown. Such policy is usually undocumented and implicitly defined by the system architect. For that reason, the developers may think that by just sprinkling the with catch-blocks in all places where exceptions may potentially be released they are adequately dealing with the exceptional conditions of a system. This lack of information may turn the exception handling into a generalized "goto"mechanism making the program more complex and less reliable. This work proposes a domain - specific language called ECL (Exception Contract Language) to specify the exception handling policy and a runtime monitoring tool which dynamically checks thise policy. This tool is called DAEH (Dynamic Analysis Of Exception Handling). It is implemented in the form of an aspect library, which can added to any Java system without the need to change the application source code. We applied this approach to two large-scale WEB systems and to the a set of versions to the well-known JUnit framework and a mobile application. The results indicate that this approach can be used to express and automatically check the exception handling policy of a system, and consequently support the development of more robust Java systems and more robust.porCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAOTratamento de exceçõesMonitoramentoAnálise dinâmicaPolítica de tratamento de exceçõesEspecificação e monitoramento dinâmico da política de tratamento de exceçõesSpecification and dynamic monitoring exception handling policyinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisPROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃOUFRNBrasilinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFRNinstname:Universidade Federal do Rio Grande do Norte (UFRN)instacron:UFRNORIGINALJoilsonVidalAbrantes_DISSERT.pdfJoilsonVidalAbrantes_DISSERT.pdfapplication/pdf2402253https://repositorio.ufrn.br/bitstream/123456789/21652/1/JoilsonVidalAbrantes_DISSERT.pdf15a49d39ab573006c423043ed6890241MD51TEXTJoilsonVidalAbrantes_DISSERT.pdf.txtJoilsonVidalAbrantes_DISSERT.pdf.txtExtracted texttext/plain117228https://repositorio.ufrn.br/bitstream/123456789/21652/4/JoilsonVidalAbrantes_DISSERT.pdf.txtaa5e3d2e2ebf39b2e13725f9faca39d5MD54THUMBNAILJoilsonVidalAbrantes_DISSERT.pdf.jpgJoilsonVidalAbrantes_DISSERT.pdf.jpgIM Thumbnailimage/jpeg3072https://repositorio.ufrn.br/bitstream/123456789/21652/5/JoilsonVidalAbrantes_DISSERT.pdf.jpg641cb0ae8ca061b443cd17c0b14c066aMD55123456789/216522017-11-03 09:50:33.906oai:https://repositorio.ufrn.br:123456789/21652Repositório de PublicaçõesPUBhttp://repositorio.ufrn.br/oai/opendoar:2017-11-03T12:50:33Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)false
dc.title.pt_BR.fl_str_mv Especificação e monitoramento dinâmico da política de tratamento de exceções
dc.title.alternative.pt_BR.fl_str_mv Specification and dynamic monitoring exception handling policy
title Especificação e monitoramento dinâmico da política de tratamento de exceções
spellingShingle Especificação e monitoramento dinâmico da política de tratamento de exceções
Abrantes, Joilson Vidal
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
Tratamento de exceções
Monitoramento
Análise dinâmica
Política de tratamento de exceções
title_short Especificação e monitoramento dinâmico da política de tratamento de exceções
title_full Especificação e monitoramento dinâmico da política de tratamento de exceções
title_fullStr Especificação e monitoramento dinâmico da política de tratamento de exceções
title_full_unstemmed Especificação e monitoramento dinâmico da política de tratamento de exceções
title_sort Especificação e monitoramento dinâmico da política de tratamento de exceções
author Abrantes, Joilson Vidal
author_facet Abrantes, Joilson Vidal
author_role author
dc.contributor.authorID.pt_BR.fl_str_mv
dc.contributor.advisorID.pt_BR.fl_str_mv
dc.contributor.referees1.none.fl_str_mv Aranha, Eduardo Henrique da Silva
dc.contributor.referees1ID.pt_BR.fl_str_mv
dc.contributor.referees2.none.fl_str_mv Pinto, Felipe Alves Pereira
dc.contributor.referees2ID.pt_BR.fl_str_mv
dc.contributor.referees3.none.fl_str_mv Almeida, Rodrigo Bonifácio de
dc.contributor.referees3ID.pt_BR.fl_str_mv
dc.contributor.author.fl_str_mv Abrantes, Joilson Vidal
dc.contributor.advisor1.fl_str_mv Coelho, Roberta de Souza
contributor_str_mv Coelho, Roberta de Souza
dc.subject.cnpq.fl_str_mv CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
topic CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
Tratamento de exceções
Monitoramento
Análise dinâmica
Política de tratamento de exceções
dc.subject.por.fl_str_mv Tratamento de exceções
Monitoramento
Análise dinâmica
Política de tratamento de exceções
description A política de tratamento de exceções de um sistema compreende o conjunto de regras de design que especificam o comportamento e tratamento das condições excepcionais, ou seja, define como as exceções devem ser manuseadas e disparadas. Essa política geralmente não é documentada e fica definida implicitamente pelo arquiteto do sistema. Por essa razão os desenvolvedores podem pensar que apenas inserindo blocos try-cach em todos locais onde exceções podem potencialmente ser lançadas estão lidando adequadamente com as condições excepcionais de um sistema. Porém este comportamento pode transformar o tratamento das condições excepcionais em uma generalização do mecanismo "goto", tornando o programa mais complexo e menos confiável. Este trabalho propõe uma linguagem específica de domínio, chamada ECL (Exception Contract Language) para especificar a política de tratamento de exceções e uma ferramenta de monitoramento em tempo de execução que verifica dinamicamente a política de tratamento de exceções. Essa ferramenta é chamada de DAEH (Dynamic Analysis of Exception Handling e é implementada na forma de uma biblioteca de aspectos, que pode ser adicionada a uma aplicação Java sem a necessidade de alterar o código fonte da mesma. Esta abordagem foi aplicada a dois sistemas WEB, a quatro versões do framework JUnit e a uma aplicaticação móvel. Os resultados indicam que esta abordagem pode ser usada para expressar e automaticamente verificar a política de tratamento de exceções de sistemas, e, consequentemente apoiar o desenvolvimento de sistemas Java mais robustos.
publishDate 2016
dc.date.issued.fl_str_mv 2016-02-25
dc.date.accessioned.fl_str_mv 2017-01-16T15:05:25Z
dc.date.available.fl_str_mv 2017-01-16T15:05:25Z
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.citation.fl_str_mv ABRANTES, Joilson Vidal. Especificação e monitoramento dinâmico da política de tratamento de exceções. 2016. 70f. Dissertação (Mestrado em Sistemas e Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2016.
dc.identifier.uri.fl_str_mv https://repositorio.ufrn.br/jspui/handle/123456789/21652
identifier_str_mv ABRANTES, Joilson Vidal. Especificação e monitoramento dinâmico da política de tratamento de exceções. 2016. 70f. Dissertação (Mestrado em Sistemas e Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2016.
url https://repositorio.ufrn.br/jspui/handle/123456789/21652
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.program.fl_str_mv PROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO
dc.publisher.initials.fl_str_mv UFRN
dc.publisher.country.fl_str_mv Brasil
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFRN
instname:Universidade Federal do Rio Grande do Norte (UFRN)
instacron:UFRN
instname_str Universidade Federal do Rio Grande do Norte (UFRN)
instacron_str UFRN
institution UFRN
reponame_str Repositório Institucional da UFRN
collection Repositório Institucional da UFRN
bitstream.url.fl_str_mv https://repositorio.ufrn.br/bitstream/123456789/21652/1/JoilsonVidalAbrantes_DISSERT.pdf
https://repositorio.ufrn.br/bitstream/123456789/21652/4/JoilsonVidalAbrantes_DISSERT.pdf.txt
https://repositorio.ufrn.br/bitstream/123456789/21652/5/JoilsonVidalAbrantes_DISSERT.pdf.jpg
bitstream.checksum.fl_str_mv 15a49d39ab573006c423043ed6890241
aa5e3d2e2ebf39b2e13725f9faca39d5
641cb0ae8ca061b443cd17c0b14c066a
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)
repository.mail.fl_str_mv
_version_ 1802117817794822144