Phase Flow Diagram: A New Execution Trace Visualization Technique
Software maintenance tasks are known to be costly and challenging. The main challenge is that software maintenance must understand how the software system works before making any changes to it. This is due to lack of adequate documentation if it exists at all. Program analysis techniques aim to redu...
Main Author: | |
---|---|
Format: | Others |
Published: |
2013
|
Online Access: | http://spectrum.library.concordia.ca/978118/1/Shafiee_MASc_S2014.pdf Shafiee, Arya <http://spectrum.library.concordia.ca/view/creators/Shafiee=3AArya=3A=3A.html> (2013) Phase Flow Diagram: A New Execution Trace Visualization Technique. Masters thesis, Concordia University. |
Summary: | Software maintenance tasks are known to be costly and challenging. The main challenge is that software maintenance must understand how the software system works before making any changes to it. This is due to lack of adequate documentation if it exists at all. Program analysis techniques aim to reduce the impact of this problem. In this thesis, we focus on the ones that permit the understanding of the behavioural aspects of software. These techniques operate on execution traces, generated from the system under study.
Traces are difficult to work with because of their size. One way to reduce their complexity is to automatically divide their content into meaningful clusters, each representing a particular execution phase. This is known as trace segmentation. Trace segmentation research is relatively new. The focus has been on building robust algorithms that achieve acceptable accuracy.
In this thesis, we introduce a new trace visualization technique called Phase Flow Diagram to represent the execution phases and the relationship between them in a visual manner. The diagram has a number of notations that can be used by software engineers to represent a trace as a flow of execution phases instead of mere events. We introduce a supporting tool for the diagram. The new diagram and the tool are validated through a user study that involves several users. |
---|