TY - GEN
T1 - Abstracting Program Dependencies Using the Method Dependence Graph
AU - Cai, Haipeng
AU - Santelices, Raul
N1 - Publisher Copyright:
© 2015 IEEE.
PY - 2015/9/21
Y1 - 2015/9/21
N2 - While empowering a wide range of software engineering tasks, the traditional fine-grained software dependence (TSD) model can face great scalability challenges that hinder its applications. Many dependence abstraction approaches have been proposed, yet most of them either target very specific clients or model partial dependencies only, while others have not been fully evaluated for their accuracy with respect to the TSD model, especially in approximating forward dependencies on object-oriented programs. To fill this gap, we present a new dependence abstraction called the method dependence graph (MDG) that approximates the TSD model at method level, and compare it against a recent TSD abstraction, called the Static-Exectue-After (SEA), concerning forward-dependence approximation. We also evaluate the cost-effectiveness of both approaches in the application context of impact analysis. Our results show that the MDG can approximate TSD safely, for method-level forward dependence at least, with little loss of precision yet huge gain in efficiency, and for the same purpose, while both are safe, the MDG can achieve significantly higher precision than SEA at practical costs.
AB - While empowering a wide range of software engineering tasks, the traditional fine-grained software dependence (TSD) model can face great scalability challenges that hinder its applications. Many dependence abstraction approaches have been proposed, yet most of them either target very specific clients or model partial dependencies only, while others have not been fully evaluated for their accuracy with respect to the TSD model, especially in approximating forward dependencies on object-oriented programs. To fill this gap, we present a new dependence abstraction called the method dependence graph (MDG) that approximates the TSD model at method level, and compare it against a recent TSD abstraction, called the Static-Exectue-After (SEA), concerning forward-dependence approximation. We also evaluate the cost-effectiveness of both approaches in the application context of impact analysis. Our results show that the MDG can approximate TSD safely, for method-level forward dependence at least, with little loss of precision yet huge gain in efficiency, and for the same purpose, while both are safe, the MDG can achieve significantly higher precision than SEA at practical costs.
KW - Dependence abstraction
KW - impact analysis
KW - method dependence graph
KW - slicing
UR - https://www.scopus.com/pages/publications/84962053259
U2 - 10.1109/QRS.2015.18
DO - 10.1109/QRS.2015.18
M3 - Conference contribution
AN - SCOPUS:84962053259
T3 - Proceedings - 2015 IEEE International Conference on Software Quality, Reliability and Security, QRS 2015
SP - 49
EP - 58
BT - Proceedings - 2015 IEEE International Conference on Software Quality, Reliability and Security, QRS 2015
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - IEEE International Conference on Software Quality, Reliability and Security, QRS 2015
Y2 - 3 August 2015 through 5 August 2015
ER -