Annotation Sniffer: A tool to Extract Code Annotations Metrics
Phyllipe Lima, Eduardo Guerra, Paulo Meirelles · The Journal of Open Source Software · 2020
Enterprise Java frameworks and APIs such as JPA (Java Persistence API), Spring, EJB (Enterprise Java Bean), and JUnit make extensive use of code annotations as means to allow applications to configure custom metadata and execute specific behavior.Observing the top 30 ranked Java projects on GitHub, they have, on average, 76% of classes with at least one annotation.Some projects may have more than 90% of its classes annotated.To measure code annotations usage and analyze their distribution, our work in (P.Lima et al., 2018) proposed a novel suite of software metrics dedicated to code annotations.We used a Percentile Rank Analysis approach (Meirelles, 2013) to obtain threshold values.