Roth, Tobias ; Helm, Dominik ; Reif, Michael ; Mezini, Mira (2021)
CiFi: Versatile Analysis of Class and Field Immutability.
36th IEEE/ACM International Conference on Automated Software Engineering (ASE). virtual Conference (15.11.2021-19.11.2021)
doi: 10.1109/ASE51524.2021.9678903
Konferenzveröffentlichung, Bibliographie
Kurzbeschreibung (Abstract)
Reasoning about immutability is important for pre-venting bugs, e.g., in multi-threaded software. So far, static analysis to infer immutability properties has mostly focused on individual objects and references. Reasoning about fields and entire classes, while significantly simpler, has gained less attention. Even a consistently used terminology is missing, which makes it difficult to implement analyses that rely on immutability information. We propose a model for class and field immutability that unifies terminology for immutability flavors considered by previous work and covers new levels of immutability to handle lazy initialization and immutability dependent on generic type parameters. Using the OPAL static analysis framework, we implement CiFi, a set of modular, collaborating analyses for different flavors of immutability, inferring the properties defined in our model. Additionally, we propose a benchmark of representative test cases for class and field immutability. We use the benchmark to showcase CiFi’s precision and recall in comparison to state of the art and use CiFi to study the prevalence of immutability in real-world libraries, showcasing the practical quality and relevance of our model.
Typ des Eintrags: | Konferenzveröffentlichung |
---|---|
Erschienen: | 2021 |
Autor(en): | Roth, Tobias ; Helm, Dominik ; Reif, Michael ; Mezini, Mira |
Art des Eintrags: | Bibliographie |
Titel: | CiFi: Versatile Analysis of Class and Field Immutability |
Sprache: | Englisch |
Publikationsjahr: | November 2021 |
Verlag: | IEEE |
Buchtitel: | Proceedings: 2021 36th IEEE/ACM International Conference on Automated Software Engineering |
Veranstaltungstitel: | 36th IEEE/ACM International Conference on Automated Software Engineering (ASE) |
Veranstaltungsort: | virtual Conference |
Veranstaltungsdatum: | 15.11.2021-19.11.2021 |
DOI: | 10.1109/ASE51524.2021.9678903 |
URL / URN: | https://ieeexplore.ieee.org/abstract/document/9678903 |
Zugehörige Links: | |
Kurzbeschreibung (Abstract): | Reasoning about immutability is important for pre-venting bugs, e.g., in multi-threaded software. So far, static analysis to infer immutability properties has mostly focused on individual objects and references. Reasoning about fields and entire classes, while significantly simpler, has gained less attention. Even a consistently used terminology is missing, which makes it difficult to implement analyses that rely on immutability information. We propose a model for class and field immutability that unifies terminology for immutability flavors considered by previous work and covers new levels of immutability to handle lazy initialization and immutability dependent on generic type parameters. Using the OPAL static analysis framework, we implement CiFi, a set of modular, collaborating analyses for different flavors of immutability, inferring the properties defined in our model. Additionally, we propose a benchmark of representative test cases for class and field immutability. We use the benchmark to showcase CiFi’s precision and recall in comparison to state of the art and use CiFi to study the prevalence of immutability in real-world libraries, showcasing the practical quality and relevance of our model. |
Freie Schlagworte: | Engineering; E1 |
Fachbereich(e)/-gebiet(e): | 20 Fachbereich Informatik 20 Fachbereich Informatik > Softwaretechnik DFG-Sonderforschungsbereiche (inkl. Transregio) DFG-Sonderforschungsbereiche (inkl. Transregio) > Sonderforschungsbereiche DFG-Sonderforschungsbereiche (inkl. Transregio) > Sonderforschungsbereiche > SFB 1119: CROSSING – Kryptographiebasierte Sicherheitslösungen als Grundlage für Vertrauen in heutigen und zukünftigen IT-Systemen |
Hinterlegungsdatum: | 19 Mai 2022 09:44 |
Letzte Änderung: | 19 Mai 2022 09:44 |
PPN: | |
Export: | |
Suche nach Titel in: | TUfind oder in Google |
Frage zum Eintrag |
Optionen (nur für Redakteure)
Redaktionelle Details anzeigen |