Mining Message Sequence Graphs
Publication Type
Conference Proceeding Article
Publication Date
5-2011
Abstract
Dynamic specification mining involves discovering software behavior from traces for the purpose of program comprehension and bug detection. However, in concurrent/distributed programs, the inherent partial order relationships among events occurring across processes pose a big challenge to specification mining. In this paper, we propose a framework for mining partial orders so as to understand concurrent program behavior. Our miner takes in a set of concurrent program traces, and produces a message sequence graph (MSG) to represent the concurrent program behavior. An MSG represents a graph where the nodes of the graph are partial orders, represented as Message Sequence Charts. Mining an MSG allows us to understand concurrent behaviors since the nodes of the MSG depict important ``phases" or ``interaction snippets" involving several concurrently executing processes. Experiments on mining behaviors of several fairly complex distributed systems show that our miner can produce the corresponding MSGs with both high precision and recall.
Discipline
Software Engineering
Research Areas
Software Systems
Publication
ICSE 2011: Proceedings of the 2011 International Conference on Software Engineering, May 21-28, Waikkiki, Honolulu, Hawaii
First Page
91
Last Page
100
ISBN
9781450304450
Identifier
10.1145/1985793.1985807
Publisher
ACM
City or Country
Waikkiki, HI
Citation
KUMAR, Sandeep; KHOO, Siau-Cheng; Roychoudhury, Abhik; and LO, David.
Mining Message Sequence Graphs. (2011). ICSE 2011: Proceedings of the 2011 International Conference on Software Engineering, May 21-28, Waikkiki, Honolulu, Hawaii. 91-100.
Available at: https://ink.library.smu.edu.sg/sis_research/1346
Additional URL
http://doi.org/10.1145/1985793.1985807