Improving the scalability of tools incorporating sequence diagram visualizations of large execution traces
Sequence diagrams are a popular way to visualize dynamic software execution traces. However, they tend to be extremely large, causing significant scalability problems. Not only is it difficult from a technical perspective to build interactive sequence diagram tools that are able to display large tra...
Main Author: | |
---|---|
Other Authors: | |
Language: | English en |
Published: |
2011
|
Subjects: | |
Online Access: | http://hdl.handle.net/1828/3444 |
id |
ndltd-uvic.ca-oai-dspace.library.uvic.ca-1828-3444 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-uvic.ca-oai-dspace.library.uvic.ca-1828-34442015-01-29T16:51:43Z Improving the scalability of tools incorporating sequence diagram visualizations of large execution traces Myers, Del Storey, Margaret-Anne computer science software engineering reverse engineering uml dynamic analysis Sequence diagrams are a popular way to visualize dynamic software execution traces. However, they tend to be extremely large, causing significant scalability problems. Not only is it difficult from a technical perspective to build interactive sequence diagram tools that are able to display large traces, it is also difficult for people to understand them. While cognitive support theory exists to help cope with the later problem, no work to date has described how to implement the cognitive support theory in sequence diagram tools. In this thesis, we tackle both the technical and cognitive support problems. First, we use previous research about cognitive support feature requirements to design and engineer an interactive, widget-based sequence diagram visualization. After implementing the visualization, we use benchmarks to test its scalability and ensure that it is efficient enough to be used in realistic applications. Then, we present two novel approaches for reducing the cognitive overhead required to understand large sequence diagrams. The first approach is to compact sequence diagrams using loops found in source code. We present an algorithm that is able to compact diagrams by up to 80%. The second approach is called the trace-focused user interface which uses software reconnaissance to create a degree-of-interest model to help users focus on particular software features and navigate to portions of the sequence diagram that are related to those features. We present a small user study that indicates the viability of the trace-focused user interface. Finally, we present the results of a small survey that indicates that users of the software find the loop compaction and the trace-focused user interface both useful. Graduate 2011-08-10T20:02:17Z 2011-08-10T20:02:17Z 2011 2011-08-10 Thesis http://hdl.handle.net/1828/3444 English en Available to the World Wide Web |
collection |
NDLTD |
language |
English en |
sources |
NDLTD |
topic |
computer science software engineering reverse engineering uml dynamic analysis |
spellingShingle |
computer science software engineering reverse engineering uml dynamic analysis Myers, Del Improving the scalability of tools incorporating sequence diagram visualizations of large execution traces |
description |
Sequence diagrams are a popular way to visualize dynamic software execution traces. However, they tend to be extremely large, causing significant scalability problems. Not only is it difficult from a technical perspective to build interactive sequence diagram tools that are able to display large traces, it is also difficult for people to understand them. While cognitive support theory exists to help cope with the later problem, no work to date has described how to implement the cognitive support theory in sequence diagram tools. In this thesis, we tackle both the technical and cognitive support problems. First, we use previous research about cognitive support feature requirements to design and engineer an interactive, widget-based sequence diagram visualization. After implementing the visualization, we use benchmarks to test its scalability and ensure that it is efficient enough to be used in realistic applications. Then, we present two novel approaches for reducing the cognitive overhead required to understand large sequence diagrams. The first approach is to compact sequence diagrams using loops found in source code. We present an algorithm that is able to compact diagrams by up to 80%. The second approach is called the trace-focused user interface which uses software reconnaissance to create a degree-of-interest model to help users focus on particular software features and navigate to portions of the sequence diagram that are related to those features. We present a small user study that indicates the viability of the trace-focused user interface. Finally, we present the results of a small survey that indicates that users of the software find the loop compaction and the trace-focused user interface both useful. === Graduate |
author2 |
Storey, Margaret-Anne |
author_facet |
Storey, Margaret-Anne Myers, Del |
author |
Myers, Del |
author_sort |
Myers, Del |
title |
Improving the scalability of tools incorporating sequence diagram visualizations of large execution traces |
title_short |
Improving the scalability of tools incorporating sequence diagram visualizations of large execution traces |
title_full |
Improving the scalability of tools incorporating sequence diagram visualizations of large execution traces |
title_fullStr |
Improving the scalability of tools incorporating sequence diagram visualizations of large execution traces |
title_full_unstemmed |
Improving the scalability of tools incorporating sequence diagram visualizations of large execution traces |
title_sort |
improving the scalability of tools incorporating sequence diagram visualizations of large execution traces |
publishDate |
2011 |
url |
http://hdl.handle.net/1828/3444 |
work_keys_str_mv |
AT myersdel improvingthescalabilityoftoolsincorporatingsequencediagramvisualizationsoflargeexecutiontraces |
_version_ |
1716729325505478656 |