Häufig gestellte Fragen (FAQ)

Kernkonzepte

Was ist Forschungssoftware?

Forschungssoftware ist Software, die im Rahmen des Forschungsprozesses oder für einen spezifischen Forschungszweck erstellt wird. Sie umfasst Quellcode, Skripte, rechnergestützte Workflows, ausführbare Dateien und zugehörige Artefakte. Sie wird genutzt, um Forschungsdaten zu sammeln, zu analysieren, zu simulieren, zu verarbeiten, zu visualisieren oder zu verwalten, einschließlich Texten, Bildern, Audio, Sensordaten und anderen digitalen Ressourcen, und um wissenschaftliche Modelle zu erstellen, Forschungsinstrumente zu steuern oder Forschungsprozesse zu optimieren.

Diese Definition umfasst eine breite Palette von Softwareprojekten – von wenigen Zeilen Code bis hin zu großen Forschungsplattformen. Forschungssoftware beinhaltet oft auch Aspekte, die ihre Entwicklung unterstützen, wie technische Dokumentation, Benutzerhandbücher, Metadaten, Parametrisierung, Managementpläne und digitale Notizbücher.

Referenzen:
[1] Gruenpeter, M., Katz, D. S., Lamprecht, A.-L., et al. (2021): Defining Research Software: a controversial discussion. Zenodo. https://doi.org/10.5281/zenodo.5504016
[2] Deutsche Forschungsgemeinschaft (2024): Umgang mit Forschungssoftware im Förderhandeln der DFG. Zenodo. https://doi.org/10.5281/zenodo.13919790


Welche Funktionen erfüllt Forschungssoftware?

Forschungssoftware hat drei miteinander verbundene Funktionen:

  1. Sie bietet Nutzungsfunktionen, indem sie als Mittel für Forschungsaufgaben wie Datenanalyse, Simulation, Modellierung, Instrumentensteuerung und Workflow-Management dient.
  2. Sie liefert Archivierungsfunktionen, indem sie die intellektuelle Arbeit hinter Forschungsergebnissen bewahrt und sicherstellt, dass diese auffindbar, zugänglich, interoperabel und wiederverwendbar (FAIR) sind, und damit reproduzierbar bleiben.
  3. Sie ermöglicht Community-Funktionen, indem sie Zusammenarbeit, Lernen oder Training fördert, Forschung durch iterative Entwicklung voranbringt und Reputation aufbaut.

Was verstehen wir unter einem “Forschungssoftware-Ökosystem”?

Das Forschungssoftware-Ökosystem bezeichnet das dynamische, komplexe, vernetzte und voneinander abhängige Netzwerk aus Personen, Communitys, Institutionen, Software, Infrastruktur, Praktiken und Aktivitäten sowie Richtlinien und Ressourcen, die gemeinsam die nachhaltige Entwicklung, Bereitstellung, Nutzung, Weitergabe und Wartung von Forschungssoftware unterstützen.


Was ist eine Forschungssoftware-Infrastruktur?

Forschungssoftware-Infrastruktur umfasst die gemeinsamen technischen und organisatorischen Dienste und Ressourcen, die die nachhaltige Entwicklung, Bereitstellung, Nutzung, Weitergabe und Wartung von Forschungssoftware ermöglichen. Dazu gehören beispielsweise Code-Repositories, Rechenplattformen, Continuous-Integration-Systeme, Lizenzierungsframeworks und Governance-Modelle. Forschungssoftware-Infrastruktur ist kein einzelnes digitales Artefakt oder Dienst, sondern ein strukturelles Element, für dessen Entwicklung und langfristigen Betrieb Forschungseinrichtungen und Einzelpersonen gemeinsam Verantwortung und Eigentümerschaft tragen.


Was verstehen wir unter “Governance” im Forschungssoftware-Ökosystem?

Governance bezeichnet die kollektiven Prozesse, Strukturen und Praktiken, durch die Forschungseinrichtungen eine gemeinsame Vision und ein gemeinsames Verantwortungsbewusstsein für die nachhaltige Entwicklung, Bereitstellung, Nutzung, Weitergabe und Wartung von Forschungssoftware entwickeln können. Anstatt von einer Steuerung oder Durchsetzung von oben herab auszugehen, ermöglicht, koordiniert und befähigt Governance Institutionen dazu, Forschungssoftware als wesentlichen Bestandteil ihrer Forschungsergebnisse verantwortungsvoll zu verwalten. Wichtig ist, dass es bei der Governance nicht darum geht, einzelne Softwareprojekte zu regulieren, sondern vielmehr darum, ein Umfeld zu schaffen, in dem Forschungssoftware durch Vertrauen, Transparenz, geteilte Eigentümerschaft und institutionelles Engagement gedeihen kann.


