An approach for tracing and understanding asynchronous architectures

Applications built in a strongly decoupled, event-based interaction style have many commendable characteristics, including ease of dynamic configuration, accommodation of platform heterogeneity, and ease of distribution over a network. It is not always easy to humanly grasp the dynamic behavior of such applications, since many threads are active and events are asynchronously (and profusely) transmitted. We present a set of requirements for an aid to assist in the human understanding and exploration of the behavior of such applications through the incremental refinement of rules for determining causality relationships between messages sent among components. A prototype tool is presented, indicating one viable approach to meeting these requirements. Experience with the tool reinforces some of the requirements and indicates others.

[1]  Daniel Jackson,et al.  Elements of style: analyzing a software design feature with a counterexample detector , 1996, ISSTA '96.

[2]  David C. Luckham,et al.  Complex Event Processing in Distributed Systems , 1998 .

[3]  Shing-Chi Cheung,et al.  Checking subsystem safety properties in compositional reachability analysis , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.

[4]  Maria Beatriz Carmo,et al.  Monitoring and debugging message passing applications with MPVisualizer , 2000, Proceedings 8th Euromicro Workshop on Parallel and Distributed Processing.

[5]  Acm Sigsoft,et al.  Proceedings 18th IEEE International Conference on Automated Software Engineering , 2003, 18th IEEE International Conference on Automated Software Engineering, 2003. Proceedings..

[6]  Walter Mann,et al.  Correction to "Specification and Analysis of System Architecture Using Rapide" , 1995, IEEE Trans. Software Eng..

[7]  C LuckhamDavid,et al.  Specification and Analysis of System Architecture Using Rapide , 1995 .

[8]  Friedemann Mattern,et al.  Detecting causal relationships in distributed computations: In search of the holy grail , 1994, Distributed Computing.

[9]  Alexander Ran,et al.  Third Eye - specification-based analysis of software execution traces , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[10]  Joanne M. Atlee,et al.  State-Based Model Checking of Event-Driven System Requirements , 1993, IEEE Trans. Software Eng..

[11]  Robert Hood,et al.  Trace-driven debugging of message passing programs , 1998, Proceedings of the First Merged International Parallel Processing Symposium and Symposium on Parallel and Distributed Processing.