TY - GEN
T1 - DistIA
T2 - 31st IEEE/ACM International Conference on Automated Software Engineering, ASE 2016
AU - Cai, Haipeng
AU - Thain, Douglas
N1 - Publisher Copyright:
© 2016 ACM.
PY - 2016/8/25
Y1 - 2016/8/25
N2 - 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 DISTIA, a dynamic analysis of distributed systems that predicts impacts propagated both within and across process boundaries by partially ordering distributed method-execution events, inferring causality from the ordered events, and exploiting message-passing semantics. We applied DISTIA to large distributed systems of various architectures and sizes, for which it on average finishes the entire analysis within one minute and safely reduces impact-set sizes by over 43% relative to existing options with run-time overhead less than 8%. Moreover, two case studies initially demonstrated the precision of DISTIA and its utility in distributed system understanding. While conservative thus subject to false positives, DISTIA balances precision and efficiency to offer costeffective options for evolving distributed programs.
AB - 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 DISTIA, a dynamic analysis of distributed systems that predicts impacts propagated both within and across process boundaries by partially ordering distributed method-execution events, inferring causality from the ordered events, and exploiting message-passing semantics. We applied DISTIA to large distributed systems of various architectures and sizes, for which it on average finishes the entire analysis within one minute and safely reduces impact-set sizes by over 43% relative to existing options with run-time overhead less than 8%. Moreover, two case studies initially demonstrated the precision of DISTIA and its utility in distributed system understanding. While conservative thus subject to false positives, DISTIA balances precision and efficiency to offer costeffective options for evolving distributed programs.
KW - Distributed systems
KW - Dynamic partial ordering
KW - Impact analysis
UR - https://www.scopus.com/pages/publications/84989162188
U2 - 10.1145/2970276.2970352
DO - 10.1145/2970276.2970352
M3 - Conference contribution
AN - SCOPUS:84989162188
T3 - ASE 2016 - Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering
SP - 344
EP - 355
BT - ASE 2016 - Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering
A2 - Khurshid, Sarfraz
A2 - Lo, David
A2 - Apel, Sven
PB - Association for Computing Machinery, Inc
Y2 - 3 September 2016 through 7 September 2016
ER -