ScrumCity: synchronised visualisation of software process and product artefacts
Software comprehension is a complex and ongoing challenge facing the software development industry. The often immense number of interrelated components in contemporary software systems places a high cognitive load on software stakeholders, whose job requires deep understanding and awareness of those constituting components. Among many approaches, 3D visualisation of the software static structure has recently emerged as a promising approach that is increasingly being demonstrated to significantly help in alleviating that cognitive burden by exploiting and leveraging humans’ natural perceptual abilities.
Furthermore, in addition to easing comprehension and increasing awareness of constituting software artefacts, this technology has the potential to bring visible various important aspects of the software process that could potentially make this technology a valuable tool for a wider spectrum of software practitioners. Recent literature, however, shows that the majority of prior research has limited itself to visualising the software product and in the best cases, only highlighted some effects of the software process.
This thesis identifies and attends to this gap in software visualisation research by introducing a novel visualisation approach named Conceptual Visualisation. It asserts that visualising the software process not only has several potentially beneficial implications for the software industry, but that from a cognitive perspective, visualising that process in the context of the software structure is particularly suitable and significant to increase human awareness and understanding of both the processes and their implemented product artefacts. The proposed approach is designed and constructed following a systems development research methodology and adhering to the principles of sound design science research. It is then assessed via functional demonstration, being applied to six open source systems of varying size and complexity. Conceptual Visualisation is shown to make a novel contribution to the software visualisation research literature, addressing many prior stated requirements in doing so. Once developed beyond a proof of concept, its use in practice should bring multiple benefits to a range of software stakeholders.