Gleich drei Arbeiten des Software Lab (SOLA) am Institut für Software Engineering (ISTE) haben es auf die Liste akzeptierter Paper der ESEC/FSE 2022 (The ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering) geschafft. Folgende Forschungen konnten die Vertreter des Programmkomitees überzeugen:
- „DynaPyt: A Dynamic Analysis Framework for Python“ (Aryaz Eghbali, Michael Pradel),
- „Generating Realistic Vulnerabilities via Neural Code Editing: An Empirical Study“ (Yu Nong, Yuzhe Ou, Michael Pradel, Feng Chen, Haipeng Cai) sowie
- „The Evolution of Type Annotations in Python: An Empirical Study“ (Luca Di Grazia, Michael Pradel).
Empirische Studie zur Entwicklung von Type Annotations
Die zuletzt genannte Arbeit „The Evolution of Type Annotations in Python: An Empirical Study“ wurde mit einem „ACM SIGSOFT Distinguished Paper Award“ ausgezeichnet. In ihrem Beitrag liefern Luca Di Grazia und Prof. Pradel Ergebnisse einer groß angelegten, empirische Erhebung zu Type Annotations. Dabei untersuchten die Forscher des Fachbereichs, ob Entwickler die Datentypen im Code tatsächlich immer häufiger um Type Annotations ergänzen und wie sich das auf Fehlerraten auswirkt. Als Datenbasis dienten 1,4 Millionen Änderungen an Python-Code von 9.655 auf GitHub gehosteter Repositories. Resultat: Die Bedeutung von Type Annotations nimmt zu; enthielten 2015 lediglich 3,8 Prozent der untersuchten Commits eine oder mehr Type Annotations, so erreichte der Anteil 2021 bereits einen Wert von 10,9 Prozent.
Zugleich erkennen die Wissenschaftler aber noch erhebliches Potential in dem Ansatz. Automatisierte Verfahren, wie Neural Type Prediction, könnten bestehenden Code um Type Annotations ergänzen. Des Weiteren empfehlen die Wissenschaftler, bei Entwicklern für mehr Awareness zu sorgen und stärker auf graduelle Typenprüfer zu setzen.
CrystalBLEU vergleicht viereinhalbmal genauer
Bereits im Oktober erhielten Aryaz Eghbali und Prof. Pradel einen ACM SIGSOFT Distinguished Paper Award auf der 37th IEEE/ACM International Conference on Automated Software Engineering (ASE 2022). Die ausgezeichnete Arbeit „CrystalBLEU: Precisely and Efficiently Measuring the Similarity of Code“ beschreibt einen verbesserten Ansatz, um die Ähnlichkeit von Code zu vergleichen. Die Forscher optimieren dabei den für natürliche Sprache gedachten „BLEU score“, der schon aufgrund syntaktischer Vorgaben und Programmierparadigmen Übereinstimmungen komplett unterschiedlicher Programmfragmente erkennt. Verglichen dazu arbeitet der vorgeschlagene Ansatz CrystalBLEU bis zu viereinhalb mal genauer.
Ebenfalls auf der ASE 2022 konnte Islem Bouzenia die ACM Student Research Competition für sich entscheiden; mit seiner Arbeit „Detecting Inconsistencies in If-Condition-Raise Statements“.