Machen Sie manuelle Regressionstests schneller, intelligenter und zielgerichteter. Sehen Sie es in Aktion >>
C++ ist eine komplexe Sprache und erfordert einen hohen Aufwand, um Vorhersehbarkeit, Sicherheit und Schutz zu gewährleisten. AUTOSAR (AUTomotive Open System Architecture) hat die AUTOSAR C++14-Anforderungen festgelegt, um die Verwendung von C++14 auf vorhersehbare Konstrukte zu beschränken. Erfüllen Sie diese Anforderungen mit Parasoft-Lösungen, um Sicherheitsrisiken zu minimieren.
Die AUTomotive Open System ARchitecture (AUTOSAR) ist aus einer Entwicklungspartnerschaft von Automobilunternehmen hervorgegangen. Die 2003 gegründete Gruppe strebte die Entwicklung einer standardisierten und offenen Softwarearchitektur für elektronische Steuergeräte (ECUs) im Automobilbereich an. Sie umfasst auch Halbleiter.
Die AUTOSAR Ziel der Entwicklungspartnerschaft war es, die Wirksamkeit und Verfügbarkeit von Sicherheitsanforderungen sowie Skalierbarkeit, Übertragbarkeit und Nachhaltigkeit über den gesamten Produktlebenszyklus hinweg zu verbessern. Diese Prinzipien werden zwar häufig mit Medizinprodukten in Verbindung gebracht, gelten aber auch für bestimmte Automobiltechnologien, die als sicherheitskritische Systeme eingestuft werden. Produkte wie Airbags erfordern eine Technologie, die sie präzise auslöst, während Systeme wie die Motorsteuerung Konsistenz erfordern.
Mehr eingebettete Software in Automobilen bedeutet auch eine umfangreiche Datenerfassung und Echtzeitverarbeitung. Verschiedene Aspekte von AUTOSAR zielen darauf ab, die Anforderungen moderner Automobilelektronik und Softwarekomponenten zu erfüllen.
Aufschlüsselung der AUTOSAR C++14-Codierungsrichtlinien
Es gibt zwei Arten von AUTOSAR-Plattformen: Adaptive und Classic. Die AUTOSAR Classic-Plattform bietet nicht die Flexibilität und Rechenleistung der Adaptive-Plattform. Die zunehmende Komplexität der Automobiltechnologie erfordert einfachere Reaktionen und schnellere Antworten. Die beiden Plattformen sind jedoch keine Rivalen, sondern Teamkollegen. Beide dienen unterschiedlichen Zwecken im Ökosystem der Automobilkonstruktion und -entwicklung.

