Enhancing Compositional Static Analysis with Dynamic Analysis. Distefano, D., Marescotti, M., Åhs, C. T, Cela, S., Cunha Sampaio, G., Grigore, R., Hajdu, Á., Kapus, T., Mao, K., & Suzanne, T. In Proceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering, pages 2121-–2129, 2024. ACM.
Pdf
Link doi abstract bibtex 2 downloads In this paper we introduce a novel method for improving static analysis of real code by using dynamic analysis. We have implemented our technique to enhance the Infer static analyzer for Erlang by supplementing its analysis with data obtained by FAUSTA dynamic analysis. We present the technical details of the algorithm combining static and dynamic analysis and a case study on its evaluation on WhatsApp's Erlang code to detect software defects. Results show an increase in detected bugs in 76% of the runs when data from dynamic analysis is used. In particular, on average, data provided by dynamic analysis for 1 function enables static analysis of 2.1 additional functions. Moreover, dynamic data enabled analysis of a property not verifiable using static analysis alone.
@inproceedings{ase2024,
author = {Distefano, Dino and Marescotti, Matteo and {\AA}hs, Cons T and Cela, Sopot and Cunha Sampaio, Gabriela and Grigore, Radu and Hajdu, \'Akos and Kapus, Timotej and Mao, Ke and Suzanne, Thibault},
title = {Enhancing Compositional Static Analysis with Dynamic Analysis},
year = {2024},
publisher = {ACM},
booktitle = {Proceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering},
doi = {10.1145/3691620.3695599},
pages = {2121-–2129},
url_pdf = {https://hajduakos.github.io/publications/ase2024.pdf},
url_link = {https://doi.org/10.1145/3691620.3695599},
type = {Conference},
abstract = {In this paper we introduce a novel method for improving static analysis of real code by using dynamic analysis. We have implemented our technique to enhance the Infer static analyzer for Erlang by supplementing its analysis with data obtained by FAUSTA dynamic analysis. We present the technical details of the algorithm combining static and dynamic analysis and a case study on its evaluation on WhatsApp's Erlang code to detect software defects. Results show an increase in detected bugs in 76\% of the runs when data from dynamic analysis is used. In particular, on average, data provided by dynamic analysis for 1 function enables static analysis of 2.1 additional functions. Moreover, dynamic data enabled analysis of a property not verifiable using static analysis alone.},
}
Downloads: 2
{"_id":"wvHzjmQgScmJt78zF","bibbaseid":"distefano-marescotti-hs-cela-cunhasampaio-grigore-hajdu-kapus-etal-enhancingcompositionalstaticanalysiswithdynamicanalysis-2024","author_short":["Distefano, D.","Marescotti, M.","Åhs, C. T","Cela, S.","Cunha Sampaio, G.","Grigore, R.","Hajdu, Á.","Kapus, T.","Mao, K.","Suzanne, T."],"bibdata":{"bibtype":"inproceedings","type":"Conference","author":[{"propositions":[],"lastnames":["Distefano"],"firstnames":["Dino"],"suffixes":[]},{"propositions":[],"lastnames":["Marescotti"],"firstnames":["Matteo"],"suffixes":[]},{"propositions":[],"lastnames":["Åhs"],"firstnames":["Cons","T"],"suffixes":[]},{"propositions":[],"lastnames":["Cela"],"firstnames":["Sopot"],"suffixes":[]},{"propositions":[],"lastnames":["Cunha","Sampaio"],"firstnames":["Gabriela"],"suffixes":[]},{"propositions":[],"lastnames":["Grigore"],"firstnames":["Radu"],"suffixes":[]},{"propositions":[],"lastnames":["Hajdu"],"firstnames":["Ákos"],"suffixes":[]},{"propositions":[],"lastnames":["Kapus"],"firstnames":["Timotej"],"suffixes":[]},{"propositions":[],"lastnames":["Mao"],"firstnames":["Ke"],"suffixes":[]},{"propositions":[],"lastnames":["Suzanne"],"firstnames":["Thibault"],"suffixes":[]}],"title":"Enhancing Compositional Static Analysis with Dynamic Analysis","year":"2024","publisher":"ACM","booktitle":"Proceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering","doi":"10.1145/3691620.3695599","pages":"2121-–2129","url_pdf":"https://hajduakos.github.io/publications/ase2024.pdf","url_link":"https://doi.org/10.1145/3691620.3695599","abstract":"In this paper we introduce a novel method for improving static analysis of real code by using dynamic analysis. We have implemented our technique to enhance the Infer static analyzer for Erlang by supplementing its analysis with data obtained by FAUSTA dynamic analysis. We present the technical details of the algorithm combining static and dynamic analysis and a case study on its evaluation on WhatsApp's Erlang code to detect software defects. Results show an increase in detected bugs in 76% of the runs when data from dynamic analysis is used. In particular, on average, data provided by dynamic analysis for 1 function enables static analysis of 2.1 additional functions. Moreover, dynamic data enabled analysis of a property not verifiable using static analysis alone.","bibtex":"@inproceedings{ase2024,\n author = {Distefano, Dino and Marescotti, Matteo and {\\AA}hs, Cons T and Cela, Sopot and Cunha Sampaio, Gabriela and Grigore, Radu and Hajdu, \\'Akos and Kapus, Timotej and Mao, Ke and Suzanne, Thibault},\n title = {Enhancing Compositional Static Analysis with Dynamic Analysis},\n year = {2024},\n publisher = {ACM},\n booktitle = {Proceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering},\n doi = {10.1145/3691620.3695599},\n pages = {2121-–2129},\n\n url_pdf = {https://hajduakos.github.io/publications/ase2024.pdf},\n url_link = {https://doi.org/10.1145/3691620.3695599},\n\n type = {Conference},\n\n abstract = {In this paper we introduce a novel method for improving static analysis of real code by using dynamic analysis. We have implemented our technique to enhance the Infer static analyzer for Erlang by supplementing its analysis with data obtained by FAUSTA dynamic analysis. We present the technical details of the algorithm combining static and dynamic analysis and a case study on its evaluation on WhatsApp's Erlang code to detect software defects. Results show an increase in detected bugs in 76\\% of the runs when data from dynamic analysis is used. In particular, on average, data provided by dynamic analysis for 1 function enables static analysis of 2.1 additional functions. Moreover, dynamic data enabled analysis of a property not verifiable using static analysis alone.},\n}\n\n","author_short":["Distefano, D.","Marescotti, M.","Åhs, C. T","Cela, S.","Cunha Sampaio, G.","Grigore, R.","Hajdu, Á.","Kapus, T.","Mao, K.","Suzanne, T."],"key":"ase2024","id":"ase2024","bibbaseid":"distefano-marescotti-hs-cela-cunhasampaio-grigore-hajdu-kapus-etal-enhancingcompositionalstaticanalysiswithdynamicanalysis-2024","role":"author","urls":{" pdf":"https://hajduakos.github.io/publications/ase2024.pdf"," link":"https://doi.org/10.1145/3691620.3695599"},"metadata":{"authorlinks":{}},"downloads":2},"bibtype":"inproceedings","biburl":"https://hajduakos.github.io/publications.bib","dataSources":["WFubm6dru5DutkSZW"],"keywords":[],"search_terms":["enhancing","compositional","static","analysis","dynamic","analysis","distefano","marescotti","åhs","cela","cunha sampaio","grigore","hajdu","kapus","mao","suzanne"],"title":"Enhancing Compositional Static Analysis with Dynamic Analysis","year":2024,"downloads":2}