[Pragmatics] Architecture Comparison Framework for Software Project Visualization
Visualization of parts of a project using the OSGi framework for their architecture
Big software projects almost exclusively use some architectural frameworks to structure and modularize their dependencies, services, and other aspects.
Yet, many projects use special frameworks and individual configurations, for which not many tools to automatically document, visualize and compare such configurations exist.
The Software Project Visualization (SPViz) tool lets software developers and architects describe the architecture of any project and generates an interactive visualization tool to navigate through and document their architecture.
The tool is inspired by OSGiViz and uses the KLighD framework for its visualization in Eclipse or web environments such as VS Code.
It was developed at the CAU to improve the tooling for real-world architectures of our funding industry partner Scheidt & Bachmann System Technik GmbH working in the railway domain.
The SPViz tool currently only supports visualizing existing architectures.
With this thesis proposal we suggest to extend that idea by describing architectures in a textual or visual editor and comparing architectures modeled that way to existing architectures, or architecture revisions against each other.
This will enable verification of architecture design and their implementation, the evolution of software.
Goals
- Develop a visualization for differences between set architectures using SPViz and KLighD
- Conceptualize and develop a model for (parts of) software architectures for SPViz to compare against existing project architectures
- (going further/optional) Develop a Domain-Specific Language (DSL) as a human-readable form of existing architecture descriptions
- (going further/optional) Generate code (-snippets) from modeled architectures
Scope
Master's (Bachelor's) Thesis
Related Work/Literature
Niklas Rentz, Christian Dams, and Reinhard von Hanxleden. Interactive Visualization for OSGi-based Projects. 2020 Working Conference on Software Visualization (VISSOFT). IEEE, 2020. PDF
Niklas Rentz, Reinhard von Hanxleden. SPViz: A DSL-Driven Approach for Software Project Visualization Tooling. CoRR, abs/2401.17063 January 2024. PDF
Involved Languages/Technologies
- Java/Xtend
- KLighD
- SPViz
- Eclipse and VS Code
- (Xtext/Langium)
Supervised By
Niklas Rentz in cooperation with Scheidt & Bachmann System Technik GmbH