Uma abordagem de validação de anotações de código com transparência de localização
Ano de defesa: | 2016 |
---|---|
Autor(a) principal: | |
Orientador(a): | |
Banca de defesa: | |
Tipo de documento: | Dissertação |
Tipo de acesso: | Acesso aberto |
Idioma: | por |
Instituição de defesa: |
Universidade Federal de São Paulo (UNIFESP)
|
Programa de Pós-Graduação: |
Não Informado pela instituição
|
Departamento: |
Não Informado pela instituição
|
País: |
Não Informado pela instituição
|
Palavras-chave em Português: | |
Link de acesso: | https://sucupira.capes.gov.br/sucupira/public/consultas/coleta/trabalhoConclusao/viewTrabalhoConclusao.jsf?popup=true&id_trabalho=3361819 https://repositorio.unifesp.br/handle/11600/47284 |
Resumo: | The use of metadata in software development, especially by code annotations, has emerged to complement some limitations of object-oriented programming. A recent study revealed that a lack of validation on the configured metadata can lead to bugs hard to identify and correct. There are approaches to optimize metadata configuration that add the annotation out of the target code element, such as its definition of the enclosing code element or indirectly inside other annotations. Annotation validation rules that rely on the presence of other annotations are specially hard to perform when it is possible to configure it out of the target element. Nevertheless, available approaches for annotation validation in the literature consider their presence only in the target element. This thesis presents an approach for code annotations validation in object-oriented software with location transparency, called AVAC, which allows indirectly metadata definition in an application. Based on this approach, we implemented a meta-framework for code annotation validation, named EsfingeMETADATA. To assess the EsfingeMETADATA, we analyzed the application of such meta-framework in a set of commonly used annotation to configure features of an application, as well as in a case study with an existing framework with an extensive use of code annotations. The obtained results support our hypothesis that the developed approach is capable of decoupling the annotation location from the validation rules, providing the identification of inconsistencies on metadata configuration. |