1 research outputs found
DISTEA: Efficient Dynamic Impact Analysis for Distributed Systems
Dynamic impact analysis is a fundamental technique for understanding the
impact of specific program entities, or changes to them, on the rest of the
program for concrete executions. However, existing techniques are either
inapplicable or of very limited utility for distributed programs running in
multiple concurrent processes. This paper presents DISTEA, a technique and tool
for dynamic impact analysis of distributed systems. By partially ordering
distributed method-execution events and inferring causality from the ordered
events, DISTEA can predict impacts propagated both within and across process
boundaries. We implemented DISTEA for Java and applied it to four distributed
programs of various types and sizes, including two enterprise systems. We also
evaluated the precision and practical usefulness of DISTEA, and demonstrated
its application in program comprehension, through two case studies. The results
show that DISTEA is highly scalable, more effective than existing alternatives,
and instrumental to understanding distributed systems and their executions.Comment: 12 pages, 4 figures, 4 table