Was ist ein “Dienst”, ein “Angebot”, eine “Aktivität” und eine “Ressource”?

  • Ein Dienst ist ein immaterielles Gut: eine auf Wunsch des Kunden erbrachte Leistung, die einen Mehrwert schafft und ihm hilft, seine Ziele zu erreichen, ohne dass er die Aufgabe selbst übernehmen oder ausführen muss.
  • Ein Angebot ist ein spezifisches Dienstleistungspaket, das darauf ausgerichtet ist, die Bedürfnisse von Kunden oder Märkten zu erfüllen. Es umfasst eine Kombination aus Dienstleistungen, Prozessen, Instrumenten und Werten, die zusammen einen einheitlichen Nutzen erzeugen.
  • Eine Aktivität ist eine zielgerichtete Maßnahme oder Initiative, die innerhalb eines Netzwerks oder einer Organisation durchgeführt wird, um strategische Ziele zu erreichen. Im Gegensatz zu formellen Angeboten sind Aktivitäten in der Regel kooperativ und prozessorientiert und konzentrieren sich auf den Aufbau von Kapazitäten.
  • Eine Ressource ist ein materielles oder digitales Objekt, das entwickelt oder kuratiert wurde, um Verständnis, Umsetzung oder Entscheidungsfindung zu unterstützen, einschließlich Richtlinien, Vorlagen und Standards.

Was ist ein “Dienstleistungskatalog” und ein “Dienstleistungsportfolio”?

  • Ein Dienstleistungskatalog ist ein kuratiertes, öffentlich zugängliches Inventar aller Dienste, Angebote, Ressourcen und Unterstützungsaktivitäten, die von einer Institution oder einem kooperativen Netzwerk bereitgestellt werden. Er dient als zentrale Anlaufstelle, um für Forschende, Entwickler:innen und Support-Personal, die die verfügbaren Möglichkeiten nutzen möchten.
  • Das Dienstleistungsportfolio bezeichnet die umfassendere strategische Gesamtheit der Dienstleistungen, zu deren Bereitstellung sich eine Institution langfristig verpflichtet. Dazu gehören sowohl aktuelle, geplante oder angestrebte Dienstleistungen.

Unterschiede bei Forschungssoftware

Warum unterscheiden wir verschiedene Software-Ebenen?

Wir unterteilen Forschungssoftware in drei Ebenen, basierend auf Umfang, Wiederverwendbarkeit und sozialen Abhängigkeiten, nicht nach technischer Komplexität oder Zeilenanzahl. Diese Einteilung ist keine Qualitätshierarchie, sondern ein pragmatischer Rahmen, der die Kommunikation und Zusammenarbeit zwischen Institutionen und Forschungscommunitys erleichtern soll.

Der Grund für diese Einteilung ist, das Ausmaß der institutionellen und gemeinschaftlichen Verantwortung sowie Unterstützungsbedarfe zu verdeutlichen, die erforderlich sind, um Software nachhaltig zu betreiben, Ressourcen gezielt einzusetzen und Entscheidungen zu Dokumentation, Lizenzierung und langfristiger Verwaltung und Eigentümerschaft zu erleichtern.

Referenz:
[1] Hasselbring, W., Druskat, S., Bernoth, J. et al. (2025): Multidimensional Research Software Categorization. Computing in Science & Engineering, Nr. 2, Vol. 27. https://doi.org/10.1109/MCSE.2025.3555023


Welche Ebenen von Forschungssoftware unterscheiden wir?

Wir unterscheiden drei Ebenen von Forschungssoftware, basierend auf Umfang, Wiederverwendbarkeit und sozialen Abhängigkeiten. Die Ebenen schließen sich nicht gegenseitig aus, was bedeutet, dass sich Software im Laufe der Zeit von Ebene 1 über Ebene 2 hin zu Ebene 3 entwickeln kann, je nach Akzeptanz und Nutzung innerhalb der Forschungscommunity.

  • Ebene 1: Software, die primär für den persönlichen Gebrauch oder ein Einzelprojekt entwickelt wird, mit begrenzter externer Nutzung und minimaler Abhängigkeit von anderen Forschenden.
  • Ebene 2: Software, die für die Wiederverwendung in mehreren Forschungsinitiativen konzipiert ist und wachsendes Community-Interesse und -Vertrauen zeigt.
  • Ebene 3: Software, die zu einer gemeinsamen Ressource geworden ist, auf die mehrere Institutionen oder Fachbereiche angewiesen sind. Sie erfordert kontinuierliche Investitionen, eine Governance und die Betreuung durch die Community.

