new display design Displays für Mikrokontroller · I²C, SPI, RS232 · mit / ohne Touchpanel · 3,2“ bis 7,0“ · USB Eval-Kits · integrierte Grafikfunktionen · mit Speicher ELECTRONIC ASSEMBLY GmbH · Fon: +49 (0)8105/778090 · vertrieb@lcd-module.de · www.lcd-module.de
Ist Software-Sicherheit messbar? Editorial Der Trend, immer mehr Funktionen mittels Software zu realisieren, verschafft Geräteherstellern und Kunden unbestritten eine ganze Reihe von Vorteilen. Die spannende, bislang nur ansatzweise beantwortete Frage ist allerdings: Wie testet man die funktionale Sicherheit komplexer softwarebasierter Systeme, die beispielsweise in industriellen Applikationen vernetzt miteinander arbeiten und Abläufe ohne Eingriff des Menschen steuern sollen? Heiko Riessland, pls Programmierbare Logik & Systeme GmbH Fakt ist: Funktionale Sicherheit kann nicht, wie fälschlicherweise noch oft angenommen, nachträglich „hineingetestet“ werden, sondern ist das Ergebnis eines klar definierten Entwicklungsprozesses, der schon beim Design alle denkbaren bzw. relevanten Sicherheitsaspekte berücksichtigt. Nichts desto trotz benötigt funktionale Sicherheit einen Nachweis, muss also irgendwie gemessen werden. Dies erfolgt typischerweise beim Testen der Software, doch wie so oft ist auch hier die Praxis weitaus komplizierter als die Theorie verspricht. So haben sich parallel zu den normalen, sehr applikationsspezifischen Funktionstests inzwischen mehrere systematische Methoden etabliert. Die bekannteste davon ist die Messung der Code-Abdeckung (Code coverage). Damit lässt sich ermitteln, wie detailliert eine Software getestet wurde. Theoretisch stehen dafür verschiedene Testtiefen zur Verfügung. Wirklich praktikabel und von Standards wie IEC 62061 oder ISO 26262 empfohlen sind davon aber eigentlich nur die Abarbeitung aller Maschineninstruktionen (Statement Coverage), die Prüfung, ob an jeder Programmverzweigung alle Möglichkeiten durchlaufen wurden (Branch Coverage) und Modified Condition/Decision Coverage (MC/DC), also ein Test mit systematischer Variation aller verwendeten booleschen Ausdrücke. Die anderen Testtiefen werden entweder wegen zu geringer Aussagekraft (Line Coverage, Function Coverage) oder des unverhältnismäßig hohen Realisierungsaufwandes (Path Coverage) kaum verwendet. Zur Messung der Code-Abdeckung stehen im Prinzip zwei Verfahren zur Verfügung: die Instrumentierung des Programms oder die Aufzeichnung durch hardwaregestützte Methoden wie Programm-Trace. Mit der theoretisch bei allen Testtiefen hinweg anwendbaren Instrumentierung lässt sich zwar die Ausführung durch den hinzugefügten Code gut protokollieren, sie hat aber den für viele Embedded-Applikationen entscheidenden Nachteil, dass sich dadurch die Größe der Applikation und damit das Speicherlayout und das Laufzeitverhalten ändern. Ein typischerweise nicht-invasiver Programm-Trace kann hier klar punkten. Dafür ist er ohne weitere Vorkehrungen aber nur für Statement Coverage und - eingeschränkt - für Branch Coverage anwendbar. Schon bei optimiertem Code und erst recht bei MC/DC können die notwendigen Informationen mittels Programm-Trace gar nicht mehr oder wenn doch, dann nur mit sehr großem Aufwand gewonnen werden. Inzwischen ist es in einem konkreten Anwendungsfall zwar erstmals gelungen, auch auf Programm-Trace-Daten basierende Branch Coverage-Messungen an optimiertem Code ohne Einschränkungen zu ermöglichen, indem der Compiler die für die Analyse unerlässlichen Informationen über eine optimierte Programmstruktur dem Debugger zugänglich macht. Doch dies ist nur ein kleiner von noch vielen notwenigen Schritten, der zeigt, dass die Herausforderungen in puncto funktionale Sicherheit letztlich nur in enger Zusammenarbeit zwischen Anwendern und den Herstellern der Entwicklungs- und Testwerkzeuge zu meistern sind. Heiko Riessland, www.pls-mc.com PC & Industrie 8/2014 3
Software/Tools/Kits Bild 3: Auf der
Software/Tools/Kits 10 Bild 2: CAN-
Software/Tools/Kits Hintergrundinfo
Software/Tools/Kits Deutsche Solar
Neuer Editor PAS LD für Sicherheit
Bilddatenerfassung in Echtzeit Soft
Globale Fabriksteuerung in Echtzeit
Software/Tools/Kits der Produktion
Aktuelle Managementsoftware erhöht
Software/Tools/Kits InfoCarrier 5.9
Kataloge Neuer Conta-Clip-Katalog
Bildverarbeitung Intelligente Kamer
Bildverarbeitung Ex-geschützte Wä
Funkfernsteuerung Sesam 800 Kommuni
Kommunikation Rubrik geräte in dem
Sicherheit Konsequent betriebssiche
Antriebe Elektromagnetische Bremse
Elektromechanik IP67 RJ45 / USB / L
Elektromechanik Zukunftssicheres 10
Bild 3: Die Art der auftretenden Ph
Stromversorgung Universal-Plug & Pl
Bauelemente Power-Modul für Eingan
Business-Talk Ganzheitliches Energi
NLT Technologies (ehemals NEC LCD T
ABB-Messtechnik: Kompetent und schn
PROCESS-INFORMATIK Entwicklungsgese
Laden...
Laden...
Laden...