Zuverlässige, sicherheitskritische und vertrauenswürdige Software spielt in vielen Forschungsbereichen des DLR eine entscheidende Rolle. Sie wird beispielsweise zur Steuerung von Satelliten, zur Überwachung von Robotern, in autonomen Luftfahrzeugen oder zur Steuerung komplexer Experimente auf der Internationalen Raumstation (ISS) eingesetzt. Aber auch Software am Boden, zum Beispiel im Kontrollraum, muss extrem zuverlässig arbeiten. Wenn durch das System Menschenleben gefährdet werden können oder andere Aspekte schützenswert sind, muss bei der Softwareentwicklung besonders sorgfältig vorgegangen werden. Dies wird immer wichtiger, da Software eine immer größere Verantwortung für den zuverlässigen Betrieb und die Sicherheit von Systemen übernimmt.
Das DLR-Institut für Softwaretechnologie erforscht und entwickelt zuverlässige Software für viele Forschungsbereiche des DLR. Dies geschieht in drei Bereichen:
Software Engineering für sichere und zuverlässige Systeme
Hier erforscht das Institut Entwicklungsmethoden und Vorgehensweisen, um die besonderen Anforderungen zuverlässiger und sicherheitskritischer Software bereits in der Softwareentwicklung zu adressieren. Dabei spielt die direkte Anwendbarkeit der Software-Engineering-Methoden insbesondere auf Flugsoftware eine wichtige Rolle. Die Software-Engineering-Methoden werden direkt in Flugmissionen erprobt und evaluiert.
Methodenforschung im Bereich Fehlertoleranz und Resilienz
Software-Engineering-Methoden zur Erhöhung der Robustheit von Systemen werden erforscht und in Projekten und Flugmissionen umgesetzt. Dabei stehen im Fokus der Forschung Fehler, die beispielsweise durch Strahlungseffekte im Weltraum, oder aber auch mögliche Cyber-Angriffe auf ein System entstehen.
Software-Qualitätssicherung
Das Institut ist der Kompetenzträger im DLR für das Thema Software-Qualitätssicherung, insbesondere in der Raumfahrt. In diesem Bereich werden sowohl die Softwareentwickler und - entwicklerinnen zum einen durch Softwareentwicklungsstandards unterstützt als auch die Softwareprodukte selbst durch innovative Test- und Verifikationsverfahren für die erhöhten Zuverlässigkeitsanforderungen fit gemacht. Hierbei ist ein Forschungsschwerpunkt der Einsatz von künstlicher Intelligenz in der Software-Qualitätssicherung.
Ein großer Teil der Forschung und Entwicklung in diesem Bereich erfolgt durch aktive Beteiligung an Raumfahrtmissionen. Das Institut ist derzeit an etwa 15 Flugmissionen beteiligt. Einige Beispiele aus den oben genannten Bereichen:
- Softwareentwicklung für die Missionen MAIUS, BECCAL und CARIOQA Pathfinder: Für diese quantenoptischen Experimente auf Höhenforschungsraketen (MAIUS-1 und MAIUS-2), auf der ISS (BECCAL) und eine geplante Satellitenmission (CARIOQA Pathfinder) wird die Kontroll-Software am Institut entwickelt. Dabei kommen innovative modellgetriebene Softwaremethoden zum Einsatz, mit denen ein Großteil der Software generiert werden kann.
- Neue Methoden zur Fehlertoleranz und Robustheit werden im Rahmen des ScOSA Flugexperiments auf dem DLR CubeSat CAPTn-1 entwickelt und erprobt. ScOSA ist eine innovative verteilte Rechnerplattform für Raumfahrzeuge, die es erlaubt, Anwendungen dynamisch, z.B. im Fehlerfall, auf andere Rechnerknoten zu verschieben, um eine hohe Rechenleistung bei hoher Zuverlässigkeit für Raumfahrtmissionen zu ermöglichen.
- Für die ESA-Mission PLATO ist das Institut für die Software-Qualitätssicherung des Kameradatenverarbeitungssystems des Instruments verantwortlich. Neben der Unterstützung der Entwickler in Qualitätsfragen bei solchen Missionen ist das Institut auch für die Einhaltung von Qualitätsstandards verantwortlich, um zuverlässige und sichere Systeme zu gewährleisten.