Busca avançada
Ano de início
Entree
(Referência obtida automaticamente do Web of Science, por meio da informação sobre o financiamento pela FAPESP e o número do processo correspondente, incluída na publicação pelos autores.)

A Metrics Suite for code annotation assessment

Texto completo
Autor(es):
Lima, Phyllipe [1] ; Guerra, Eduardo [1] ; Meirelles, Paulo [2, 3] ; Kanashiro, Lucas [2] ; Silva, Helio [1] ; Silveira, Fabio Fagundes [4]
Número total de Autores: 6
Afiliação do(s) autor(es):
[1] Natl Inst Space Res INPE, Sao Jose Dos Campos - Brazil
[2] Univ Sao Paulo, IME, Sao Paulo - Brazil
[3] Univ Brasilia, FGA, UnB, Brasilia, DF - Brazil
[4] Univ Fed Sao Paulo, ICT, UNIFESP, Sao Paulo - Brazil
Número total de Afiliações: 4
Tipo de documento: Artigo Científico
Fonte: JOURNAL OF SYSTEMS AND SOFTWARE; v. 137, p. 163-183, MAR 2018.
Citações Web of Science: 1
Resumo

Code annotation is a language feature that enables the introduction of custom metadata on programming elements. In Java, this feature was introduced on version 5, and today it is widely used by main enterprise application frameworks and APIs. Although this language feature potentially simplifies metadata configuration, its abuse and misuse can reduce source code readability and complicate its maintenance. The goal of this paper is to propose software metrics regarding annotations in the source code and analyze their distribution in real-world projects. We have defined a suite of metrics to assess characteristics of the usage of source code annotations in a code base. Our study collected data from 24947 classes extracted from open source projects to analyze the distribution of the proposed metrics. We developed a tool to automatically extract the metrics and provide a full report on annotations usage. Based on the analysis of the distribution, we defined an appropriate approach for the calculation of thresholds to interpret the metric values. The results allow the assessment of annotated code characteristics. Using the thresholds values, we proposed a way to interpret the use of annotations, which can reveal potential problems in the source code. (C) 2017 Elsevier Inc. All rights reserved. (AU)

Processo FAPESP: 14/16236-6 - Interface de programação para recuperação de metadados de elementos em linguagens orientadas a objetos
Beneficiário:Eduardo Martins Guerra
Modalidade de apoio: Auxílio à Pesquisa - Regular