Schmuckbild: Hände am Laptoop, davor schwebende Bilder von Formularen und Checklisten

Hinweise für die Antragstellung: Die (Weiter-)Entwicklung von Forschungssoftware im Rahmen der Projektförderung

Die (Weiter-)Entwicklung von Forschungssoftware betrifft im Rahmen von Forschungsprojekten unterschiedliche Ebenen des Forschungsprozesses. Forschungssoftware kann z. B. als Forschungsmethode oder als Teil einer Forschungsinfrastruktur eingesetzt bzw. (weiter-)entwickelt werden oder als eigenständiger Forschungsgegenstand. Für alle Einsatzzwecke von Forschungssoftware leiten sich aus den von der DFG formulierten leitenden Prinzipien bei der Entwicklung von Forschungssoftware praktische Hinweise ab, die bei der Projektplanung bedacht und bei einer Antragstellung adressiert werden sollten.

Dokumentation und Softwaremanagementpläne

Bei der Erstellung von Software und ihrer Dokumentation können fachspezifische Best-Practice-Beispiele nützliche Orientierung bieten. Abhängig von der Reife bzw. Kategorie einer Forschungssoftware bietet es sich an, wesentliche Schritte der Entwicklung – von der Anforderungsdefinition bis zur Evaluation und Wartung der Software – in einem Softwaremanagementplan niederzulegen. Dies kann schon während der Projektplanung empfehlenswert sein. 

Die Vorlage eines Softwaremanagementplans als Teil des Förderantrags ist nicht erforderlich. Aus dem Antrag sollte aber hervorgehen und begründet werden, welche grundsätzlichen Entscheidungen zum Softwaretyp sowie zum Entwicklungsprozess, zur Zugänglichkeit und zur Pflege der Software getroffen wurden.

Neu- oder Weiterentwicklung von Forschungssoftware

Der Antrag sollte auf die Gründe einer Entscheidung zwischen Neu- oder Weiterentwicklung von Forschungssoftware eingehen (z. B. Möglichkeiten oder Hinderungsgründe, bestehende Software zu nutzen). Darüber hinaus sollte der Antrag darstellen, wie eine Einhaltung von fachspezifischen Entwicklungsstandards erreicht wird. Für die Softwareentwicklung benötigtes Personal sollte explizit benannt werden, seine Aufgaben sowie die Qualifikationsanforderungen explizit beschrieben werden.

Versionsmanagement

Handelt es sich um Forschungssoftware, die im Verlauf eines Forschungsvorhabens verschiedene Entwicklungsstufen durchläuft, sollte im Antrag auf die Umsetzung eines geeigneten Versionsmanagements eingegangen werden, um die Nachvollziehbarkeit des Forschungsprozesses sicherzustellen.

Qualitätssicherung im Forschungs- und Entwicklungsprozess

Überlegungen zu Zielvorstellungen, Meilensteinen etc., die einen Projekterfolg aufzeigen können, und angestrebte Möglichkeiten zur Zertifizierung der Software – wo vorhanden auch fachspezifisch – sollten als weitere stärkende Elemente einer guten Qualitätssicherung der Softwareentwicklung in die Projektplanung einbezogen werden. Die projektspezifischen Entscheidungen sind im Förderantrag zu skizzieren. 

Einbindung, Verwendung, Lizenzierung von Drittcode und Zitationspraxis

Bei der Zitation von Forschungssoftware sind neben den üblichen Angaben (Titel der Software, Jahr usw.) auch rechteinhabende Person(en), URL/DOI und die Versionsnummer zu nennen. Es wird empfohlen, sich dabei an fachüblichen Standards zu orientieren und die maschinelle Zitierbarkeit sicherzustellen.

Die Verwendung von Drittcode, also die Einbindung von Softwarepaketen in eigene Software, ist unter der Maßgabe geltender Lizenzbestimmungen und besonders unter dem Gesichtspunkt der wissenschaftlichen Integrität transparent zu dokumentieren.

Bei der Antragstellung ist darauf zu achten, dass gegebenenfalls Nutzungsrechte eingeholt werden müssen und dass die Nutzung von Drittcode entsprechend der Leitlinien zur Sicherung guter wissenschaftlicher Praxis zu zitieren ist.

Publikationen

Bei der Publikation von Forschungssoftware und Softwaredokumentationen sind Publikationswege zu bevorzugen, die den Open-Science- bzw. FAIR4RS-Prinzipien folgen, sofern dem keine rechtlichen oder sonstigen Gründe entgegenstehen. Sofern bei der Projektplanung bereits Entscheidungen über Dokumentations-, Lizenzierungs- und Publikationsmodelle getroffen wurden, sollte dies bei der Antragstellung dargelegt werden. 

Rechte und Autorschaft der Research Software Engineers

Vor Beginn eines Forschungsprojekts ist zu klären und gegebenenfalls vertraglich mit Mitarbeiter*innen, Studierenden bzw. externen Dienstleistern zu regeln, inwieweit ihr Entwicklungsbeitrag eine eigene Co-Autorenschaft und eigene Verwertungsrechte begründen. Dabei sollte zwischen Entwicklungsaufgaben unterschieden werden, die übliche Arbeitsprozesse betreffen (z. B. Installation von Modulen) oder eine eigenständige wissenschaftliche Leistung darstellen (z. B. bei Projektbeiträgen in Qualifikations- und Abschlussarbeiten). Die Entwicklungsleistung von Projektmitarbeiter*innen und Dritten soll in geeigneter Form (z. B. in der Softwaredokumentation) kenntlich gemacht werden und ihre Rolle im Projekt im Antrag beschrieben werden.

Vernetzung und Aufbau von Entwicklungs- und Nutzungscommunities

Die (Weiter-)Entwicklung von Forschungssoftware sowie die Gewährleistung ihrer Nachnutzung ist häufig von engen Kooperationen und der Beteiligung einer Entwicklungs- und Nutzungscommunity abhängig. Daher empfiehlt es sich, bei der Antragstellung darauf einzugehen, inwiefern eine eigene Beteiligung an bestehenden Communities im nationalen und/oder internationalen Rahmen oder der Aufbau einer eigenen Nutzungs- bzw. Entwicklungscommunity im Rahmen des Projekts vorgesehen ist und welche Ziele hier angestrebt werden.