AdaCore: ASIL-4 Software mit SPARK Ada programmieren
Gibt es eine Alternative zum Programmieren in C++? Die Antwort gab Rob Tice von AdaCore.
Das Webinar ScaleUp 360 Automotive AI startete bereits heute Morgen mit netten Themen, die ich gerne weiterempfehlen möchte. Morgen gibt es weitere Seminare zum Thema Autonomes Fahren und Co. Zuletzt gab es einen Vortrag von Rob Tice von der Software-Schmiede AdaCore, die auf die Programmiersprachen Ada und SPARK setzen.
AdaCore ist eine Softwareschmiede, die bereits seit über 25 Jahren existiert. Sie programmieren Codes für den Verkehr, vor allem für den Schienenverkehr und die Luftfahrt. Mit zunehmendem Maße nimmt auch die Software im Auto zu und dafür empfiehlt sich das Unternehmen AdaCore mit ihrer Programmierweise.
Ada und SPARK, so Tice, eignen sich vor allem für sicherheitsrelevante Bereiche, denn man kann die Software dazu verifizieren. Daher machte Tice einen Vergleich mit der bekannten Programmiersprache C++, die traditionellerweise genutzt wird. Sie ist auch im Hinblick auf die ISO 26262 nutzbar.
Ada und SPARK sind als Sicherheitssoftware designed worden und verlagern die Verantwortung der Sicherheit vom Programmierer weg und zum Kompiliervorgang hin. Dort wird die Konsistenz der Codezeilen überprüft. Sei es bezüglich der fehlenden Variablen oder beispielsweise bezüglich des Runtime-Checks.
Im Gegensatz zu C werden dabei Fehler erkannt und derart würde das der Kompiliervorgang aufdecken. Ada ist ähnlich wie Pascal und SPARK basiert auf Ada 2012. Kommt es dabei zu einem Fehler, wird dieser ausgeworfen. Das hilft den Usern wie auch den Programmierern, denn die Absicht des Codes wird klarer.
Es entspricht auch den Anforderungen, die in der ISO 26262 gestellt werden. Dazu gehört beispielsweise die Code-Spezifizierung oder die Software-Architektur. Zudem, so Tice, spart Ada Geld und Zeit, da man die Zeilen nicht jedes Mal testen muss.