abgeschlossen 11/2003
Seit Anfang der Neunzigerjahre wird im Berufsgenossenschaftlichen Institut für Arbeitsschutz - BIA ein Werkzeug zur systematischen Analyse von sicherheitsrelevanter Software im Maschinenschutz routinemäßig eingesetzt. Dieses Werkzeug ermittelt etwa 40 Metriken (Qualitätsmaßzahlen für Software) und bestimmt aus weniger als zehn dieser Metriken Qualitätskriterien für die analysierte Software. Zahlreiche Industrieprojekte wurden in den letzten zehn Jahren durch die Software analysiert. Das im BIA eingesetzte Werkzeug zur statischen Analyse von sicherheitsrelevanter Software benutzt im Wesentlichen Qualitätsmaßzahlen zur Bestimmung des Umfangs (Halstead-Software-Science) und der Komplexität (Zyklomatische Komplexität nach McCabe) zur Bestimmung der Qualitätskriterien Einfachheit, Testbarkeit, Lesbarkeit und Selbstbeschreibung. Die Kriterien werden aus sieben Metriken durch einfache lineare Beziehungen hergeleitet. Aus diesen Kriterien wird ein Qualitätsreport für die Gesamtsoftware ermittelt, der beschreibt, ob die Software akzeptiert ist, zu dokumentieren ist, zu inspizieren ist, zu testen ist oder neu geschrieben werden muss. Da das benutzte Werkzeug in der Flugzeugindustrie entstanden ist, lassen sich die Maßzahlen für die Qualitätskriterien nur sehr eingeschränkt auf den Maschinenschutz übertragen. Eine systematische Analyse sicherheitsrelevanter kommerzieller Software im Maschinenschutz sollte helfen, Qualitätskriterien für den Maschinenschutz zu bestimmen.
Eine systematische Untersuchung aller Metriken von im Maschinenschutz akzeptierter sicherheitsrelevanter Software und von abgelehnter Software sollte eine solide Grundlage für Qualitätskriterien für sicherheitsrelevante Software im Maschinenschutz schaffen. Dazu wurden kommerzielle Projekte in Assembler und der Hochsprache C untersucht. Durch eine umfangreiche Literaturrecherche wurden alle vom Werkzeug benutzten Metriken ausführlich beschrieben und auf ihre Bedeutung für Qualitätskriterien hin untersucht. Die Formeln für Testbarkeit, Einfachheit, Lesbarkeit und Selbstbeschreibung wurden so erweitert, dass sie den Anforderungen im Maschinenschutz standhalten. Die neuen Formeln wurden, soweit möglich, in das vorhandene Werkzeug integriert, sodass sie als Grundlage für die zukünftige Analyse von Software im Maschinenschutz dienen können. Für eine umfassende Analyse am Personal Computer wurde ein eigenes Werkzeug erarbeitet, mit dem alle neuen Metriken und Qualitätskriterien bestimmt werden können.
Die vom Werkzeug Logiscope verwendeten Metriken und Qualitätskriterien wurden umfassend beschrieben und auf ihre Bedeutung als Qualitätsmaßzahlen für den Maschinenschutz hin untersucht. Auf der Basis von Microsoft Excel (TM) wurde ein Werkzeug entwickelt, mit dem ein Vergleich von im BIA analysierter Industriesoftware auf einfache Weise möglich ist. Zusätzlich erlaubt dieses Werkzeug, neue Metriken in die Bewertung einzubeziehen, die Bewertungsgrenzen der alten Metriken anzupassen und neue Qualitätskriterien zu definieren. Es wurde ebenfalls ein Programm entwickelt, mit dem die auf einer Apollo-Workstation ermittelten Ergebnisdateien von Logiscope auf einer PC-Plattform weiterverarbeitet werden können. Die Übertragung der Ergebnisse erfolgt voll automatisiert. Die Bewertung der Ergebnisse, die Logiscope mithilfe der eingesetzten Metriken und Qualitätskriterien erzielt, wurde auf sechs umfangreiche Industrieprodukte in Assembler mit mehr als 1.200 Modulen und über 23.000 Programmzeilen beschränkt. Für die Sprache Assembler wurden gut begründete neue Metriken auf der Basis der durch das Werkzeug bereitgestellten linguistischen und strukturellen Metriken entwickelt. Die Qualitätskriterien wurden unter Berücksichtigung der Besonderheiten sicherheitsrelevanter Software sinnvoll und begründet angepasst. Die Bewertung und auch die Entwicklung von Verbesserungsvorschlägen bezieht die Hochsprache C z. Zt. nicht mit ein, allerdings ist durch das erstellte Werkzeug eine Übertragung der Ergebnisse auf die Hochsprache C recht einfach möglich.
Weitere Informationen:
-branchenübergreifend-
Gefährdungsart(en):Mechanische Gefährdungen, -Verschiedenes-
Schlagworte:Softwareergonomie, Sicherheitstechnik, Maschinensicherheit
Weitere Schlagworte zum Projekt:statische Analyse sicherheitsrelevanter Software, Metriken, McCabe, Halstead, Qualitätskriterien, Assembler, Hochsprache C, Maschinenschutz