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...

Full description

Bibliographic Details
Main Author: Shafiee, Arya
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.
Description
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.