Table of Links
II. Approach
B. Proof of Concept Implementation
III. Envisioned Usage Scenarios
IV. Experiment Design and Demographics
VII. Conclusions and Future Work, Acknowledgment, and References
B. Target System and Task
ExplorViz’ SV visualizes a software system’s runtime behavior. However, it is not limited to application tracing of monolithic software systems, but also supports distributed tracing,6 e.g., network requests between applications that use distributed architectures. Since distributed software systems are pretty common nowadays, we incorporated this fact in our experiment. To achieve that, we used the distributed version of the Spring PetClinic7 as target system for the experiment. As done in the past [16] we recorded traces during the execution of use cases within the PetClinic. For the experiment, these were then provided as so called snapshots, i.e., aggregated runtime behavior, to the Frontend, resulting in a structural, ‘static’ SV of dynamic runtime behavior. We decided against using multiple snapshots so as not to overwhelm new users with the amount of features. However, this can be seen in the supplementary video of this work. The participants explored the target system by means of its source code as well as embedded SV and were asked to solve two tasks.
Table I depicts the program comprehension tasks that all participants had to solve during the experiment. We did not use metric analysis tasks such as ‘find the class with the
highest instance count’. Instead, the chosen tasks instructed the participants to structurally comprehend the software and find analogies based on the depicted runtime behavior. Therefore, the tasks of the experiment refer to a scenario as presented in SC1, i.e., a guided, task-oriented introduction for onboarding. With the focus on SC1, we intend to investigate both the noncollaborative and collaborative onboarding process. Therefore, T1 had to be solved alone and served as an introduction to both the target system and the use of our approach. T2 introduced the collaborative features, e.g., shared SV and synchronized text selection events, and asked the participants to work together.
Authors:
(1) Alexander Krause-Glau, Software Engineering Group, Kiel University, Kiel, Germany ([email protected]);
(2) Wilhelm Hasselbring, Software Engineering Group, Kiel University, Kiel, Germany ([email protected]).
This paper is