Carleton University - School of Computer Science Honours Project
Fall 2020
Automatic software component analyzer and visualizer on Git server
Tianrui Ma
SCS Honours Project Image
ABSTRACT
Project visualization plays an important role in the software development cycle. It is especially helpful for understanding and maintaining the project. And, modern-day developers use version control to maintain and organize their software. So, this project is a combination of the git version control system together with code analysis tools to automatically visualize the projects stored in the git repositories. The approach of this project is to have git remote repositories set up on a machine with code analysis tools integrated into them as git hooks. The machine will also have a dashboard server set up so the developers can view the project visualization results (diagrams) on the dashboard server page. This project only supports analyzing java projects, and the project visualization includes source code file diagram, UML class diagram, class dependency diagram, and class change cost diagram.