MENU

Softwareentwicklung

Mikroprozessorbasierte Systeme in der Sicherheitstechnik sind heute nicht mehr wegdenkbar. Anders als bei der HW muss man bei Software keine Verschleißausfälle betrachten. Grundsätzlich können syste­matische Fehler bereits in der Spezifikations- bzw. während der Entwicklungsphase entstehen. Dies bedeutet dass SW-Fehler immer von Beginn an in einem Programm enthalten sein können, auch wenn sie erst unter bestimmten Bedingungen sehr viel später in Erscheinung treten können.

Die Umsetzung eines ausreichenden Qualitätsstandards unter Betrachtung des gesamten Software-Lebenszyklusses und der Sicherheitsintegrität aller Sicherheitsfunktionen ist ein wesentliches Merkmal für die Anforderungen zur Entwicklung von sicherheitsbezogener Software. Der Software­entwicklungsprozess und der Einsatz von Methodiken und fehlervermeidende Maßnahmen sind dabei in Sicherheitsstandards wie z.B. IEC 61508-3, EN 50128, ISO 26262-6, DO-178B usw. vorgegeben.

Unsere Leistungen:

  • Unterstützung bei der Optimierung und Implementierung von normkonformen SW-Entwicklungsprozessen
  • Zertifizierung von Werkzeugen, Betriebssystemen und Applikations-SW-Bausteinen
  • Beratung bei der Implementierung von Selbsttests
  • Beratung bei der Einführung von Prüf- und Verifikationsschritten
  • Unterstützung bei der Erstellung der SW-Sicherheitsanforderungsspezifikation (SSRS)
  • Prüfung der sicherheitsbezogenen Teile der Anwenderhandbücher

So gehen wir vor:

  • Durchführung von SW-FMEA, SW-FTA, SW-Kritikalitätsanalysen
  • Definition der Einsatzbedienungen der SW (Speichergröße, MMU, DMA, CPU-Typ, Speichermodell, Zeitanforderungen, Kommunikationsschnittstellen etc.)
  • Einführung von Werkzeugen (Toolchain), die unmittelbar in der Kette des SW-Entstehungsprozesses mit eingebunden sind (Compiler, Linker, Debuggingtools, Analysesysteme)
  • Unterstützung bei der Verifikations- und Validierungsplanung
  • Durchführung von Reviews, Walkthroughs, White Box Tests, Black Box Tests
  • Erstellung von Kriterien für das Testen einer Software (Anweisungsüberdeckung, Zweigüberdeckung, Pfadüberdeckung, Bedingungsüberdeckung, Anweisungsüberdeckung)