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

Lesezeit: 4 Minuten

Überblick

Ein führendes Unternehmen in der Verteidigungs- und Luft- und Raumfahrtindustrie baut seit über 50 Jahren Flugzeuge für die Militär- und Zivilluftfahrt. Während dieser Zeit entwickelten sie sich vom Bau elektromechanischer Systeme zum Entwurf und der Entwicklung fortschrittlicher Hardware- und Software-Luftfahrtsysteme für verschiedene Plattformen. In den letzten XNUMX Jahren hat die Avionik-Gruppe eine Entwicklungskultur der Erzielung, Wartung und Bereitstellung sicherer und zuverlässiger Luftfahrtsysteme gepflegt.

Dieses führende Avionikunternehmen baut Komponenten, die aus Flugsteuerungs- und Betätigungssystemen mit höchsten sicherheitskritischen Anforderungen bestehen. Ein Scheitern ist völlig inakzeptabel. Sie liefern Systeme an andere OEMs, darunter Hersteller von Hubschraubern und autonomen Flugzeugen. Das Unternehmen ist auf die Entwicklung von DO-178C-konformen Avioniksystemen für die Situationssicherheit und -erkennung von Flugzeugen, Funk- und Audiomanagement, Datenerfassung und luftgestützte Computersysteme spezialisiert. Außerdem bauen sie Temperatur- und Schwingungssensoren.

Sehen Sie sich eine Vorschau der Präsentation dieses führenden Anbieters von Avioniksystemen auf dem Embedded Software Testing & Compliance Summit 2021 an. Erfahren Sie, wie sie automatisierte Testtechnologien genutzt haben, um sichere Avioniksysteme effizient bereitzustellen und den Test-ROI zu maximieren.

VOLLSTÄNDIGE PRÄSENTATION HIER VERFÜGBAR >>

Die Herausforderungen

Das Unternehmen sah sich zwei Hauptherausforderungen im Zusammenhang mit Codierungsstandards gegenüber.

  1. Integrieren eines Codierungsstandards zur Einhaltung DO-178C und besteht die Prüfung.
  2. Suche nach einem anpassbaren Testtool zur Durchsetzung der Unternehmensregeln und -standards.

Entspricht DO-178C

Derzeit muss das Unternehmen sein Flugsteuerungssystem nach dem strengsten Avionik-Prozessstandard RTCA DO-178C DAL A entwerfen, entwickeln und testen. Ein Teil der Verifizierungs- und Validierungsphase von DO-178C erfordert die Anwendung einer statischen Codeanalyse und die Verwendung einer Codierung Standard. Die Verwendung eines Codierungsstandards zur Einhaltung von DO-178C ist von entscheidender Bedeutung. Die Einarbeitung bringt Herausforderungen mit sich.

Die Zufriedenheit der Luftfahrt-Zertifizierungsbehörde ist am wichtigsten. Wenn das System die mit DO-178C verbundenen Auditanforderungen nicht erfüllt und eine Zertifizierung erhält, darf die Lieferung des Systems nicht erfolgen. Diese Auditpflichten bestehen, um die Sicherheit zu gewährleisten. Sie verifizieren die Erfüllung aller DO-178C-Anforderungen mit dem Nachweis, dass das Team solide Softwareentwicklungspraktiken befolgt hat und die Tests mit bestandenen Ergebnissen durchgeführt wurden.

Testen von benutzerdefinierten Codierungsstandards

Das Avionikunternehmen hat seine eigenen Best Practices und hohe Standards beim Schreiben von Code. Aus diesem Grund hat das Softwareentwicklungsteam seine eigenen Codierungsstandards basierend auf bewährten Codierungspraktiken entwickelt und implementiert, die sich im Laufe der Jahre angesammelt haben, und diese um bestehende Industriestandards wie . erweitert MISRA C. und ISO C90.

Die Übernahme dieser benutzerdefinierten Standards vermeidet Codierungskonstrukte, die unerwünschtes und unvorhersehbares Verhalten verursachen. Es stellt auch über alle Projekte und Gruppen hinweg sicher, dass der Code:

  • lesbar
  • Uniform
  • Wartbar
  • Testbar
  • Sicher
  • Sicher
  • Zuverlässig

Mit dem Ziel, die Effizienz des Code-Review-Prozesses zu steigern, benötigte das Team ein Tool zur Automatisierung und Unterstützung bei der Durchführung der Codeanalyse und der Codierungsdurchsetzung. Weitere Anforderungen an das Tool waren:

  • Durchsetzung aller benutzerdefinierten Codierungsregeln und -richtlinien.
  • Dokumentation der Due Diligence des Teams für spätere Audits.
  • Rückverfolgbarkeit, die auch von DO-178C gefordert wird.

Die Herausforderung bestand darin, ein Testtool zu finden, mit dem das Unternehmen die Codierungsregeln und -richtlinien anpassen konnte. Das Unternehmen benötigte eine Lösung, die über die Standardlösung hinausging.

Die Vorgehensweise

