Empfohlenes Webinar: MISRA C++ 2023: Alles, was Sie wissen müssen | Zum Video

Lesezeit: 3 Minuten

Überblick

QinetiQ Space NV ist die belgische Raumfahrtabteilung der britischen QinetiQ Corporation, die sich auf die Entwicklung von hochzuverlässigen Produkten spezialisiert hat, die in den rauen Umgebungen des Weltraums eingesetzt werden, darunter Avionik, Elektroantrieb, Mikrogravitationsforschungsinstrumente, Robotersysteme, Weltraumsicherheit, Weltraumforschung, Fernerkundung und Kleinsatellitensysteme.

Die Herausforderung

Da ihre Produkte in Bezug auf die verwendete Softwaremenge und die damit verbundene Komplexität kontinuierlich zunehmen, erkannte das Management von QinetiQ ein zunehmendes Risiko für Systemfehler, die durch Softwarefehler verursacht werden, und die Notwendigkeit, unerwünschte Nebenwirkungen einer neuen Implementierung frühzeitig zu erkennen. Das Unternehmen benötigte eine Möglichkeit, die Qualität der Software in seinen Produkten zuverlässig zu verwalten.

Die Vorgehensweise

QinetiQ Space verwaltet die Entwicklung hochzuverlässiger Raumfahrtprodukte, vom Konzept bis zum Betrieb im Orbit. Um dies zu ermöglichen, beschäftigt die Abteilung Electronics and Software Engineering (ESE) Ingenieure, die sich dafür einsetzen, zuzuhören, zu verstehen und auf die Bedürfnisse ihrer Kunden einzugehen. Für die Entwicklung eingebetteter Software sind die Teammitglieder darauf spezialisiert, sicherheitskritische Softwareanwendungen zu entwickeln, die von Bootloadern, Low-Level-Gerätetreibern, Kommunikationsprotokollen, Systemdiensten und Echtzeit-Anwendungssoftware reichen.

Um die schiere Menge an verwendeter Software und die Komplexität dieser sicherheitskritischen Systeme, die in der rauen Weltraumumgebung eingesetzt werden, zu bewältigen, erkannte das Management den Bedarf an Qualitätskontrollwerkzeugen, um einen Verlust an Produktqualität oder Kundenzufriedenheit zu verhindern. Die ausgewählte Organisation Parasoft C / C ++ test um diese Risiken zu mindern, insbesondere um unter anderem MISRA Statische C/C++-Codeanalyse, Entwurf und Ausführung von Software Best Practices für Unit-Tests, und messen Sie die Testabdeckung.

Warum Parasoft?

Gegenüber den anderen in der Evaluierung berücksichtigten Tools war die Tool-Suite von Parasoft vollständiger. Da C/C++test alle erforderlichen Funktionen in einer einzigen Anwendung integriert (wodurch keine weiteren Tools erforderlich sind), profitiert das QinetiQ-Softwareentwicklungsteam von der Verwendung nur einer Benutzeroberfläche, die die Navigation zu identifizierten Problemen mit nur wenigen Mausklicks unterstützt. Wichtig für das Auswahlteam war auch die Fähigkeit, Codierungsregeln an die spezifischen Softwarequalitätsanforderungen ihres Unternehmens anzupassen, für die Parasoft einzigartige Unterstützung bietet.

QinetiQ muss auch die strengen Anforderungen erfüllen, die in den europäischen Softwareentwicklungs- und Qualitätsstandards ECSS-E-ST-40C, ECSS-Q-ST-80C und EN 9100 definiert sind, und Parasoft C/C++test konnte sie dabei unterstützen die attraktivsten Softwarequalitätskontrollfunktionen im Vergleich zum Kostenverhältnis aufweisen. Darüber hinaus machte sich bemerkbar, dass die Tool-Suite von der Community der sicherheitskritischen Software-Entwickler bereits weitgehend akzeptiert wurde, was ebenfalls zur Begründung ihrer Wahl beitrug.

Die Ergebnisse

Kontinuierliche Nutzung von Parasoft C/C++test

Heute verwendet das QinetiQ Embedded Software-Team Parasoft C/C++test, um:

  • Führen Sie MISRA durch C/C++ statische Codeanalyse.
  • Entwerfen und Ausführen von Software-Unit-Tests.
  • Testabdeckung messen.
  • Konfigurieren Sie Codierungsregeln je nach Projektanforderungen, wie z. B. Softwarekritikalität.
  • Führen Sie die Metriksammlung für den Quellcode durch.
  • Bericht über Unit-Test-Ergebnisse und Testabdeckung.

