Waren Sie schon einmal Skifahren oder Snowboarden? Auf jedem Berg gibt es immer Leute, die denken, dass Schnelligkeit alles ist, um ans Ziel zu gelangen. Bergab mit voller Geschwindigkeit und ohne Technik zu rasen istdas sichere Rezept für eine Katastrophe. Die Pistenrettung wäre arbeitslos, wenn es die Stürze dieser Jungs und ihre Kollisionen mit anderen Skifahrern nicht gäbe. Die Moral der Geschichte: Wenn Sie es zu eilig haben, riskieren Sie Schaden für sich selbst und Ihre Umgebung. Man sollte sich immer genug Zeit nehmen und die richtige Technik einsetzen, um den Berg sicher und heil herunterzukommen. Die Compiler für autonome Fahrzeuge sind einander überraschend ähnlich. Die Entwickler konzentrieren sich oft auf den Leistungsvergleich ihres Compilers, nur um ihre Programme später durch Sicherheitsüberlegungen langsamer zu machen. Mit einem Compiler, der integrierte Sicherheitsfunktionen, vor allem aber statische Analysetools besitzt, können Sie Ihr Programm schnell ISO 26262-konform machen. Mit einem Sicherheitstool, das eine gute statische Analyse bietet, sparen Sie Zeit beim Debuggen, müssen keine Funktionen weglassen und können das Beste aus Ihrem Compiler herausholen.
Machen Sie es nicht so wie dieser Typ. Redaktionelle Quellenangabe: Mitch Gunn / Shutterstock.com
Seit dem Übergang von einzelnen elektronischen Steuergeräten (ECUs) zu integrierten Steuergeräten sind die Sicherheitsüberlegungen etwas komplizierter geworden. Die Zertifizierung jeder Funktion für das höchste ASIL-Level ist zeitaufwändig. Dies macht das Verwenden einer Speicherschutzeinheit (MPU) zu einer attraktiven Option für Zeitersparnis bei der Entwicklung. Das heißt aber auch, dass ein Missbrauch der MPU zu schweren finanziellen und rechtlichen Folgewirkungen führen kann und dass es sehr viel Zeit in Anspruch nehmen kann, dies manuell zu beheben. Ein integriertes statisches Analysetool kann Ihnen massiv Zeit sparen, die Sie sonst beim Durchwühlen der MPU-Zugriffsverletzungen verlieren würden.
Wie Sie wissen, konzentrieren sich die meisten Entwickler zuerst auf Geschwindigkeit und erst später auf die Sicherheit. Das bedeutet, dass Sie eine Menge Code schreiben und erst danach herausfinden, ob er den Sicherheitsanforderungen entspricht. Wenn Sie lange genug warten, ist Ihr Code bereits mit so vielen Sicherheitsverletzungen durchsetzt, dass es Tage dauern wird, diese zu beheben. Für ein vorausschauendes Arbeiten würde ein gut integriertes statisches Analysetool etwaige MPU-Zugriffsverletzungen im Keim ersticken, bevor sie zu einer Lawine anwachsen.
Ein gutes statisches Analysetool liefert auch eine Ursachenanalyse für MPU-Fehler. Diese Ursachenanalyse lässt Sie die Ursache des Problems eliminieren, anstatt einer Kette von Fehlern durch Ihr ganzes Programm hinterherzujagen. Neben der Ursachenanalyse können Sie mit den besten statischen Analysetools auch umfassende Prüfungen durchführen, ohne dass Hardware vorhanden ist. Sie würden nämlich keine Zeit sparen, wenn Sie warten müssten, bis die Hardware zum Einrichten von Testfällen kommt. Holen Sie sich ein statisches Analysetool, das Ihren Code überprüfen kann, bevor Sie die Hardware im Haus haben.
Achtung: MPU-Fehler voraus
Wenn das Debuggen zu lange dauert, könnten nicht unbedingt notwendige Funktionen gekappt werden. Zeit ist Geld, und beides ist nur begrenzt vorhanden. Wenn das Beheben der MPU-Fehler in Ihren Funktionen zu lange dauert, könnten die Features im Papierkorb landen. Miteinem guten statischen Analysetool dagegen können Sie Zeit und Geld sparen. Ein statisches Analyse-Werkzeug mit automatischer Prüfung auf häufige Fehler braucht 1% der Zeit, die eine manuelle Fehlerprüfung benötigt. Das bedeutet bis zu 15% Kosteneinsparungen bei der Fehlerprüfung.
Ursachenanalyse-Tools können Ihnen ebenfalls Zeit und Geld sparen. Es ist vielleicht verlockend, bis zur Fertigstellung Ihres Programms zu warten, um zu überprüfen, ob alle Sicherheitsvorgaben eingehalten erden. Wenn Sie aber zu lange warten, könnten einige Bugs bereits tief in Ihrem Code verwurzelt sein. Die Ursachenanalyse kann Ihnen zeigen, wo das Problem seinen Ursprung hat, und Sie davon abhalten, sich auf der Jagd nach einem Fehler im Dickicht zu verlaufen. Ein statisches Analysewerkzeug mit Ursachenanalyse braucht gegenüber einer manuellen Überprüfung 95% weniger Zeit, um Fehlerursachen zu finden. Das könnte Ihnen noch einmal 5% der Kosten der Fehlersuche sparen.
Wenn es nur so einfach wäre
Einige Entwickler wählen den schnellsten Compiler für ihre Anwendung und sind dann später gezwungen, einige Optimierungen aufzugeben, weil die Sicherheitstools ihrer Drittanbieter diese Optimierungen nicht integrieren können. Es ergibt keinen Sinn, superschnelle Ski zu kaufen, wenn Sie nicht in der Lage sind, mit ihnen zu fahren. Ein hervorragendes statisches Analysetool kann Ihnen helfen, alle Widersprüche zwischen Ihrer Sicherheitssoftware und Ihrem Compiler zu beheben.
Wenn Sie auf einem Paar Ski aus dem Discounter für 10 € den Berg hinunterrasen, werden Sie nicht heil ankommen. Sie brauchen die richtige Ausrüstung und die entsprechende Technik. Ein voll ausgestattetes statisches Analysetool lässt Sie ungehindert debuggen und wesentliche Fehler schnell beheben. Tools sind oft nur so gut wie das Unternehmen, die sie gemacht hat. Es ist wichtig, zu wissen, dass der Entwickler Ihres statischen Analysetools vertrauenswürdig ist. Deshalb empfehle ich einen Entwickler mit einer ASPICE-L2 Zertifizierung. Das garantiert, dass der Entwickler Sie unterstützen kann, falls Sie Probleme bekommen. Der Zufall will es, dass TASKING von Altium vor kurzem seine Zertifizierung für ASPICE Level 2 erhalten hat.
Wie ich schon sagte: das beste statische Analysetool wird Sie ungehindert debuggen lassen, Ursachenanalyse liefern. Sie müssen nicht auf die Hardware warten und es wird gut mit Ihrem Compiler vereinbar sein. Der Safety Checker von TASKING ermöglicht all dies und noch viel mehr.
Haben Sie noch Fragen zu statischen Analysetools? Rufen Sie einen Experten bei TASKING an.