The Annotation Visualizer (AVisualizer) is a software visualization tool that aims to aid researches and developers in analyzing and comprehending code annotations distributions. The visualization is generated based on a suite software metrics dedicated to code annotations.
The suite is composed of 9 metrics proposed and defined in the the paper A Metrics Suite for Code Annoation Assessment
- AC: Annotations in Class
- UAC: Unique Annotations in Class
- ASC: Annotation Schema in Class
- AED: Annotation in Element Declaration
- AA: Attributes in Annotation
- ANL: Annotation Nesting Level
- LOCAD: LOC in Annotation Declaration
- NEC: Number of Elements in Class
- NAEC: Number of Annotated Elements in Class
The collection of the metrics values is performed by the Annotation Sniffer (ASniffer). The generated JSON report is used as input for the AVisualizer.
We are proposing three different polymetrics views for code annotations. They are all hierarchical view based on circle packs.
- System View: In this view we are interested in observing how annotation schemas are distributed in the packages. This view has no information of classes.
Example of the System View for a Java Software
- Package View: In this view we are interested in observing how annotations are distributed inside a class, based on their schema. In this view we have no information of how the annotations are distributed between the code elements.
Example of the Package View for a Java Software
- Class View: In this view we group the annotation inside a class based on their code elements.
🚧 Work In Progress... 🚧