Uma abordagem de validação de anotações de código com transparência de localização

Detalhes bibliográficos
Ano de defesa: 2016
Autor(a) principal: Siqueira Junior, Jose Lazaro de [UNIFESP]
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
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.