Exploring Source Code in Style of Online Maps: An Application of the Web GIS Approach to Software Visualization
Software visualization helps to understand software, reduces the development costs of software and increases the overall odds of success of software projects. Despite the proven advantages, visualization is still not an essential part of modern software development. Given its potential, the low application of software visualization is paradoxical. One potential reason could be that existing tools are too diffcult to handle. A frequently used field of visualization is cartography. Web GIS (Web Geographic Information Systems) such as Google Maps, Bing Maps or OpenStreetMap are one type of tools in cartography and allow to visualize and explore geographic information as online maps. Web GIS are used by millions of people and have become an integral part of many peoples life. This thesis applies the popular Web GIS approach to software visualization. A software visualization tool that follows the Web GIS approach should be intuitive for experienced users of Web GIS and should have a lower barrier for its application. In this work, the Web GIS approach is described using an analysis of 13 Web GIS. Based on this, requirements and evaluation criteria are derived in order to verify, if a tool implements the Web GIS approach correctly. Furthermore, concepts and approaches are developed to realize the Web GIS approach for software visualization. The developed approaches are implemented in the prototype tool CodeCartographer. CodeCartographer is able to visualize code elements like geographic map elements are visualized in Web GIS. Moreover, it implements functionalities that enable the exploration of the visualized source code in the style of a Web GIS. The development of CodeCartographer shows that the Web GIS approach and software visualization are compatible.
Berlin, TU, Master Thesis, 2020