QinetiQ verwendet die Parasoft C/C++ Test-Tool-Suite seit vielen Jahren für die Entwicklung eingebetteter Software, die von wissenschaftlichen Instrumenten in Schachtelgröße für die Internationale Raumstation ISS bis hin zu kleinen autonom arbeitenden Satelliten reicht. Sie haben die Parasoft C/C++-Testtool-Suite problemlos in ihre bestehende Softwareentwicklungsumgebung integriert und aktualisiert.

75 % weniger Software-Problemberichte

Das QinetiQ-Softwareteam liefert qualitativ hochwertige, zuverlässige und „first-time-right“-Softwareprodukte, was bedeutet, dass das Produkt in einer abgelegenen und manchmal unzugänglichen Weltraumumgebung sicher, robust und gemäß seinen Spezifikationen korrekt funktionieren muss. Um dies zu erreichen, wird während der Produktentwicklung ein evolutionärer Lebenszyklus angewendet, bei dem bei aufeinanderfolgenden Projektbewertungsmeilensteinen eine erhöhte Qualität des Produkts erreicht und nachgewiesen wird. Bis sich die Satellitenhardware oben auf dem Launcher befindet, muss die Software bereit und validiert sein.

QinetiQ hat den Wert der Verwendung von Parasoft C/C++test gemessen, indem die Anzahl der Software Problem Reports (SPR) während der Entwicklung überwacht wurde. Seit der Integration von Parasoft C/C++test in ihren Softwareentwicklungsprozess haben sie eine deutliche Reduzierung der SPR-Ausgaben während der Softwareentwicklung beobachtet – ungefähr 75 %.

Selbstverifizierung

Die Integration von Parasoft C/C++test ermöglichte es dem Entwicklungsteam auch, die Qualität des Softwarecodes selbst zu überprüfen. Die Selbstverifizierung ist ein wichtiger Vorteil, da sie implizit die Softwarequalität nutzt, während gleichzeitig weniger Entwicklungszeit erforderlich ist, da weniger Fehler nach einem zwischenzeitlichen Verifizierungs- und Release-Zyklus behoben werden müssen. Folglich wurden die Gesamtentwicklungskosten von QinetiQ reduziert und es wurden keine Fehler in ihren Produkten nach der Bereitstellung festgestellt, wodurch die Produktqualität gestiegen ist. (Beachten Sie, dass kritische Softwareentwicklung eine strenge Produktverifizierung erfordert, daher bedeutet „keine Fehler“: 100 % Abdeckung der Komponententests, 100 % Abdeckung der Anforderungsprüfung, dedizierte Softwaresicherheitstests durch Fehlerinjektion und unabhängige Softwareverifizierung/Validierung (ISVV).)

Die Integration von Parasoft C/C++test ermöglichte es dem Product Assurance Manager auch, objektive Softwareprozessmetriken zu erfassen, die den Kunden von QinetiQ nützlich waren, um die Entwicklung ihres Softwareprodukts zu demonstrieren. Dies schafft Kundenvertrauen, verbessert langfristige Beziehungen und stärkt zukünftige Unternehmungen.

„Parasoft C/C++test ist jetzt ein integraler Bestandteil unserer kritischen Softwareentwicklungsaktivitäten. Die Integration in unseren Softwareentwicklungsprozess führte zu einer effizienteren Produktion von Softwarecode mit deutlich höherer Ausbeute. Um unsere aktuelle Produktionseffizienz und unser Qualitätsniveau beizubehalten, gehen wir davon aus, dass die bereitgestellte Lösung in unserem Software-Tooling-Arsenal verbleiben muss. Es ist geplant, die Lösung auch für weniger kritische Anwendungsentwicklungen einzusetzen.“

– Peter Matthijs, Avionik-Softwarearchitekt

Geh den nächsten Schritt

Entdecken Sie ein effektives Framework, das Sie bei der Auswahl einer statischen Analyselösung verwenden können.

„MISRA“, „MISRA C“ und das Dreieckslogo sind eingetragene Marken von The MISRA Consortium Limited. ©The MISRA Consortium Limited, 2021. Alle Rechte vorbehalten.

  • Industrie: Luft- und Raumfahrt
  • Standort: Kruibeke, Belgien
  • Lösung: C / C ++ - Test