metaisbeta / avisualizer

Tool to visualize code annotation metrics
GNU Affero General Public License v3.0
6 stars 5 forks source link

AVisualizer Heroku

Annotation Visualizer

A Tool to Visualize Code Annotations Metrics Distribution

The Annotation Visualizer (AVisualizer) is a software visualization tool that aims to aid researches and developers in analyzing and comprehending code annotations distributions. This tool was used to support our research paper CADV - Code Annotations Distribution Visualization.

Code Annotation Metrics

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

Code Annotation Metrics

Basic Building Blocks

Building Blocks Basic Building Blocks of AVisualizer

The backend of AVisualizer is mostly concernd with extracting the metrics values and serving the frontend. The extraction of the metrics values is performed by the Annotation Sniffer (ASniffer). The generated JSON report is used as input for the AVisualizer frontend. The backend is wrapped as a Spring Boot App

The frontend of AVisualizer is build using the React library React Library and D3.js.

Annotations Visualization

The CADV is a software visualization approach based on circle packing. It is composed of three different views for code annotations. The System View, Package View and, Class View.

System View Example Example of the System View for project GeoStore

Package View Example Example of the Package View

Class View Example Example of the Class View

Executing AVisualizer

The first step is to build the application using Maven

mvn clean package

The executable jar file will be located in the folder avisualizer-back/target.

Run it with the command

java -jar avisualizer-back/target/avisualizer-back.jar

The application will available on http://localhost:8080

License

GitHub