Bewertung der Softwarequalität von Forschungssoftware
Innerhalb dieses Projekts wurden Interviews mit Naturwissenschaftlern auch aus unseren mit dem KPA verbundenen Instituten durchgeführt und analysiert. Es geht um die Qualitätsanforderungen an Software, die im Rahmen von wissenschaftlicher Arbeit von Wissenschaftler:innen selbst erstellt und genutzt wird. Da diese Forschungssoftware (RSE) oft von komplexen Sachverhalten (z.B. Modellsimulationen und Datenanalyse) begleitet ist, wird diese von Wissenschaftler:innen erstellt, die Experten in dem jeweiligen Fachbereich sind, während die eigentlichen Prozesse der Softwareerstellung eher im Hintergrund laufen. Da die moderne Wissenschaft in immer steigendem Maße auf den Einsatz von Software angewiesen ist und die Ergebnisse auf dieser Software beruhen, muss auch die Frage der Qualität dieser Forschungssoftware einen höheren Stellenwert einnehmen.
Die Hauptfragen in den Interviews sind:
- Wie erheben, dokumentieren und analysieren Forscher Anforderungen an Forschungssoftware?
- Welche Prozesse befolgen Forscher und welche Teile beziehen sich auf Anforderungen?
- Welchen anforderungsbezogenen Herausforderungen stehen Forscher gegenüber?
Aus der Interviewanalyse ergibt sich, dass als primäres Qualitätsmerkmal der Forschungssoftware von den Wissenschaftler:innen die funktionale Korrektheit der Forschersoftware genannt wird, gefolgt von der Performance. Als weitere Qualitätsmerkmale gelten Beständigkeit, Übertragbarkeit und Installierbarkeit. Als ein über nahezu alle Fachbereiche entscheidendes Qualitätsmerkmal wird die Reproduzierbarkeit genannt.
Weiterhin stellt sich heraus, dass das Aufstellen von Anforderungen an die zu erstellende Software oft gar nicht stattfindet. Folglich existiert auch der Prozess der Validierung und Verifizierung anhand vorher erstellter Anforderungen kaum. Das Management von den Anforderungen bis zum Test ist nicht klar definiert. Ein Problem ist, dass die Prozesse der strukturierten Softwareentwicklung in den meisten Fällen einfach nicht bekannt sind, weil sie nicht gelernt bzw. gelehrt werden. Bei der häufig kleinen Größe der Teams bzw. Arbeitsgruppen wird dies als zu hoher Zeitaufwand für zu wenig Nutzen angesehen. Es fehlt die Belohnung für eine qualitativ hochwertige Software.
Andreas Vogelsang und seine Mitarbeiter:innen haben diese Interviews durchgeführt, analysiert und die Ergebnisse zusammen mit den zukünftigen Herausforderungen und Visionen für Forschungssoftware in einer Veröffentlichung ausführlich dokumentiert.
Bajraktari, M. Binder, A. Vogelsang: "Requirements Engineering for Research Software: A Vision“, In: 32nd IEEE International Requirements Engineering (RE) 2024 conference, https://arxiv.org/abs/2405.07781
In dieser Veröffentlichung wird klar, dass es Handlungsbedarf gibt, um Fehler in der Software und mögliche falsche Schlussfolgerungen in der Forschung vermeiden zu können. Die Vision besteht darin, Bildungs- und Forschungslücken zu überbrücken, Software-Engineering in der Forschung zu fördern und Forscher zu befähigen, hervorragende Software zu entwickeln.