A Unified Lattice Model and Framework for Purity Analyses
Author:
Abstract
This paper was presented in 2018 at the 33rd ACM/IEEE International Conference on Automated Software Engineering and proposes a framework for purity analyses. Analyzing methods in object-oriented programs whether they are side-effect free and also deterministic, i.e., mathematically pure, has been the target of extensive research. Identifying such methods helps to find code smells and security related issues, and helps analyses detecting concurrency bugs. Pure methods are further used for formal specifications and proving the pureness is necessary to ensure correct specifications. However, no common terminology exists which describes the purity of methods. Furthermore, some terms (e.g., pure or side-effect free) are used inconsistently. Further, all current approaches only report selected purity information making them only suitable for a smaller subset of the potential use cases. We present a fine-grained unified lattice model which puts the purity levels found in the literature into relation and which adds a new level that generalizes existing definitions. We have also implemented a scalable, modularized purity analysis which produces significantly more precise results for real-world programs than the best-performing related work. The analysis shows that all defined levels are found in real-world projects.
- Citation
- BibTeX
Helm, D., Kübler, F., Eichberg, M., Reif, M. & Mezini, M.,
(2019).
A Unified Lattice Model and Framework for Purity Analyses.
In:
Becker, S., Bogicevic, I., Herzwurm, G. & Wagner, S.
(Hrsg.),
Software Engineering and Software Management 2019.
Bonn:
Gesellschaft für Informatik e.V..
(S. 51-52).
DOI: 10.18420/se2019-10
@inproceedings{mci/Helm2019,
author = {Helm, Dominik AND Kübler, Florian AND Eichberg, Michael AND Reif, Michael AND Mezini, Mira},
title = {A Unified Lattice Model and Framework for Purity Analyses},
booktitle = {Software Engineering and Software Management 2019},
year = {2019},
editor = {Becker, Steffen AND Bogicevic, Ivan AND Herzwurm, Georg AND Wagner, Stefan} ,
pages = { 51-52 } ,
doi = { 10.18420/se2019-10 },
publisher = {Gesellschaft für Informatik e.V.},
address = {Bonn}
}
author = {Helm, Dominik AND Kübler, Florian AND Eichberg, Michael AND Reif, Michael AND Mezini, Mira},
title = {A Unified Lattice Model and Framework for Purity Analyses},
booktitle = {Software Engineering and Software Management 2019},
year = {2019},
editor = {Becker, Steffen AND Bogicevic, Ivan AND Herzwurm, Georg AND Wagner, Stefan} ,
pages = { 51-52 } ,
doi = { 10.18420/se2019-10 },
publisher = {Gesellschaft für Informatik e.V.},
address = {Bonn}
}
Sollte hier kein Volltext (PDF) verlinkt sein, dann kann es sein, dass dieser aus verschiedenen Gruenden (z.B. Lizenzen oder Copyright) nur in einer anderen Digital Library verfuegbar ist. Versuchen Sie in diesem Fall einen Zugriff ueber die verlinkte DOI: 10.18420/se2019-10
Haben Sie fehlerhafte Angaben entdeckt? Sagen Sie uns Bescheid: Send Feedback
More Info
DOI: 10.18420/se2019-10
ISBN: 978-3-88579-686-2
ISSN: 1617-5468
xmlui.MetaDataDisplay.field.date: 2019
Language: (en)
Content Type: Text/Conference Paper