Referenzen:
[1] Hasselbring, W., Druskat, S., Bernoth, J. et al. (2025): Multidimensional Research Software Categorization. Computing in Science & Engineering, Nr. 2, Vol. 27. https://doi.org/10.1109/MCSE.2025.3555023
[2] RSQKit Community (2026): Three-Tier Model of Research Software. Website. URL: https://everse.software/RSQKit/three_tier_view (letzter Zugriff: 2026-01-22)

Fußnote:
Es kann hilfreich sein, sich die Analogie zu physikalischen Laborexperimenten vor Augen zu führen, bei denen ebenfalls drei Ebenen unterschieden werden können:

  • Ebene 1: ein kleines Laborexperiment, das speziell für eine Forschungsgruppe konzipiert wurde und in erster Linie zur Erprobung des Konzepts dient.
  • Ebene 2: eine mittelgroße Anlage (z. B. ein für einen Zweck konzipiertes Gebäude), die für eine Institution oder einem Forschungsprojekt für einen bestimmten Forschungskontext genutzt wird.
  • Ebene 3: eine groß angelegte Forschungseinrichtung für die gesamte Community, wobei die betreibende Einrichtung den größten Teil der Forschungszeit für externe Nutzer bereitstellt.

Personen im Forschungssoftware-Ökosystem

Was ist ein:e Forschungssoftware-Entwickler:in (Research Software Engineer)?

Wir verwenden den Begriff Forschungssoftware-Entwickler:in (abgekürzt RSE, von englisch “Research Software Engineer”) als Etikett, nicht als Jobtitel oder Identitätsbeschreibung. Im Wesentlichen verbinden RSEs Fachwissen in den Bereichen Softwareentwicklung und Methodenkenntnissen in einem oder mehreren spezifischen Forschungsfeldern. Je nach Rolle im Ökosystem kann das RSE-Etikett von Personen aus dem akademischen oder unterstützenden Forschungspersonal erfüllt werden. Häufig bezeichnen sich Einzelpersonen selbst als RSE; wir schließen jedoch auch explizit andere Bezeichnungen oder Jobtitel ein, wie z. B. “Computational Scientist”, “Forscher:in, der/die programmiert”, “Softwareentwickler:in im Forschungsumfeld”. Was diese Personen verbindet, ist ihr Engagement für die Förderung der nachhaltigen Entwicklung, Bereitstellung, Nutzung, Weitergabe und Wartung von Forschungssoftware.

Referenz:
[1] Netherlands eScience Center (2023): What is a Research Software Engineer? A definition by the Netherlands eScience Center. Zenodo. https://doi.org/10.5281/zenodo.7994286


Welche Rollen gibt es für Einzelpersonen im Forschungssoftware-Ökosystem?

