Paper Details

Communicating Process Architectures (CPA)
 Title: Relating and Visualising CSP, VCR and Structural Traces
 Conference: Communicating Process Architectures 2009
 Authors: Neil C. C. Browna, Marc L. Smithb
(a) School of Computing, University of Kent
(b) Computer Science Department, Vassar College
 Abstract: As well as being a useful tool for formal reasoning, a trace can provide insight into a concurrent program's behaviour, especially for the purposes of run-time analysis and debugging. Long-running programs tend to produce large traces which can be difficult to comprehend and visualise. We examine the relationship between three types of traces (CSP, VCR and Structural), establish an ordering and describe methods for conversion between the trace types. Structural traces preserve the structure of composition and reveal the repetition of individual processes, and are thus well-suited to visualisation. We introduce the Starving Philosophers to motivate the value of structural traces for reasoning about behaviour not easily predicted from a program's specification. A remaining challenge is to integrate structural traces into a more formal setting, such as the Unifying Theories of Programming -- however, structural traces do provide a useful framework for analysing large systems. 

BibTeX Entry

Full paper