[{"keyword":["inter-procedural static analysis","software product lines","preprocessor","LLVM","C/C++"],"language":[{"iso":"eng"}],"publication":"Automated Software Engineering","abstract":[{"text":"<jats:title>Abstract</jats:title><jats:p>Many critical codebases are written in C, and most of them use preprocessor directives to encode variability, effectively encoding software product lines. These preprocessor directives, however, challenge any static code analysis. SPLlift, a previously presented approach for analyzing software product lines, is limited to Java programs that use a rather simple feature encoding and to analysis problems with a finite and ideally small domain. Other approaches that allow the analysis of real-world C software product lines use special-purpose analyses, preventing the reuse of existing analysis infrastructures and ignoring the progress made by the static analysis community. This work presents <jats:sc>VarAlyzer</jats:sc>, a novel static analysis approach for software product lines. <jats:sc>VarAlyzer</jats:sc> first transforms preprocessor constructs to plain C while preserving their variability and semantics. It then solves any given distributive analysis problem on transformed product lines in a variability-aware manner. <jats:sc>VarAlyzer</jats:sc> ’s analysis results are annotated with feature constraints that encode in which configurations each result holds. Our experiments with 95 compilation units of OpenSSL show that applying <jats:sc>VarAlyzer</jats:sc> enables one to conduct inter-procedural, flow-, field- and context-sensitive data-flow analyses on entire product lines for the first time, outperforming the product-based approach for highly-configurable systems.</jats:p>","lang":"eng"}],"publisher":"Springer Science and Business Media LLC","date_created":"2022-03-25T07:41:26Z","title":"Static data-flow analysis for software product lines in C","issue":"1","year":"2022","project":[{"_id":"12","name":"SFB 901 - B4: SFB 901 - Subproject B4"},{"name":"SFB 901 - B: SFB 901 - Project Area B","_id":"3"},{"name":"SFB 901: SFB 901","_id":"1"}],"_id":"30511","user_id":"15249","department":[{"_id":"76"}],"article_number":"35","article_type":"original","alternative_title":["Revoking the preprocessor’s special role"],"type":"journal_article","status":"public","oa":"1","date_updated":"2025-12-04T10:42:38Z","author":[{"orcid":"0000-0002-8674-1859","last_name":"Schubert","full_name":"Schubert, Philipp","id":"60543","first_name":"Philipp"},{"first_name":"Paul","full_name":"Gazzillo, Paul","last_name":"Gazzillo"},{"first_name":"Zach","full_name":"Patterson, Zach","last_name":"Patterson"},{"first_name":"Julian","full_name":"Braha, Julian","last_name":"Braha"},{"id":"55745","full_name":"Schiebel, Fabian Benedikt","orcid":"0009-0008-6867-9802","last_name":"Schiebel","first_name":"Fabian Benedikt"},{"orcid":"0000-0001-9848-2017","last_name":"Hermann","full_name":"Hermann, Ben","id":"66173","first_name":"Ben"},{"last_name":"Wei","full_name":"Wei, Shiyi","first_name":"Shiyi"},{"orcid":"0000-0003-3470-3647","last_name":"Bodden","id":"59256","full_name":"Bodden, Eric","first_name":"Eric"}],"volume":29,"main_file_link":[{"open_access":"1","url":"https://link.springer.com/article/10.1007/s10515-022-00333-1"}],"doi":"10.1007/s10515-022-00333-1","publication_status":"published","publication_identifier":{"issn":["0928-8910","1573-7535"]},"citation":{"mla":"Schubert, Philipp, et al. “Static Data-Flow Analysis for Software Product Lines in C.” <i>Automated Software Engineering</i>, vol. 29, no. 1, 35, Springer Science and Business Media LLC, 2022, doi:<a href=\"https://doi.org/10.1007/s10515-022-00333-1\">10.1007/s10515-022-00333-1</a>.","short":"P. Schubert, P. Gazzillo, Z. Patterson, J. Braha, F.B. Schiebel, B. Hermann, S. Wei, E. Bodden, Automated Software Engineering 29 (2022).","bibtex":"@article{Schubert_Gazzillo_Patterson_Braha_Schiebel_Hermann_Wei_Bodden_2022, title={Static data-flow analysis for software product lines in C}, volume={29}, DOI={<a href=\"https://doi.org/10.1007/s10515-022-00333-1\">10.1007/s10515-022-00333-1</a>}, number={135}, journal={Automated Software Engineering}, publisher={Springer Science and Business Media LLC}, author={Schubert, Philipp and Gazzillo, Paul and Patterson, Zach and Braha, Julian and Schiebel, Fabian Benedikt and Hermann, Ben and Wei, Shiyi and Bodden, Eric}, year={2022} }","apa":"Schubert, P., Gazzillo, P., Patterson, Z., Braha, J., Schiebel, F. B., Hermann, B., Wei, S., &#38; Bodden, E. (2022). Static data-flow analysis for software product lines in C. <i>Automated Software Engineering</i>, <i>29</i>(1), Article 35. <a href=\"https://doi.org/10.1007/s10515-022-00333-1\">https://doi.org/10.1007/s10515-022-00333-1</a>","ieee":"P. Schubert <i>et al.</i>, “Static data-flow analysis for software product lines in C,” <i>Automated Software Engineering</i>, vol. 29, no. 1, Art. no. 35, 2022, doi: <a href=\"https://doi.org/10.1007/s10515-022-00333-1\">10.1007/s10515-022-00333-1</a>.","chicago":"Schubert, Philipp, Paul Gazzillo, Zach Patterson, Julian Braha, Fabian Benedikt Schiebel, Ben Hermann, Shiyi Wei, and Eric Bodden. “Static Data-Flow Analysis for Software Product Lines in C.” <i>Automated Software Engineering</i> 29, no. 1 (2022). <a href=\"https://doi.org/10.1007/s10515-022-00333-1\">https://doi.org/10.1007/s10515-022-00333-1</a>.","ama":"Schubert P, Gazzillo P, Patterson Z, et al. Static data-flow analysis for software product lines in C. <i>Automated Software Engineering</i>. 2022;29(1). doi:<a href=\"https://doi.org/10.1007/s10515-022-00333-1\">10.1007/s10515-022-00333-1</a>"},"intvolume":"        29"},{"date_updated":"2022-03-25T07:49:35Z","oa":"1","author":[{"id":"60543","full_name":"Schubert, Philipp","orcid":"0000-0002-8674-1859","last_name":"Schubert","first_name":"Philipp"},{"first_name":"Ben","id":"66173","full_name":"Hermann, Ben","last_name":"Hermann","orcid":"0000-0001-9848-2017"},{"id":"59256","full_name":"Bodden, Eric","orcid":"0000-0003-3470-3647","last_name":"Bodden","first_name":"Eric"}],"date_created":"2021-04-08T11:24:59Z","title":"Lossless, Persisted Summarization of Static Callgraph, Points-To and Data-Flow Analysis","main_file_link":[{"open_access":"1","url":"https://drops.dagstuhl.de/opus/volltexte/2021/14045/"}],"year":"2021","citation":{"ama":"Schubert P, Hermann B, Bodden E. Lossless, Persisted Summarization of Static Callgraph, Points-To and Data-Flow Analysis. In: <i>European Conference on Object-Oriented Programming (ECOOP)</i>. ; 2021.","apa":"Schubert, P., Hermann, B., &#38; Bodden, E. (2021). Lossless, Persisted Summarization of Static Callgraph, Points-To and Data-Flow Analysis. <i>European Conference on Object-Oriented Programming (ECOOP)</i>.","bibtex":"@inproceedings{Schubert_Hermann_Bodden_2021, title={Lossless, Persisted Summarization of Static Callgraph, Points-To and Data-Flow Analysis}, booktitle={European Conference on Object-Oriented Programming (ECOOP)}, author={Schubert, Philipp and Hermann, Ben and Bodden, Eric}, year={2021} }","short":"P. Schubert, B. Hermann, E. Bodden, in: European Conference on Object-Oriented Programming (ECOOP), 2021.","mla":"Schubert, Philipp, et al. “Lossless, Persisted Summarization of Static Callgraph, Points-To and Data-Flow Analysis.” <i>European Conference on Object-Oriented Programming (ECOOP)</i>, 2021.","ieee":"P. Schubert, B. Hermann, and E. Bodden, “Lossless, Persisted Summarization of Static Callgraph, Points-To and Data-Flow Analysis,” 2021.","chicago":"Schubert, Philipp, Ben Hermann, and Eric Bodden. “Lossless, Persisted Summarization of Static Callgraph, Points-To and Data-Flow Analysis.” In <i>European Conference on Object-Oriented Programming (ECOOP)</i>, 2021."},"_id":"21598","project":[{"name":"SFB 901 - Project Area B","_id":"3"},{"name":"SFB 901 - Subproject B4","_id":"12"},{"_id":"1","name":"SFB 901"}],"department":[{"_id":"76"}],"user_id":"60543","language":[{"iso":"eng"}],"publication":"European Conference on Object-Oriented Programming (ECOOP)","type":"conference","abstract":[{"text":"Static analysis is used to automatically detect bugs and security breaches, and aids compileroptimization. Whole-program analysis (WPA) can yield high precision, however causes long analysistimes and thus does not match common software-development workflows, making it often impracticalto use for large, real-world applications.This paper thus presents the design and implementation ofModAlyzer, a novel static-analysisapproach that aims at accelerating whole-program analysis by making the analysis modular andcompositional. It shows how to computelossless, persisted summaries for callgraph, points-to anddata-flow information, and it reports under which circumstances this function-level compositionalanalysis outperforms WPA.We implementedModAlyzeras an extension to LLVM and PhASAR, and applied it to 12 real-world C and C++ applications. At analysis time,ModAlyzermodularly and losslessly summarizesthe analysis effect of the library code those applications share, hence avoiding its repeated re-analysis.The experimental results show that the reuse of these summaries can save, on average, 72% ofanalysis time over WPA. Moreover, because it is lossless, the module-wise analysis fully retainsprecision and recall. Surprisingly, as our results show, it sometimes even yields precision superior toWPA. The initial summary generation, on average, takes about 3.67 times as long as WPA.","lang":"eng"}],"status":"public"},{"status":"public","type":"conference","publication":"SCAM '21: IEEE International Working Conference on Source Code Analysis and Manipulation (Engineering Track)","language":[{"iso":"eng"}],"user_id":"15249","department":[{"_id":"76"}],"project":[{"name":"SFB 901 - B: SFB 901 - Project Area B","_id":"3"},{"name":"SFB 901 - B4: SFB 901 - Subproject B4","_id":"12"},{"grant_number":"160364472","_id":"1","name":"SFB 901: SFB 901: On-The-Fly Computing - Individualisierte IT-Dienstleistungen in dynamischen Märkten "}],"_id":"26406","citation":{"short":"P. Schubert, B. Hermann, E. Bodden, R. Leer, in: SCAM ’21: IEEE International Working Conference on Source Code Analysis and Manipulation (Engineering Track), 2021.","bibtex":"@inproceedings{Schubert_Hermann_Bodden_Leer_2021, title={Into the Woods: Experiences from Building a Dataflow Analysis Framework for C/C++}, booktitle={SCAM ’21: IEEE International Working Conference on Source Code Analysis and Manipulation (Engineering Track)}, author={Schubert, Philipp and Hermann, Ben and Bodden, Eric and Leer, Richard}, year={2021} }","mla":"Schubert, Philipp, et al. “Into the Woods: Experiences from Building a Dataflow Analysis Framework for C/C++.” <i>SCAM ’21: IEEE International Working Conference on Source Code Analysis and Manipulation (Engineering Track)</i>, 2021.","apa":"Schubert, P., Hermann, B., Bodden, E., &#38; Leer, R. (2021). Into the Woods: Experiences from Building a Dataflow Analysis Framework for C/C++. <i>SCAM ’21: IEEE International Working Conference on Source Code Analysis and Manipulation (Engineering Track)</i>.","ama":"Schubert P, Hermann B, Bodden E, Leer R. Into the Woods: Experiences from Building a Dataflow Analysis Framework for C/C++. In: <i>SCAM ’21: IEEE International Working Conference on Source Code Analysis and Manipulation (Engineering Track)</i>. ; 2021.","chicago":"Schubert, Philipp, Ben Hermann, Eric Bodden, and Richard Leer. “Into the Woods: Experiences from Building a Dataflow Analysis Framework for C/C++.” In <i>SCAM ’21: IEEE International Working Conference on Source Code Analysis and Manipulation (Engineering Track)</i>, 2021.","ieee":"P. Schubert, B. Hermann, E. Bodden, and R. Leer, “Into the Woods: Experiences from Building a Dataflow Analysis Framework for C/C++,” 2021."},"year":"2021","title":"Into the Woods: Experiences from Building a Dataflow Analysis Framework for C/C++","date_created":"2021-10-18T12:52:12Z","author":[{"orcid":"0000-0002-8674-1859","last_name":"Schubert","full_name":"Schubert, Philipp","id":"60543","first_name":"Philipp"},{"first_name":"Ben","id":"66173","full_name":"Hermann, Ben","orcid":"0000-0001-9848-2017","last_name":"Hermann"},{"last_name":"Bodden","orcid":"0000-0003-3470-3647","id":"59256","full_name":"Bodden, Eric","first_name":"Eric"},{"last_name":"Leer","full_name":"Leer, Richard","first_name":"Richard"}],"date_updated":"2023-06-15T08:39:55Z"},{"citation":{"bibtex":"@inproceedings{Schubert_Sattler_Schiebel_Hermann_Bodden_2021, title={Modeling the Effects of Global Variables in Data-Flow Analysis for C/C++}, booktitle={2021 IEEE 21st International Working Conference on Source Code Analysis and Manipulation (SCAM)}, author={Schubert, Philipp and Sattler, Florian and Schiebel, Fabian Benedikt and Hermann, Ben and Bodden, Eric}, year={2021} }","mla":"Schubert, Philipp, et al. “Modeling the Effects of Global Variables in Data-Flow Analysis for C/C++.” <i>2021 IEEE 21st International Working Conference on Source Code Analysis and Manipulation (SCAM)</i>, 2021.","short":"P. Schubert, F. Sattler, F.B. Schiebel, B. Hermann, E. Bodden, in: 2021 IEEE 21st International Working Conference on Source Code Analysis and Manipulation (SCAM), 2021.","apa":"Schubert, P., Sattler, F., Schiebel, F. B., Hermann, B., &#38; Bodden, E. (2021). Modeling the Effects of Global Variables in Data-Flow Analysis for C/C++. <i>2021 IEEE 21st International Working Conference on Source Code Analysis and Manipulation (SCAM)</i>.","chicago":"Schubert, Philipp, Florian Sattler, Fabian Benedikt Schiebel, Ben Hermann, and Eric Bodden. “Modeling the Effects of Global Variables in Data-Flow Analysis for C/C++.” In <i>2021 IEEE 21st International Working Conference on Source Code Analysis and Manipulation (SCAM)</i>, 2021.","ieee":"P. Schubert, F. Sattler, F. B. Schiebel, B. Hermann, and E. Bodden, “Modeling the Effects of Global Variables in Data-Flow Analysis for C/C++,” 2021.","ama":"Schubert P, Sattler F, Schiebel FB, Hermann B, Bodden E. Modeling the Effects of Global Variables in Data-Flow Analysis for C/C++. In: <i>2021 IEEE 21st International Working Conference on Source Code Analysis and Manipulation (SCAM)</i>. ; 2021."},"year":"2021","title":"Modeling the Effects of Global Variables in Data-Flow Analysis for C/C++","date_created":"2021-10-18T12:50:35Z","author":[{"id":"60543","full_name":"Schubert, Philipp","last_name":"Schubert","orcid":"0000-0002-8674-1859","first_name":"Philipp"},{"last_name":"Sattler","full_name":"Sattler, Florian","first_name":"Florian"},{"first_name":"Fabian Benedikt","orcid":"0009-0008-6867-9802","last_name":"Schiebel","id":"55745","full_name":"Schiebel, Fabian Benedikt"},{"last_name":"Hermann","orcid":"0000-0001-9848-2017","id":"66173","full_name":"Hermann, Ben","first_name":"Ben"},{"first_name":"Eric","full_name":"Bodden, Eric","id":"59256","last_name":"Bodden","orcid":"0000-0003-3470-3647"}],"date_updated":"2025-12-04T10:43:01Z","status":"public","type":"conference","publication":"2021 IEEE 21st International Working Conference on Source Code Analysis and Manipulation (SCAM)","language":[{"iso":"eng"}],"user_id":"15249","department":[{"_id":"76"}],"project":[{"_id":"12","name":"SFB 901 - B4: SFB 901 - Subproject B4"},{"name":"SFB 901 - B: SFB 901 - Project Area B","_id":"3"},{"name":"SFB 901: SFB 901: On-The-Fly Computing - Individualisierte IT-Dienstleistungen in dynamischen Märkten ","_id":"1"}],"_id":"26405"},{"language":[{"iso":"eng"}],"file_date_updated":"2020-12-14T07:39:07Z","ddc":["000"],"user_id":"477","department":[{"_id":"76"}],"project":[{"_id":"1","name":"SFB 901"},{"_id":"3","name":"SFB 901 - Project Area B"},{"_id":"12","name":"SFB 901 - Subproject B4"}],"_id":"20712","file":[{"date_updated":"2020-12-14T07:39:07Z","creator":"pdschbrt","date_created":"2020-12-14T07:39:07Z","file_size":683576,"file_id":"20713","file_name":"main.pdf","access_level":"closed","content_type":"application/pdf","success":1,"relation":"main_file"}],"status":"public","type":"report","title":"Accelerating Static Call-Graph, Points-to and Data-Flow Analysis Through Persisted Summaries","date_created":"2020-12-14T07:44:11Z","author":[{"first_name":"Philipp","orcid":"0000-0002-8674-1859","last_name":"Schubert","id":"60543","full_name":"Schubert, Philipp"},{"last_name":"Bodden","orcid":"0000-0003-3470-3647","id":"59256","full_name":"Bodden, Eric","first_name":"Eric"},{"first_name":"Ben","last_name":"Hermann","orcid":"0000-0001-9848-2017","full_name":"Hermann, Ben","id":"66173"}],"date_updated":"2022-01-06T06:54:34Z","citation":{"short":"P. Schubert, E. Bodden, B. Hermann, Accelerating Static Call-Graph, Points-to and Data-Flow Analysis Through Persisted Summaries, 2020.","bibtex":"@book{Schubert_Bodden_Hermann_2020, title={Accelerating Static Call-Graph, Points-to and Data-Flow Analysis Through Persisted Summaries}, author={Schubert, Philipp and Bodden, Eric and Hermann, Ben}, year={2020} }","mla":"Schubert, Philipp, et al. <i>Accelerating Static Call-Graph, Points-to and Data-Flow Analysis Through Persisted Summaries</i>. 2020.","apa":"Schubert, P., Bodden, E., &#38; Hermann, B. (2020). <i>Accelerating Static Call-Graph, Points-to and Data-Flow Analysis Through Persisted Summaries</i>.","ieee":"P. Schubert, E. Bodden, and B. Hermann, <i>Accelerating Static Call-Graph, Points-to and Data-Flow Analysis Through Persisted Summaries</i>. 2020.","chicago":"Schubert, Philipp, Eric Bodden, and Ben Hermann. <i>Accelerating Static Call-Graph, Points-to and Data-Flow Analysis Through Persisted Summaries</i>, 2020.","ama":"Schubert P, Bodden E, Hermann B. <i>Accelerating Static Call-Graph, Points-to and Data-Flow Analysis Through Persisted Summaries</i>.; 2020."},"year":"2020","has_accepted_license":"1"},{"citation":{"mla":"Schubert, Philipp, et al. “PhASAR: An Inter-Procedural Static Analysis Framework for C/C++.” <i>Proceedings of the 25th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS 2019), Held as Part of the European Joint Conferences on Theory and Practice of Software (ETAPS 2019)</i>, vol. II, 2019, pp. 393–410, doi:<a href=\"https://doi.org/10.1007/978-3-030-17465-1_22\">10.1007/978-3-030-17465-1_22</a>.","bibtex":"@inproceedings{Schubert_Hermann_Bodden_2019, title={PhASAR: An Inter-Procedural Static Analysis Framework for C/C++}, volume={II}, DOI={<a href=\"https://doi.org/10.1007/978-3-030-17465-1_22\">10.1007/978-3-030-17465-1_22</a>}, booktitle={Proceedings of the 25th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS 2019), Held as Part of the European Joint Conferences on Theory and Practice of Software (ETAPS 2019)}, author={Schubert, Philipp and Hermann, Ben and Bodden, Eric}, year={2019}, pages={393–410} }","short":"P. Schubert, B. Hermann, E. Bodden, in: Proceedings of the 25th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS 2019), Held as Part of the European Joint Conferences on Theory and Practice of Software (ETAPS 2019), 2019, pp. 393–410.","apa":"Schubert, P., Hermann, B., &#38; Bodden, E. (2019). PhASAR: An Inter-Procedural Static Analysis Framework for C/C++. <i>Proceedings of the 25th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS 2019), Held as Part of the European Joint Conferences on Theory and Practice of Software (ETAPS 2019)</i>, <i>II</i>, 393–410. <a href=\"https://doi.org/10.1007/978-3-030-17465-1_22\">https://doi.org/10.1007/978-3-030-17465-1_22</a>","ama":"Schubert P, Hermann B, Bodden E. PhASAR: An Inter-Procedural Static Analysis Framework for C/C++. In: <i>Proceedings of the 25th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS 2019), Held as Part of the European Joint Conferences on Theory and Practice of Software (ETAPS 2019)</i>. Vol II. ; 2019:393-410. doi:<a href=\"https://doi.org/10.1007/978-3-030-17465-1_22\">10.1007/978-3-030-17465-1_22</a>","chicago":"Schubert, Philipp, Ben Hermann, and Eric Bodden. “PhASAR: An Inter-Procedural Static Analysis Framework for C/C++.” In <i>Proceedings of the 25th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS 2019), Held as Part of the European Joint Conferences on Theory and Practice of Software (ETAPS 2019)</i>, II:393–410, 2019. <a href=\"https://doi.org/10.1007/978-3-030-17465-1_22\">https://doi.org/10.1007/978-3-030-17465-1_22</a>.","ieee":"P. Schubert, B. Hermann, and E. Bodden, “PhASAR: An Inter-Procedural Static Analysis Framework for C/C++,” in <i>Proceedings of the 25th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS 2019), Held as Part of the European Joint Conferences on Theory and Practice of Software (ETAPS 2019)</i>, Prague, Czech Republic, 2019, vol. II, pp. 393–410, doi: <a href=\"https://doi.org/10.1007/978-3-030-17465-1_22\">10.1007/978-3-030-17465-1_22</a>."},"page":"393-410","publication_status":"published","has_accepted_license":"1","main_file_link":[{"open_access":"1","url":"https://link.springer.com/chapter/10.1007/978-3-030-17465-1_22"}],"conference":{"start_date":"2019-04-08","name":"25th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS)","location":"Prague, Czech Republic","end_date":"2019-04-11"},"doi":"10.1007/978-3-030-17465-1_22","date_updated":"2022-03-25T07:48:36Z","oa":"1","author":[{"first_name":"Philipp","orcid":"0000-0002-8674-1859","last_name":"Schubert","full_name":"Schubert, Philipp","id":"60543"},{"full_name":"Hermann, Ben","id":"66173","last_name":"Hermann","orcid":"0000-0001-9848-2017","first_name":"Ben"},{"orcid":"0000-0003-3470-3647","last_name":"Bodden","id":"59256","full_name":"Bodden, Eric","first_name":"Eric"}],"volume":"II","status":"public","type":"conference","file_date_updated":"2019-02-12T07:18:17Z","project":[{"_id":"1","name":"SFB 901"},{"name":"SFB 901 - Subproject B4","_id":"12"},{"_id":"3","name":"SFB 901 - Project Area B"}],"_id":"7626","user_id":"60543","department":[{"_id":"76"}],"year":"2019","title":"PhASAR: An Inter-Procedural Static Analysis Framework for C/C++","date_created":"2019-02-12T07:20:07Z","file":[{"creator":"pdschbrt","date_created":"2019-02-12T07:18:17Z","date_updated":"2019-02-12T07:18:17Z","file_name":"main.pdf","access_level":"closed","file_id":"7627","file_size":504897,"content_type":"application/pdf","relation":"main_file","success":1}],"publication":"Proceedings of the 25th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS 2019), Held as Part of the European Joint Conferences on Theory and Practice of Software (ETAPS 2019)","ddc":["000"],"language":[{"iso":"eng"}]},{"project":[{"name":"SFB 901 - B4: SFB 901 - Subproject B4","_id":"12"},{"name":"SFB 901 - B: SFB 901 - Project Area B","_id":"3"},{"grant_number":"160364472","name":"SFB 901: SFB 901: On-The-Fly Computing - Individualisierte IT-Dienstleistungen in dynamischen Märkten ","_id":"1"}],"_id":"14898","user_id":"15249","department":[{"_id":"76"},{"_id":"34"},{"_id":"26"}],"language":[{"iso":"eng"}],"type":"conference","publication":"Proceedings of the 8th ACM SIGPLAN International Workshop on State Of the Art in Program Analysis  - SOAP 2019","status":"public","date_updated":"2023-06-15T08:52:37Z","date_created":"2019-11-12T12:22:16Z","author":[{"full_name":"Schubert, Philipp","id":"60543","last_name":"Schubert","orcid":"0000-0002-8674-1859","first_name":"Philipp"},{"first_name":"Richard","full_name":"Leer, Richard","last_name":"Leer"},{"first_name":"Ben","orcid":"0000-0001-9848-2017","last_name":"Hermann","id":"66173","full_name":"Hermann, Ben"},{"first_name":"Eric","full_name":"Bodden, Eric","id":"59256","last_name":"Bodden","orcid":"0000-0003-3470-3647"}],"title":"Know your analysis: how instrumentation aids understanding static analysis","doi":"10.1145/3315568.3329965","publication_status":"published","publication_identifier":{"isbn":["9781450367202"]},"year":"2019","citation":{"ama":"Schubert P, Leer R, Hermann B, Bodden E. Know your analysis: how instrumentation aids understanding static analysis. In: <i>Proceedings of the 8th ACM SIGPLAN International Workshop on State Of the Art in Program Analysis  - SOAP 2019</i>. ; 2019. doi:<a href=\"https://doi.org/10.1145/3315568.3329965\">10.1145/3315568.3329965</a>","apa":"Schubert, P., Leer, R., Hermann, B., &#38; Bodden, E. (2019). Know your analysis: how instrumentation aids understanding static analysis. <i>Proceedings of the 8th ACM SIGPLAN International Workshop on State Of the Art in Program Analysis  - SOAP 2019</i>. <a href=\"https://doi.org/10.1145/3315568.3329965\">https://doi.org/10.1145/3315568.3329965</a>","mla":"Schubert, Philipp, et al. “Know Your Analysis: How Instrumentation Aids Understanding Static Analysis.” <i>Proceedings of the 8th ACM SIGPLAN International Workshop on State Of the Art in Program Analysis  - SOAP 2019</i>, 2019, doi:<a href=\"https://doi.org/10.1145/3315568.3329965\">10.1145/3315568.3329965</a>.","bibtex":"@inproceedings{Schubert_Leer_Hermann_Bodden_2019, title={Know your analysis: how instrumentation aids understanding static analysis}, DOI={<a href=\"https://doi.org/10.1145/3315568.3329965\">10.1145/3315568.3329965</a>}, booktitle={Proceedings of the 8th ACM SIGPLAN International Workshop on State Of the Art in Program Analysis  - SOAP 2019}, author={Schubert, Philipp and Leer, Richard and Hermann, Ben and Bodden, Eric}, year={2019} }","short":"P. Schubert, R. Leer, B. Hermann, E. Bodden, in: Proceedings of the 8th ACM SIGPLAN International Workshop on State Of the Art in Program Analysis  - SOAP 2019, 2019.","ieee":"P. Schubert, R. Leer, B. Hermann, and E. Bodden, “Know your analysis: how instrumentation aids understanding static analysis,” 2019, doi: <a href=\"https://doi.org/10.1145/3315568.3329965\">10.1145/3315568.3329965</a>.","chicago":"Schubert, Philipp, Richard Leer, Ben Hermann, and Eric Bodden. “Know Your Analysis: How Instrumentation Aids Understanding Static Analysis.” In <i>Proceedings of the 8th ACM SIGPLAN International Workshop on State Of the Art in Program Analysis  - SOAP 2019</i>, 2019. <a href=\"https://doi.org/10.1145/3315568.3329965\">https://doi.org/10.1145/3315568.3329965</a>."}}]
