Research Software Engineering
Research Software Engineering (kurz oft RSE oder RSEing) ist nicht, wie der Name vermuten mag, nur die Anwendung von klassischer Softwaretechnik (Software Engineering) in der Forschung (Research) und ist damit keine Teilmenge der Softwaretechnik. RSE beinhaltet neben Elementen der Informatik auch Elemente anderer Fachwissenschaften und der Offenen Wissenschaft (Open Science)[1][2]. Ein weiterer Unterschied zur Softwaretechnik ist der Fokus auf Forschungssoftware, d. h. Software, die für wissenschaftliche Forschungsprojekte erstellt wurde und hauptsächlich in diesen verwendet wird[3].
Viele wissenschaftliche Disziplinen (auch außerhalb der Informatik) entwickeln zunehmend Forschungssoftware, die historisch als sekundäres Beiwerk betrachtet wurde. In den 2010er Jahren begann die strukturierte Auseinandersetzung mit der Forschungssoftwareentwicklung und dem Streben das Research Software Engineerings als eigene Fachdisziplin zu etablieren. Der Begriff Research Software Engineering findet erstmals Erwähnung im Jahr 2010 in einem wissenschaftlichen Artikel zur Nutzung von Softwareanwendungen im Kontext wissenschaftlicher Forschung[4]. Als Geburtsstunde der RSE Bewegung wird die Digital Research-Konferenz in Oxford im Jahre 2012 angenommen.[5][6]
Die Research Software Engineering betreibenden Menschen bezeichnen sich selbst als Research Software Engineers (RSEs). Es handelt[7] sich hierbei um Personen, die Forschungssoftware oder die mit der rechner-unterstützten Umgebung einer Forschungsdomäne interagierenden Software schaffen oder verbessern. Es handelt sich um hoch qualifizierte Team-Mitglieder, die als Teil ihrer Aufgaben auch eigene Forschung durchführen können.
Es gibt aber auch viele RSEs die ihren Fokus auf die technischen Aspekte der Software-Entwicklung gelegt haben und damit eine Karriere außerhalb der traditionellen Forschungspfade anstreben.
Ziele & Methoden
[Bearbeiten | Quelltext bearbeiten]Das Hauptziel des Research Software Engineering ist die Erstellung von präziser, wiederverwendbarer und offener Forschungssoftware. Diese soll vor allem die Reproduzierbarkeit der Forschungsergebnisse garantieren. Forschungssoftware ist in ihrer Komplexität stark gestiegen, benötigt deshalb hohe personelle Ressourcen, erfordert Langlebigkeit von Forschungssoftware über mehrere Entwicklergenerationen und hat wegen Nachvollziehbarkeit und der notwendigen Korrektheit der Ergebnisse hohe Qualitätsanforderungen. Research Software Engineering bedient sich daher in zunehmendem Maße gängigen Methoden aus der Softwaretechnik, welche in den bisherigen wissenschaftlichen Kontext zu integrieren und daher anzupassen sind. Hierzu gehören unter anderem:
- Versionsverwaltung
- Software Tests
- Dokumentation
- Clean Code
- Entwurfsmuster
- Wissenschaftliche Anforderungserhebung
- Dokumentation nach wissenschaftlichen Standards
- Design für die nachhaltige Weiterentwicklung
- Variantenmanagement
- Agile Entwicklungsmethodik
Nationale Organisationen
[Bearbeiten | Quelltext bearbeiten]Seit den 2010er Jahren wurden in vielen Ländern eigene Fachgesellschaften gegründet, welche sich der Verbreitung und Förderung des Research Software Engineerings zum Ziel gesetzt haben. Neben der Professionalisierung der Softwareentwicklung in der Forschung liegt ein wichtiges Augenmerk auf der Etablierung der wissenschaftlichen Softwareentwicklung als wesentlicher Bestandteil von Kernkompetenzen, insbesondere bei jungen Wissenschaftlerinnen und Wissenschaftlern.[8]
Deutschland
[Bearbeiten | Quelltext bearbeiten]In Deutschland existiert der als gemeinnützig anerkannte de-RSE e.V. als erste Interessensvertretung der Research Software Engineering Gemeinschaft seit November 2018. Sitz des Vereins ist Berlin. Unter dem Dach des Hauptvereins existieren folgende lokale Gruppen (Stand: April 2025),[9] auch Chapters genannt:
- Aachen
- Berlin/Brandenburg
- Braunschweig
- Hannover/Niedersachsen
- Jena
- München
- Münster
- Stuttgart
- Würzburg
Seit 2019 veranstaltet der de-RSE e.V. unter dem Namen deRSE eine jährlich stattfindende Fachkonferenz zum Thema Research Software Engineering.
2020 hat der de-RSE e.V. basierend auf einer Community-Initiative ein Positionspapier zum Thema Research Software Engineering in Deutschland[10] veröffentlicht.
2023 hat die Gesellschaft für Informatik (GI)[11] eine Fachgruppe „Research Software Engineering“[12] unter dem Dach des Fachbereichs „Software Engineering“ mit mehreren aktiven Arbeitskreisen eingerichtet und RSE auch als eigenständiges Forschungsgebiet des Software Engineering[12] identifiziert.
Vereinigtes Königreich (UK)
[Bearbeiten | Quelltext bearbeiten]Die UK Research Software Engineers Association wurde 2013 gegründet und ging im Jahr 2019 in die Society of Research Software Engineering über. Sie ist die weltweit erste Vereinigung, welche sich mit dem Thema nachhaltiger wissenschaftlicher Software auseinandersetzt. Ihre Gründung geht zurück auf einen Workshop während einer Konferenz am Queen’s College (Oxford) im Jahr 2012[5][6]. Aktuell (Stand: Januar 2021) umfasst die Organisation 28 lokale Gruppen[13], welche hauptsächlich an Universitäten bzw. Hochschulen angesiedelt sind.
Niederlande
[Bearbeiten | Quelltext bearbeiten]Die Vereinigung NL-RSE ist eine niederländische Research Software Engineering Initiative und wurde im April 2017 gegründet. Sie umfasst (Stand: Januar 2021) mehr als 200 Mitglieder in mehr als 30 Organisationen verteilt über die gesamten Niederlande.
Vereinigte Staaten von Amerika (USA)
[Bearbeiten | Quelltext bearbeiten]Die US Research Software Engineering Association ist eine RSE Initiative in den USA, welche nach dem Vorbild der Initiativen in UK, Deutschland und den Niederlanden gegründet wurde. Sie umfasst (Stand: Januar 2021) 15 lokale Gruppen[14], welche unter anderem an den Eliteuniversitäten MIT, Harvard, Princeton und Stanford angesiedelt sind.
Weitere nationale Initiativen
[Bearbeiten | Quelltext bearbeiten]Neben den bereits etablierten Initiativen in UK, Deutschland, Niederlande und den USA existieren weltweit noch weitere kleinere, sich im Aufbau befindende RSE Organisationen. Hierzu zählen unter anderem:
Weblinks
[Bearbeiten | Quelltext bearbeiten]- de-RSE - Gesellschaft für Forschungssoftware
- Vortrag: Keynote-lecture von Mike Croucher bei der JuliaCon2018
- SORSE — A Series of Online Research Software Events — listing of online events tailored for the COVID‑19 era
- Research Software Engineers: State of the Nation Report 2017, doi:10.5281/zenodo.495360
- Research Software Alliance (ReSA)
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ Florian Goth, Renato Alves, Matthias Braun, Leyla Jael Castro, Gerasimos Chourdakis, Simon Christ, Jeremy Cohen, Stephan Druskat, Fredo Erxleben, Jean-Noël Grad, Magnus Hagdorn, Toby Hodges, Guido Juckeland, Dominic Kempf, Anna-Lena Lamprecht, Jan Linxweiler, Frank Löffler, Michele Martone, Moritz Schwarzmeier, Heidi Seibold, Jan Philipp Thiele, Harald von Waldow, Samantha Wittke: Foundational Competencies and Responsibilities of a Research Software Engineer. In: F1000Research. Band 13, 26. November 2024, ISSN 2046-1402, S. 1429, doi:10.12688/f1000research.157778.1.
- ↑ GI-Radar 351: Research Software. Abgerufen am 3. April 2025.
- ↑ Morane Gruenpeter, Daniel S. Katz, Anna-Lena Lamprecht, Tom Honeyman, Daniel Garijo, Alexander Struck, Anna Niehues, Paula Andrea Martinez, Leyla Jael Castro, Tovo Rabemanantsoa, Neil P. Chue Hong, Carlos Martinez-Ortiz, Laurents Sesink, Matthias Liffers, Anne Claire Fouilloux, Chris Erdmann, Silvio Peroni, Paula Martinez Lavanchy, Ilian Todorov, Manodeep Sinha: Defining Research Software: a controversial discussion. Zenodo, 13. September 2021, doi:10.5281/zenodo.5504016 (zenodo.org [abgerufen am 3. April 2025]).
- ↑ C.R. Prause, R. Reiners, S. Dencheva. Empirical Study of Tool Support in Highly Distributed Research Projects. 5th International Conference on Global Software Engineer (ICGSE), Princeton, NJ, USA, pp. 23–32. DOI:10.1109/ICGSE.2010.13
- ↑ a b R. Baxter, N. Chue Hong, D. Gorissen, J. Hetherington, I. Todorov: The Research Software Engineer. In: Digital Research 2012. Oxford 10. September 2012 (ed.ac.uk [PDF]).
- ↑ a b Simon Hettrick: A not-so-brief history of Research Software Engineers. Software Sustainability Institute, abgerufen am 31. Januar 2018.
- ↑ Florian Goth, Renato Alves, Matthias Braun, Leyla Jael Castro et al.: Foundational Competencies and Responsibilities of a Research Software Engineer. F1000 Research, 26. November 2024, abgerufen am 2. April 2025 (englisch).
- ↑ Ziele der de-RSE. de-RSE e.V., abgerufen am 10. Januar 2021.
- ↑ RSE Chapters in Deutschland. de-RSE e.V., abgerufen am 2. April 2025.
- ↑ Hartwig Anzt, Felix Bach, Stephan Druskat, Frank Löffler, Axel Loewe: An environment for sustainable research software in Germany and beyond: current state, open challenges, and call for action. In: F1000Research. Band 9, 27. April 2020, S. 295, doi:10.12688/f1000research.23224.1 (f1000research.com [abgerufen am 20. Januar 2021]).
- ↑ Startseite - Gesellschaft für Informatik e.V. Abgerufen am 12. November 2023.
- ↑ a b Lars Grunske, Anna-Lena Lamprecht, Wilhelm Hasselbring, Bernhard Rumpe: Forschungssoftware effizient erstellen und dauerhaft erhalten. Deutscher Hochschulverband, März 2024, abgerufen am 9. März 2024.
- ↑ RSG location and contact details. Society of Research Software Engineering, abgerufen am 9. Januar 2021 (englisch).
- ↑ RSE Gruppen in den USA. US Research Software Engineering Association, archiviert vom am 20. Januar 2021; abgerufen am 24. März 2024 (englisch).