SOFTWARE ARCHITECTURE VISUALIZATION USING BUBBLETEA - Prawira Nugroho, Aditya
The increasing complexity of software makes it difficult for developers to understand. The location of components in the software architecture is challenging to map directly without tools, and implementation code often deviates from the architecture. Visualization of software components and architecture can aid understanding and show the position of components in relation to the architecture along with the quality of their implementation code. This final project creates a visualization tool that visualizes the architecture and the location of its components. The visualization tool utilizes a layer-based architecture and a modified bubble chart to recursively represent software components, referred to as BubbleTea. In placing components, a placement algorithm is used to determine their position relative to the architectural layers. The layered architecture used consists of presentation, service, domain, and data source layers. The visualization adds a "not classified" layer to highlight components that cannot be mapped to the architecture. The implementation of the visualization tool's algorithm is tested using specific test cases and provides visualization results that meet expectations. The visualization tool is tested with participants using k9mail software test data. The test results show that the visualization tool can map the location of components and indicate the quality of the implementation code. Additionally, participants feel that the visualization tool helps in understanding the software in terms of code quality and implementation.