Einzelpersonen können eine Vielzahl spezialisierter Aufgaben übernehmen, die die nachhaltige Entwicklung, Bereitstellung, Nutzung, Weitergabe und Wartung von Forschungssoftware unterstützen. Diese Aufgaben spiegeln die vielfältigen Wege wider, auf denen Einzelpersonen zum Forschungssoftware-Ökosystem beitragen:

  • Entwickler:innen entwerfen und entwickeln Forschungssoftware, arbeiten bei der Softwareentwicklung mit Gruppen zusammen und stellen langfristige Softwareentwicklungskapazitäten für umfassende Forschungssoftware-Entwicklungsprojekte mit einer Laufzeit von mehr als drei Monaten bereit.
  • Maintainer:innen übernehmen die langfristige Wartung von Forschungssoftware an einer Institution, bewerten Softwarequalität und analysieren Softwarebedarfe sowie die Leistungsfähigkeit der Software.
  • Administrator:innen betreuen die Forschungssoftware-Infrastruktur, indem sie Testinstanzen neuer Dienste bereitstellen, diese in Software-Stacks integrieren, lokale Instanzen etablierter Infrastrukturen wie GitLab bereitstellen und mit zentralen IT-Abteilungen, wissenschaftlichen Bibliotheken, Forschungsdatenmanagement-Stellen und Abteilungen für Hochleistungsrechnen zusammenarbeiten.
  • Forschende führen Forschungsarbeiten im Bereich der Forschungssoftwareentwicklung durch und wirken an der Ausarbeitung von Standards mit.
  • Modellierer:innen entwerfen, implementieren und validieren rechnergestütze Modelle, die Forschungssimulationen zugrunde liegen, und verbinden dabei fachspezifisches Wissen mit bewährten Methoden der Softwareentwicklung.
  • Nutzer:innen verwenden Forschungssoftware, um ihre Arbeit zu erledigen, Feedback zu geben, das Software-Design durch Anwendungsfälle mitzugestalten und den Bedarf an Funktionsupdates, Dokumentation und Benutzerfreundlichkeit zu fördern.
  • Lehrende vermitteln Kenntnisse im Umgang mit Forschungssoftware, entwickeln und passen Schulungsmaterialien an, stellen Ressourcen zum Selbststudium bereit, führen regelmäßig allgemeine Schulungen durch und wirken an den Studienprogrammen einer Einrichtung mit.
  • Community Manager:innen repräsentieren spezifische Forschungssoftware-Communitys, indem sie Vorträge, Seminare, Workshops und Hackathons organisieren, Online-Kommunikationskanäle bereitstellen und die Einarbeitung sowie das Austrittsverfahren für neue und ausscheidende RSEs an den jeweiligen Einrichtungen betreuen.
  • Berater:innen beraten zu verschiedenen Aspekten der Forschungssoftware-Entwicklung, darunter Softwarelizenzierung und -veröffentlichung, übernehmen langfristiges Mentoring, unterstützen bei der Erstellung von Software-Managementplänen, arbeiten mit Förder- und Transferstellen zusammen und übernehmen Ressourcenplanung für Forschungssoftware-Projekte.
  • Fürsprecher:innen machen auf den Wert und die Bedeutung von Forschungssoftware aufmerksam, fungieren als Bindeglied zwischen lokalen Institutionen und breiterer Communitys und prägen die öffentliche und institutionelle Wahrnehmung, indem sie bei Veranstaltungen Vorträge halten, zu politischen Diskussionen und Positionspapieren beitragen und sich an Initiativen zur Öffentlichkeitsarbeit beteiligen.
  • Gruppenleitungen geben einem Team von RSEs strategische Orientierung und sorgen für die Koordination, sie verwalten die Arbeitslast, fördern die Zusammenarbeit, unterstützen die berufliche Weiterentwicklung und stellen sicher, dass die Arbeit mit den institutionellen Zielen und Forschungsschwerpunkten im Einklang steht.

Was sind Forschungssoftware-Gilden?

Eine Forschungssoftware-Gilde ist ein strukturierter Zusammenschluss von RSEs, hypothesengeleiteten Fachwissenschaftler:innen und/oder Support-Personal, die sich zusammenschließen, um koordiniert die nachhaltige Entwicklung, Bereitstellung, Nutzung, Weitergabe und Wartung von Forschungssoftware innerhalb einer Institution oder über mehrere Institutionen koordiniert hinweg zu unterstützen. In der Praxis kann eine Institution mehrere Gilden beherbergen, z. B.:

  • dedizierte Abteilungen oder Zentren für Forschungssoftware
  • in Forschungsinstitute eingebettete Teams für Forschungssoftware
  • verteilte Netzwerke von RSEs in verschiedenen Einheiten hinweg
  • Open Source Program Offices (OSPOs)
  • semi-stabile Arbeitsgruppen
  • zeitlich begrenzte Projektinitiativen
  • virtuelle, institutsübergreifende Kollektive

Gilden können sich auf verschiedene Aufgabenbereiche im Forschungssoftware-Ökosystem konzentrieren, wie beispielsweise Softwareentwicklung, Infrastrukturverwaltung, Schulungen, Community-Management oder Fürsprache. Das charakteristische Merkmal einer Forschungssoftware-Gilde ist ihre gemeinsame Mission, eine bestimmte Forschungssoftware oder Forschungssoftware im Allgemeinen als zentrales Forschungsinstrument zu stärken.

Referenz:
[1] Kempf, D., Caspart, R., Flemisch, B. et al. (2025): Establishing central research software engineering units in german research institutions. Position Paper 4. https://de-rse.org/2023_paper-RSE-groups/paper.pdf