| AUTOSAR-Classic-Plattform | Adaptive AUTOSAR-Plattform |
|---|---|
| Ideal für eine Single- oder Multicore-Architektur und tief eingebettete ECUs. | Ideal für neuere ECUs und soll auf HPC-Architekturen laufen, um diese besser zu nutzen. |
| Verwendet signalbasierte Kommunikation mit BUS-Netzwerken wie LIN oder CAN. | Verwendet dienstbasierte Kommunikation mit Ethernet. |
| Definiert ein Betriebssystem (OS). | Definiert den Ausführungskontext sowie eine Betriebssystemschnittstelle wie PSE51. |
| Statische Natur mit geringer Flexibilität. | Bietet „geplante Dynamik“ während der Anwendungsbereitstellung mit flexibler Integration. |
| Fristen sind aufgrund der Echtzeitverarbeitung dringender. | Weiche Echtzeitanforderung. |
| Beispiele sind Bremssysteme und Motorsteuerung. | Beispiele hierfür sind die Verarbeitung von Sensorfusionsdaten und Over-the-Air-Updates (OTA-Updates). |
AUTOSAR C++14 ist ein Codierungsstandard für C++ Version 14 (ISO/IEC 14882:2014). Es ist auch ein Artefakt oder eines der Ergebnisse der Definition der Adaptive AUTOSAR-Plattform, die Schnittstellenspezifikationen für APIs und Dienste bereitstellt. Dieser Abschnitt der AUTOSAR-Codierungsrichtlinien wurde ursprünglich aktualisiert MISRA C++ 2008 – ein veralteter Programmierstandard. MISRA und AUTOSAR gaben jedoch 2019 ihre Fusion bekannt, um die Aktualisierung auf C++17 zu unterstützen, die mittlerweile zur Standardsprache für viele moderne AUTOSAR-Elektroniklösungen geworden ist. Diese Richtlinien sind so robust und optimiert, dass sie von jeder Branche angewendet werden können, die Embedded-Programmierung in C++ benötigt.
AUTOSAR C++14 verfügt über 342 Regeln, die ein klares Verständnis und eine Orientierung hinsichtlich der Codierungsanforderungen bieten. Die Codierungsregeln von AUTOSAR C++14 sind nach Verpflichtungsstufe klassifiziert.
Entwickler können jedoch mit Genehmigung von einem AUTOSAR-Standard, einer AUTOSAR-Regel oder einer AUTOSAR-Richtlinie abweichen. Um Missbrauch zu verhindern, ist für jede Abweichung eine formelle Freigabe erforderlich. AUTOSAR klassifiziert Regeln außerdem danach, ob statische Analysewerkzeuge sie automatisch durchsetzen können.
Die Verwendung von C++14 in Verbindung mit den AUTOSAR C++14-Richtlinien ermöglicht Entwicklern den Einsatz überlegener Compiler und verbessert den Zugriff auf erweiterte Test-, Verifizierungs- und Analysetools. Dies ermöglicht den Einsatz neuer Entwicklungsmethoden wie Continuous Integration/Continuous Delivery (CI/CD), die Fehler im Softwareentwicklungszyklus früher erkennen.
„MISRA“, „MISRA C“ und das Dreieckslogo sind eingetragene Marken von The MISRA Consortium Limited. ©The MISRA Consortium Limited, 2021. Alle Rechte vorbehalten.
Die richtigen Entwicklungstools zur Sicherstellung der Softwarequalität zu finden, ist eine Frage von Versuch und Irrtum. Das heißt aber nicht, dass Sie mit unerprobten Tools oder Strategien experimentieren müssen. Die vielen Vorteile der Test- und Compliance-Automatisierung liegen auf der Hand.
Das frühzeitige Erkennen von Problemen erleichtert allen an der Softwareentwicklung Beteiligten die Arbeit. Von der Softwarearchitektur und Anwendungssoftware bis hin zu Diagnose und Validierung berücksichtigen die Lösungen von Parasoft alles.
Setzen Sie auf AUTOSAR C++14-Konformität, um sichere und zuverlässige Software zu entwickeln. So senken Sie die Entwicklungskosten, beschleunigen die Markteinführung und gewährleisten den langfristigen Produkterfolg.
Verhindern Sie Codefehler früher im Entwicklungsprozess, bevor sie später zu teureren Herausforderungen führen.
Parasoft bietet die statische Analyse von AUTOSAR C++14 als Lösung an, die von Prozessstandards wie ISO 26262, DO-178C, IEC 62304, IEC 61508, EN 50128 und mehr empfohlen wird.
Integrieren Sie die Sicherheitscodierungsrichtlinien von AUTOSAR C++14 als Teil Ihrer SAST-Strategie direkt in Ihren Softwareentwicklungslebenszyklus.
Parasoft integriert künstliche Intelligenz und maschinelles Lernen, um die Produktivität in den statischen AUTOSAR C++14-Analyse-Workflows Ihres Teams zu verbessern, indem die zuerst zu behebenden Verstöße gekennzeichnet und priorisiert werden.
Die statische AUTOSAR C++14-Analyse von Parasoft lässt sich problemlos in Ihre optimierte CI/CD-Pipeline integrieren und führt kontinuierliche Tests durch, um schnell qualitativ hochwertige und sichere Software bereitzustellen.
Erstellen Sie mit dem Parasoft RuleWizard Ihre eigene benutzerdefinierte Codierungsstandardkonfiguration für Ihr Unternehmen.
Parasoft bietet die Aggregation von MISRA mit allen unseren anderen unterstützten Codierungsstandards wie CERT, CWE, OWASP, UL 2900 und mehr.
Wenn es um die Einhaltung von AUTOSAR C++14 geht, gibt es mehrere sehr vorteilhafte Vorgehensweisen. Hier ist eine Liste mit einigen der zu berücksichtigenden Methoden.
Treffen Sie sich zusätzlich zur Einhaltung von AUTOSAR C++14 mit Ihren Kollegen aus der Softwareentwicklung und überprüfen Sie den Code des anderen systematisch auf Fehler und Verstöße gegen den Programmierstil. Es hat sich gezeigt, dass diese Aktivität die Codequalität beschleunigt und wesentlich verbessert.
Jede Abweichung von der AUTOSAR C++14-Richtlinie erfordert eine gründliche Dokumentation der folgenden Punkte: der spezifischen Richtlinie, des Umfangs, der Begründung, der Sicherheitsgarantie, der Konsequenzen und der Schadensbegrenzung.
Die AUTOSAR C++14-Konformität hilft Ihnen, Code zu schreiben, der leicht zu lesen und zu verstehen ist. Seien Sie nicht zu schlau und schreiben Sie keinen kryptischen Code, der schwer zu verstehen oder leicht misszuverstehen ist. Sie möchten nicht, dass andere Ingenieure oder Sie selbst viel Zeit damit verbringen, einen Fehler in Ihrem Code zu entschlüsseln.
Die AUTOSAR C++14-Konformität fördert die Code-Portabilität und ermöglicht die einfache Migration von Software zwischen Plattformen wie POSIX- und ANSI-C-basierten Systemen mit minimalen Änderungen. Diese Flexibilität reduziert den Anpassungsaufwand beim Wechsel von Compilern, Betriebssystemen oder Hardwarezielen und ermöglicht Unternehmen, Kosteneinsparungen oder strategische Chancen ohne größere Nacharbeiten zu nutzen.
Bestimmte Code-Konstrukte können gegen die AUTOSAR C++14-Regeln verstoßen. Parasoft ermöglicht es Ihnen, dieses Rauschen gezielt herauszufiltern.
Die Einhaltung von AUTOSAR C++14 hilft beim Schreiben von Code, der nicht viele Verzweigungen hat. Je mehr Verzweigungen, desto höher die Codekomplexität und desto höher die Anzahl der im Code gefundenen Fehler.
Die AUTOSAR C++14-Konformität hilft Ihnen beim Schreiben von zuverlässigem Code, der erwartete und unerwartete Szenarien – einschließlich negativer Anwendungsfälle und ungültiger Datenbedingungen – verarbeitet und so die Anwendungsstabilität gewährleistet.
Die Einhaltung von AUTOSAR C++14 hilft Ihnen, portablen Code zu schreiben, der in zukünftigen Produkten oder Projekten wiederverwendet werden kann. Dies verbessert die Produktivität und reduziert Arbeits- und Testkosten.
Moderne Automobil-Softwaresysteme setzen zunehmend auf offene, standardisierte Architekturen wie AUTOSAR, um sicherheitskritische autonome Fahr- und Konnektivitätsfunktionen zu ermöglichen. Zwei wichtige Beispiele dafür Compliance für Softwaretests für autonomes Fahren umfasst:
Dies sind nur einige bemerkenswerte Beispiele. Die zunehmende Verbreitung der AUTOSAR Adaptive Platform und IoT-fähiger Fahrzeuge macht Echtzeit-Datenmessung und adaptive Reaktionsfähigkeiten erfolgsentscheidend.
Das Analyse-Dashboard von Parasoft mit automatisiertem AUTOSAR-Compliance-Reporting macht es einfach, den für die Zertifizierung erforderlichen Nachweis zu erbringen.
Für sicherheitskritische Anwendungen sollten Sie unsere TÜV SÜD-zertifizierte Lösung verwenden, um die Einhaltung von Standards und eine einfache Übernahme in Ihre Hochleistungsentwicklungsprozesse zu gewährleisten.
Das Tolle an der AUTOSAR C++14-Kompatibilität ist, dass Sie sie Ihrem Team vorstellen und in jeder Softwareentwicklungsphase eines Projekts einsetzen können. Noch besser: Sie ist selbst dann effektiv, wenn ein Projekt oder Ihre ECU-Software unvollständig und nur teilweise codiert ist.
Da die Einhaltung der AUTOSAR C++14-Vorgaben zum Alltag jedes Entwicklers wird, können diese die Ergebnisse schneller analysieren und Fehler effizienter beheben.
Auch der Reifegrad des zu entwickelnden Produkts ist wichtig, da er Einfluss darauf hat, wie die AUTOSAR C++14-Konformität integriert wird. Das Adoption Lifecycle Management funktioniert wie unten beschrieben.
Dieser Ansatz zielt auf bestehende Projekte ab, die bereits auf dem Markt sind. Da nur minimal neuer Code entwickelt wird, sammeln sich alle entdeckten Sicherheitslücken und Schwachstellen als technische Schulden in der bestehenden Codebasis an.
Bei bestehenden Projekten mit aktueller Entwicklung verbessern die Teams den neuen Code während der Entwicklung, um weniger kritische Warnungen als technische Schulden aufzuschieben.
Neue Projekte übernehmen diesen Ansatz. Entwickler können die AUTOSAR C++14-Konformität von Anfang an in ihre Entwicklungsumgebungen integrieren, um einen hohen Qualitätsstandard des Codes sicherzustellen.
Zeigen Sie die Ergebnisse der AUTOSAR C++14-Konformität von C/C++test im dynamischen Berichts-Dashboard von Parasoft an. Sie können die Nachbearbeitung und erweiterte Berichtsstrategien mithilfe historischer Daten automatisieren.
Die Ergebnisse der AUTOSAR C++14-Konformität lassen sich über verschiedene Builds hinweg leicht erkennen. Dies gilt auch bei großen Codebasen und Legacy-Code, bei denen die Transparenz des Codes oft schwierig ist. Sie können sich schnell auf die Qualität des neu hinzugefügten Codes konzentrieren.
Die Parasoft Codeanalyse-AUTOSAR-Lösung C/C++test erkennt komplexe AUTOSAR C++14-konforme Laufzeitprobleme in einer AUTOSAR-Laufzeitumgebung bereits in der Entwicklungsphase – ohne kostspielige Laufzeittests. Dies optimiert Entwicklungsprozesse zum Nutzen aller Beteiligten.
Der C/C++-Test analysiert die Ausführungspfade im Code und findet AUTOSAR C++14-Konformitätsprobleme wie Nullzeiger-Dereferenzierung, Division durch Null und Speicherlecks. Außerdem sucht er nach Sicherheitslücken wie Arithmetik auf einem Zeigeroperanden, Pufferüberläufen, nicht erreichbarem Code und der cstdlib-Systemfunktion.
Mit Widgets, die die AUTOSAR C++14-Compliance automatisch nachverfolgen, erhalten Benutzer einen dynamischen Einblick in den Compliance-Prozess und können auf einfache Weise automatische Berichte für Code-Audits und Zertifizierungsziele erstellen.
Verbessern Sie Ihre Softwaretests mit Parasoft-Lösungen.