Immersive Software Archaeology: Comprehending Software Structure through Interactive Visualization in Virtual Reality

Adrian Hoff

    Publikation: Bog / Antologi / Rapport / Ph.D.-afhandlingPh.d.-afhandling

    Abstract

    Comprehending existing software systems is an activity relevant for, e.g., preparing the re-engineering of a legacy system. It is often complicated by missing or incomplete documentation and the absence of a system's original developers, making source code the only reliable source of information. However, exploring a software system solely by reading through its source code is a tedious and challenging task that, if possible at all, requires significant stamina and motivation. Visualizations can offer an overview of otherwise complex source code bases, making them a valuable tool for assisting software engineers in this exploration process.

    In this thesis, I present work on utilizing virtual reality (VR) to provide teams of software engineers with interactive, synchronized multi-user visualizations of source code, for the purpose of exploring software architecture while taking notes on insights and planning future actions. To foster software architecture exploration, the presented VR visualization methods are based on results from automated software clustering techniques. Further, they introduce concepts for mixing automatically interpreted freehand drawing in VR with multimedia annotations, so that engineers can explore software systems in long-lived sessions.

    I demonstrate the presented visualization methods in tool implementations and assess via empirical studies their suitability for assisting engineers in comprehending software systems. The results of the studies show that VR software visualization is suitable for assisting engineers -- especially those with less experience -- in comprehending a subject system's architectural structure. Regarding note-taking, the studies demonstrate that freehand sketching in VR is useful for capturing high-level views on system architecture, while multi-media annotations (such as audio recordings) are a valuable means for more general notes. Lastly, the studies show that software engineers value synchronized multi-user VR software visualization for focused exploration sessions with vivid communication where even with little training and despite their unfamiliarity with VR, engineers are able to gain correct insights into a subject system.
    OriginalsprogEngelsk
    UdgivelsesstedCopenhagen
    ForlagIT-Universitetet i København
    Antal sider261
    ISBN (Trykt)978-87-7949-523-4
    StatusUdgivet - 2024
    NavnITU-DS
    Nummer226
    ISSN1602-3536

    Fingeraftryk

    Dyk ned i forskningsemnerne om 'Immersive Software Archaeology: Comprehending Software Structure through Interactive Visualization in Virtual Reality'. Sammen danner de et unikt fingeraftryk.

    Citationsformater