Da die Regelsätze von Coding-Standards vollständig angepasst werden mussten, entschied sich der führende Anbieter von Avionik für die C/C++-Testlösung von Parasoft, um die Analyse, Überprüfung und Durchsetzung von Coding-Standards für seine sicherheitskritische Software zu automatisieren. Sie verlassen sich auf die Unterstützung von Parasoft für MISRA C, DO-178C und ein eigenes angepasstes Regelwerk.

Das Ziel der Anpassung von Codierungsstandards und der Automatisierung von Tests bestand darin, die Gesamteffizienz der Entwicklung zu steigern und Code einfacher zu überprüfen, zu debuggen, zu aktualisieren und zu warten.

Das Unternehmen benötigte außerdem eine Lösung, die sich in seinen sicherheitskritischen Entwicklungsprozess integrieren lässt. Reibungslose Integration in ihren Entwicklungsworkflow, Parasoft C / C ++ test automatisiert ihre Codierungsstandards und den Überprüfungsprozess.

Ein repräsentativer Abschnitt über den Entwicklungsworkflow des Avionikunternehmens. Die statische Analyse spielt eine Schlüsselrolle bei der Automatisierung der Coding-Standards und Code-Reviews.
Ein repräsentativer Abschnitt des Entwicklungsworkflows des Avionikunternehmens. Die statische Analyse spielt eine Schlüsselrolle bei der Automatisierung der Coding-Standards und Code-Reviews.

Lösungsvorteile

Das Avionikunternehmen hat Parasoft C/C++test in seinen sicherheitskritischen Softwareentwicklungsprozess implementiert, um bemerkenswerte Vorteile zu erzielen.

  • Geben Sie Entwicklern kontinuierliches Feedback. Während der Entwicklung verwendet das Team die Lösung, um den in Entwicklung befindlichen Code zu analysieren und erhält während der Arbeit direktes Feedback an die Entwickler. Sie erhalten sofortiges Feedback zur Einhaltung von Codierungsstandards und zur Früherkennung von Fehlern.
  • Helfen Sie beim Onboarding neuer Entwickler. Neue Mitarbeiter können sich mit den Unternehmensstandards vertraut machen. Neue Mitarbeiter können die Codierungsstandards dank der sofortigen Unterstützung und des Feedbacks der Tools schnell erlernen.
  • Automatisieren Sie den Code-Review-Prozess. Das Unternehmen automatisierte die langwierigen Teile seines Code-Review-Prozesses, sodass sich das Team auf die Teile der Überprüfung konzentrieren kann, die menschliches Eingreifen erfordern, wie die Erfüllung von Anforderungen, Design- und Implementierungsentscheidungen.
  • Regelanpassung aktivieren. Unser Kunde hat seinen eigenen statischen Analyseregelsatz entwickelt, um seine spezifischen Anforderungen für seine Luft- und Raumfahrtprojekte zu erfüllen. Die Anpassungsfähigkeiten von Parasoft C/C++-Testregeln waren ein wichtiges Feature für die Erstellung dieser Regeln.
  • Bereiten Sie Software auf lange Lebenszyklen vor. In der Flugzeugindustrie muss Software 30 Jahre oder länger flugtauglich sein. Dies bedeutet, dass Wartung und Updates ein wichtiger Aspekt bei Design und Implementierung sind. Das Wissen, dass ihr Code den Unternehmensstandards entspricht, bedeutet, dass er für zukünftige Entwickler besser lesbar und wartbar ist.
  • Werkzeuge qualifizieren. Sicherheitskritische Standards erfordern, dass Werkzeuge, die während der Entwicklung verwendet werden, den Qualitätsstandards entsprechen, die für das zu entwickelnde Produkt gelten. In diesem Fall möchte das Unternehmen den Parasoft C/C++-Test für DO-178C qualifizieren, Ergänzung DO-330, Ergänzung zu Software-Tool-Qualifizierungsüberlegungen. Parasoft bietet Werkzeugqualifikation Kits für diese und andere Standards, was dazu beiträgt, den Arbeitsaufwand und die Zeit für die Durchführung der erforderlichen Tests und Dokumentation zu reduzieren.

Die Ergebnisse

Mit Parasoft C/C++test, das vollständig in seinen Softwareentwicklungsprozess integriert war, erstellte das Avionikunternehmen eine benutzerdefinierte Lösung Statische Programmanalyse Regelsatz, um ihre unternehmensweite Software anhand ihres sicherheitskritischen Codierungsstandards zu bewerten.

Wenn die Tools vorhanden und der Prozess in einen Teil des Entwicklungsworkflows integriert sind, erhalten sie während der Codierung sofortiges Feedback, um Entwicklern zu helfen, die benutzerdefinierten Standards einzuhalten, und neuen Entwicklern zu helfen, sich auf den neuesten Stand zu bringen.

Erfahren Sie, wie Sie mehrere automatisierte Testtechnologien optimieren und den Test-ROI mit einer einheitlichen Testlösung maximieren.

„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
  • Lösung: C / C ++ - Test