Entwicklung sicherheitskritischer Software & HardwareEin Erfahrungsbericht
ECC 2019Michael Schuler
CSA Engineering AG
Agenda
Allgemeines und Vorgehen
Requirements Management
Verifikation & Validierung
Werkzeuge-Validierung
Normenumfeld
EN 50126 (RAMS)
EN 50128 (Software)
EN 50129 (System)
EN 50159 (Kommunikation)
Vom Produkt zur Applikation
Spezifische Applikation
Generisches Produkt
Generisches Produkt
Generisches Produkt
Generische Applikation
Generisches Produkt
Generisches Produkt
Generisches Produkt
Vorgehen im Projekt
Spezifische Applikation
Umfang Release 2
VerifkationRelease 2
SicherheitsplanRelease 2
ValidierungRelease 2
Spezifische ApplikationRelease 2
HW Release 1(generisches
Produkt)
SW Release 2(spezifische Applikation)
Phasen-VerifikationSystem
(EN 50126/29)
Phasen-VerifikationSoftware
(EN 50128)
Änderungsentwicklung
Neue Funktionalität
Neue Funktionalität
Neue Funktionalität
Spezifische ApplikationRelease 1
HW Release 1(generisches
Produkt)
SW Release 1(spezifische Applikation)
Change-Request
Change-Request
Change-Request
Änderungs-Auswirkungsnalyse
Learning Vorgehen
Mit generischen Applikationen arbeiten
Mehr Intialaufwand
Einfachere Änderung / Erweiterung
Tätigkeiten CSA
Testing
Sicherheitsnachweisführung
Verifikation und Validierung
Lebenszyklus EN 50126
Phase 7 Herstellung
Phase 8Integration
Phase 9Systemvalidierung
Phase 10Systemabnahme
Phase 11Betrieb, Instandhaltung und
Leistungsüberwachung
Phase 12Ausserbetriebnahme
Risikobewertung
Legende:
Implementierung und Nachweis der Übereinstimmungen mit den RAMS
Anforderungen
Betrieb, Instandhaltung und Ausserbetriebnahme
Phase 1Konzept
Phase 2Systemdefintionen und betrieblicher Kontext
Phase 3Risikoanalyse und
beurteilung
Phase 4Festlegung von
Systemanforderungen
Phase 5Architektur und Aufteilung von Systemanforderungen
Phase 6Entwurf und
Implementierung
Unabhängigkeiten der Rollen
EN 50129:2003
EN 50128:2011
Requirements Management
Requirements / V-ModellSystemanforderungs-
spezifikation Systemtest / Validation
Gefährdungsanalyse und Risikobewertung
Sicherheitsanforderungs-spezifikation
Funktionale Sicherheitsanforderungen
Sicherheitsintegritäts-anforderungen
Sicherheit gegen systematische Fehler
Sicherheit gegenzufällige Fehler
QualitätsmanagementberichtSicherheitsmanagement-
bericht
Technischer Sicherheitsbericht
Funktionaler Sicherheitstest/Validation
Systemarchitekturentwurf Integrations- und Installationstests
Hardware-EntwurfSoftware-Entwurf Hardware-Validation Software-Validation
Implementierung
EN 50129
Requirements / V-Modell
EN 50128
Softwareentwicklungsphase (extern)
SW-Begutachtungsphase
SW-Wartungphase
SW-Anforderungsphase SW-Validierungsphase
SW-Architektur- und Entwurfsphase SW-Integrationsphase
SW-Komponententestphase SW-Komponentenentwurfsphase
SW-Komponenten-implementierungsphase
Softwareentwicklungsphase (extern)
System-Anforderungs-spezifikationSystem-Sicherheits-
anforderungs-spezifikation
System-Architektur-beschreibung
System-Sicherheitsplan
SW-Anforderungsphase
SW-Anforderungs-spezifikation
Gesamtsoftware-Testspezifikation
SW-Anforderungs-verifikationsbericht
SW-Architektur- und Entwurfsphase
SW-Architektur-spezifikation
SW-Entwurfs-spezifikation
SW-Schnittstellen-spezifikation
SW-Integrationstest-
spezifikationSW/HW-
Integrationstest-spezifikation
Software-Architektur- und
Entwurfs-verifikationsbericht
SW-Komponentenentwurfsphase
SW-Komponenten-entwurfs-
spezifikation
SW-Komponenten-testspezifikation
SW-Komponenten-entwurfs-
verifikationsbericht
Learnings Requirements & Traceability
Stufengerechte Erfassung
Zusammenfassende Dokumente
Reports in ALM-Tool generieren
Verifikation und Validierung
Verifikation / V-ModellSW-Komponententestphase
SW-Komponententest-
bericht
SW-Quellcode-verifikationsbericht
EN 50128
SW-Komponententestphase SW-Komponentenentwurfsphase
SW-Komponenten-implementierungsphase
SW-Architektur- und Entwurfsphase SW-Integrationsphase
SW-Anforderungsphase SW-Validierungsphase
Softwareentwicklungsphase (extern)
SW-Begutachtungsphase
SW-Wartungphase SW-Integrationsphase
SW-Integrations-testbericht
SW/HW-Integrations-testbericht
SW-Integrations-verifikationsbericht
SW-Validierungsphase
Gesamtsoftware-Testbericht
Software-Validierungsbericht
Werkzeuge-Validierungsbericht
Freigabemitteilung / Release Note
SW-Begutachtungsphase
SW-Begutachtungsplan
Software-Begutachtungs-
bericht
SW-Wartungphase
SW-Wartungsplan
SW-Änderungs-aufzeichnungen
SW-Wartungs-aufzeichnungen
SW-Wartungs-Verifikationsbericht
Verifikation / V-Modell
EN 50129
Hardware-EntwurfSoftware-Entwurf Hardware-Validation Software-Validation
Implementierung
Systemarchitekturentwurf Integrations- und Installationstests
Sicherheitsanforderungs-spezifikation
Funktionale Sicherheitsanforderungen
Sicherheitsintegritäts-anforderungen
Sicherheit gegen systematische Fehler
Sicherheit gegenzufällige Fehler
QualitätsmanagementberichtSicherheitsmanagement-
bericht
Technischer Sicherheitsbericht
Funktionaler Sicherheitstest/Validation
Systemanforderungs-spezifikation
Gefährdungsanalyse und Risikobewertung
Systemtest / Validation
Prüfkriterien
Vorgaben aus den Normen
Kriterienkatalog in ALM-Tool
Review-Berichte
Einfachheit Begutachtung
Erfüllung Prüfkriterien
Learnings Verifikation & Validierung
Review-Protokolle mit Erfüllung Kriterien
Konsequent im ALM-Tool
Einfacher Aufbau Review
Werkzeuge-Validierung
T1
T2
T3
Klassifizierung Werkzeuge T1
Keine Ausgaben die zum ausführbaren Code beitragen
Beispiel: Texteditor, MS-Office, Webbrowser
T1
T2
T3
Klassifizierung Werkzeuge T2
Unterstützt Test, Verifikation Entwurf oder Code
Fehler Werkzeug kann zu Nicht-Erkennung von Fehlern führen
Erzeugt keine Fehler in ausführbarer SW
Beispiel: ALM-Tool, Messung Testabdeckung, Testwerkzeuge
T1
T3
T2
Klassifizierung Werkzeuge T3
Erzeugt Ausgangsdaten die zum ausführbaren Code beitragen
Beispiel: Quellcodecompiler, Werkzeuge zur Veränderung von Sollwerten während des Systembetriebs
T1
T2
T3
Anforderungen Validierung T1
Werkzeug passend zum Entwicklungsprozess ausgewählt
Anforderungen Validierung T2
Auswahl begründen
Mögliche Fehler analysieren à Massnahmen
Handbuch / Spezifikation
Konfigurationsmanagement
Neue Version à Begründung
Anforderungen Validierung T3
Nachweis:
Ausgangsprodukt entspricht Spezifikation
Erfüllung Sicherheitshandbuch
Vollständiger Funktionstest
Zertifizierte Werkzeuge
Learnings Werkzeuge-Validierung
Fehleranalyse T2 Werkzeuge
Konfigurationsmanagement
Bedienungsanleitungen
Zertifizierte Werkzeuge
Vielen Dank !
Referenzen
EN 50126-1:2017
EN 50126-2:2017
EN 50128:2011
EN 50129:2003
https://pixabay.com
https://www.iconfinder.com
https://unsplash.com
Siemens Polarion