+ All Categories
Home > Documents > Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von...

Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von...

Date post: 13-Mar-2021
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
31
Entwicklung sicherheitskritischer Software & Hardware Ein Erfahrungsbericht ECC 2019 Michael Schuler CSA Engineering AG
Transcript
Page 1: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Entwicklung sicherheitskritischer Software & HardwareEin Erfahrungsbericht

ECC 2019Michael Schuler

CSA Engineering AG

Page 2: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Agenda

Allgemeines und Vorgehen

Requirements Management

Verifikation & Validierung

Werkzeuge-Validierung

Page 3: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Normenumfeld

EN 50126 (RAMS)

EN 50128 (Software)

EN 50129 (System)

EN 50159 (Kommunikation)

Page 4: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Vom Produkt zur Applikation

Spezifische Applikation

Generisches Produkt

Generisches Produkt

Generisches Produkt

Generische Applikation

Page 5: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Generisches Produkt

Generisches Produkt

Generisches Produkt

Vorgehen im Projekt

Spezifische Applikation

Page 6: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

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

Page 7: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Learning Vorgehen

Mit generischen Applikationen arbeiten

Mehr Intialaufwand

Einfachere Änderung / Erweiterung

Page 8: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Tätigkeiten CSA

Testing

Sicherheitsnachweisführung

Verifikation und Validierung

Page 9: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

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

Page 10: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Unabhängigkeiten der Rollen

EN 50129:2003

EN 50128:2011

Page 11: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Requirements Management

Page 12: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

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

Page 13: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

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

Page 14: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Learnings Requirements & Traceability

Stufengerechte Erfassung

Zusammenfassende Dokumente

Reports in ALM-Tool generieren

Page 15: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Verifikation und Validierung

Page 16: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

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

Page 17: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

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

Page 18: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Prüfkriterien

Vorgaben aus den Normen

Kriterienkatalog in ALM-Tool

Review-Berichte

Einfachheit Begutachtung

Page 19: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Erfüllung Prüfkriterien

Page 20: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Learnings Verifikation & Validierung

Review-Protokolle mit Erfüllung Kriterien

Konsequent im ALM-Tool

Einfacher Aufbau Review

Page 21: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Werkzeuge-Validierung

T1

T2

T3

Page 22: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Klassifizierung Werkzeuge T1

Keine Ausgaben die zum ausführbaren Code beitragen

Beispiel: Texteditor, MS-Office, Webbrowser

T1

T2

T3

Page 23: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

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

Page 24: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

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

Page 25: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Anforderungen Validierung T1

Werkzeug passend zum Entwicklungsprozess ausgewählt

Page 26: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Anforderungen Validierung T2

Auswahl begründen

Mögliche Fehler analysieren à Massnahmen

Handbuch / Spezifikation

Konfigurationsmanagement

Neue Version à Begründung

Page 27: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Anforderungen Validierung T3

Nachweis:

Ausgangsprodukt entspricht Spezifikation

Erfüllung Sicherheitshandbuch

Vollständiger Funktionstest

Zertifizierte Werkzeuge

Page 28: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Learnings Werkzeuge-Validierung

Fehleranalyse T2 Werkzeuge

Konfigurationsmanagement

Bedienungsanleitungen

Zertifizierte Werkzeuge

Page 29: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

Vielen Dank !

Page 31: Entwicklung sicherheitskritischer Software · 2019. 9. 2. · beurteilung Phase 4 Festlegung von Systemanforderungen Phase 5 ... Validierungsbericht Werkzeuge - Validierungsbericht

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


Recommended