Software in sicherheitsrelevanten Systemen Ralf Pinger / Stefan Gerken Sommersemester 2016.

Slides:



Advertisements
Ähnliche Präsentationen
der betrieblichen Projektarbeit im Rahmen der Abschlussprüfung
Advertisements

Blue J.
Integrations- und Funktionstests im Rahmen des V-Modelles
Vorgehensmodell - Wasserfallmodell
Designing Software for Ease of Extension and Contraction
Software in sicherheitsrelevanten Systemen
Christos, Kornelia, Jan Christos, Kornelia, Jan Entwicklungsumgebung Versteht unseren Java Programm Code Versteht unseren Java Programm.
Christos, Kornelia, Jan Christos, Kornelia, Jan Entwicklungsumgebung Versteht unseren Java Programm Code Versteht unseren Java Programm.
Christos, Kornelia, Jan Christos, Kornelia, Jan Entwicklungsumgebung Versteht unseren Java Programm Code Versteht unseren Java Programm.
Paul, Morten, Yannick Blue J. Entwicklungsumgebung versteht Java Programmcode versteht Java Programmcode Für die Entwicklung eigener Software.
Objektorientierter Entwurf (OOD) Teil 3: Qualitätsmodell
Modellbasierte Software-Entwicklung eingebetteter Systeme
Qualitätssicherung von Software Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FIRST.
On a Buzzword: Hierachical Structure David Parnas.
LE LM 10 - LO3 Verfahren zur Qualitätssicherung
Erfahrungen aus Tests komplexer Systeme
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Aufgaben des Testens Vergleich des Verhaltens einer Software mit den an sie gestellten.
Es gibt viele Arten von Risiken
Algorithmentheorie 04 –Hashing
Testen, Analysieren und Verifizieren von Software
Informatik Klasse 7 Grundlagen.
Access 2000 Datenbanken.
Datenbankentwurfsprozess
The XeriScape Artificial Society Von: Ralf Kopsch Seminar: Artifical Life.
Software in sicherheitsrelevanten Systemen Ralf Pinger / Stefan Gerken Sommersemester 2013.
Tino Reindanz - FSU Jena Seminar Aktive Datenbanken – SS 2007 Folie 1 Seminar Aktive Datenbanken Rule Development Rule Development for Active Database.
Mehr Qualität und schnellere Marktreife durch effiziente Softwaretests
Vorgehensmodelle: Schwergewichtige Modelle
Spezifikation von Anforderungen
Maike Thiel Kezban Akayin Kirstin Körner Hayriye Görsün präsentiert.
Fakultät für Informatik Lehrstuhl IV: Software & Systems Engineering1 Zentralübung Automotive Software Engineering – Übungsblatt 3 Sascha Schwind.
Qualität und Evaluation im Unterricht
Ausgleichungsrechnung I
Rund um die Uhr- Überwachung mit buck Überwachung.
Theorien, Methoden, Modelle und Praxis
GIS - Seminar Wintersemester 2000/2001
1. Entwicklungsumgebung 2. Kontextmenü 3. Compile 4. Objekt 5. Attribut 6. Klasse 7. Deklaration 8. Intialisierung.
Strukturierter Entwurf (und Realisierung)
Definitionen der SWT (1)
Context-awareness Andreas Bossard, Matthias Hert.
5 Software-Qualität 5.1 Qualität 5.2 Taxonomie der Software-Qualitäten.
IKP Uni Bonn Medienpraxis EDV II Internet-Projekt
Regionale Dienstbesprechung Willich,
1. Entwicklungsumgebung 2. Kontextmenü 3. Compile 4. Objekt 5. Attribut 6. Klasse 7. Deklaration 8. Intialisierung.
Java Programmierung.
Modellbildung und Simulation
deterministisches chaos
Lehrplan Technik GOSt.
GIS Design: A Hermeneutic View (Michael D. Gould)
Kompetenzen - Hintergrund
Korrektheit von Programmen – Testen
Paul, Morten, Yannick Blue J. Entwicklungsumgebung  versteht Java Programmcode  Für die Entwicklung eigener Software  Durch die Programmierung.
Einführung Blue J. Inhaltsverzeichnis  Definition  Vokabeln.
Einführung zur Fehlerrechnung
Software in sicherheitsrelevanten Systemen
Information - syntaktisch
Software in sicherheitsrelevanten Systemen
leistungsbild wege zum konzept 1 7 Was ist Entwerfen? - try and error Entwerfen ist eine besondere Form des Problemlösens. Die Schwierigkeit.
Detaillierte Beschreibung der Vorgehensweise in der Ablaufplanung und Terminplanung Abbildung: Vorgehensweise bei der Ablauf- und Terminplanung.
Christos, Kornelia, Jan Christos, Kornelia, Jan Entwicklungsumgebung Versteht unseren Java Programm Code Versteht unseren Java Programm.
Biopsychosoziale Entwicklung (1) Anlage oder Umwelt?
Ferienakademie Tutzing 2009 Forum Six Sigma Sandra Beecken Design for Six Sigma.
1 Normen und Werte in der Sozialen Arbeit – ein systemisches Modell Gesellschaft als System.
Einführung in AspectJ ● Inhalt: 1)Überblick 2)Elemente des crosscuttings in AspectJ 3)„Hello World“ in AspectJ 4)Wie Aspekte in Java verwoben werden 5)Join.
Software in sicherheitsrelevanten Systemen
Software in sicherheitsrelevanten Systemen
Resilience Die Fähigkeit um zur Ausgangsform, -position zurückzukehren, nachdem es gebogen, verformt oder komprimiert wurde. Die Fähigkeit sich von einer.
Software in sicherheitsrelevanten Systemen
Software in sicherheitsrelevanten Systemen
Software in sicherheitsrelevanten Systemen
 Präsentation transkript:

Software in sicherheitsrelevanten Systemen Ralf Pinger / Stefan Gerken Sommersemester 2016

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page 2 Kapitel 2 - SW und Systeme Inhaltsübersicht 1.Abgrenzungen 2.Vollständigkeit und Korrektheit 3.Toleranzen bei SW und HW und Auswirkungen auf die Entwicklung 4.Fehlerpropagation 5.Fehler und Ausfälle 6.Quantifizierung 1.zufällige Fehler 2.systematische Fehler 3.Qualität

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Abgrenzungen – Definition Definition Software Intellektuelle Schöpfung, die Programme, Verfahren, Regeln und alle dazugehörige Dokumentation umfasst, die zum Betrieb eines Systems gehören. englische Übersetzung intellectual creation comprising the programs, procedures, rules and any associated documentation pertaining to the operation of a system. Quelle: EN 50128

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Vollständigkeit und Korrektheit Vollständigkeit  Wurden alle Eingangswerte und ihre Parameter definiert?  Führen alle Verhaltensweisen der realen Welt zu gefährdungsfreien Reaktionen des implementierten Systems? Korrektheit  Tut das System genau das, was definiert wurde?  Führen alle implementierten Reaktionen des Systems zu einem gefährdungsfreien Verhalten der realen Welt? Folgerung: Korrektheit ist theoretisch nachweisbar, Vollständigkeit maximal plausibel

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Toleranzen Bild: nach Sergio Montenegro  "normaler" Funktionsbereich eines Systems ist ein schmales Band  Fehlerbereich ist der Rest

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Toleranzen – HW und SW Auswirkungen bei  Hardware  Sind analoger Natur (sie „zerbricht“ nicht unmittelbar)  Führen im Allgemeinen nicht sofort zu einem Ausfall des Teils  Führen nicht zwangsläufig zu einem Bruch  Software  Ist digital (Werte sind sofort unplausibel, Wertebereiche laufen über, …)  Führen im Normalfall sofort zu einem undefinierten Zustand  Regenerieren sich im Normalfall nicht

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Toleranzen – Beispiel SW-Fehler Kincardine in Ontario, Kanada, Schwerer Reaktorunfall 1990 Beim Austausch eines abgebrannten Brennelementes geriet die computergesteuerte Umlademaschine in einen unkontrollierten Zustand. Als sie sich 40 cm über dem Schachtdeckel befand, wurden durch einen falschen Befehl im Code des Computers, der die Umlademaschine kontrollierte, zugleich alle 4 Bremsen des Hebezuges gelöst und das schwere Gerät fiel auf die Schachtabdeckung. Die Folge war der Austritt von I hochradioaktivem schweren Wasser aus dem Leck, das in den Brennstoffbehälter geschlagen worden war

Software in sicherheitsrelevanten Systemen Sommersemester 2016 Ablauf:  Störung oder Fehler liegen vor  Störung wird wirksam  Störung pflanzt sich fort  Störung führt zu einem Unfall Ralf Pinger / Stefan Gerken Page Fehlerpropagation – Störungen und Unfälle Bild: nach Sergio Montenegro

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Fehlerpropagation – Hierarchisch Bild: nach Sergio Montenegro Fehler pflanzen sich in der funktionalen Programmhierarchie fort, da einzelne Module sich undefiniert verhalten

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Fehlerpropagation – Datenfluss Bild: nach Sergio Montenegro Fehler pflanzen sich zeitlich im Datenfluss fort, da einzelne Module sich undefiniert verhalten und reaktive Systeme im Regelfall nicht gedächtnislos sind.

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Fehlerpropagation – Fehlerauswirkungen Bild: nach Sergio Montenegro

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Fehler und Ausfälle Fehler ist die Abweichung von einem erwarteten Sollwert  Fehler kann unterschiedliche Ursachen haben  Menschliche (z. B. Fehlbedienungen)  Systematische (z. B. Programmierfehler, falsche Anforderungen)  Zufällige Ursachen (z. B. Übertragungsfehler)  Physikalische (z. B. Messfehler) Ausfall ist das Versagen einer technischen Funktion  Ausfall bezieht sich auf physikalische Objekte  Ausfall ist in der Regel stochastisch  Nur ein unerwarteter Ausfall kann zu einem Fehler führen Ausfall und Fehler hängen zusammen, sind aber nicht identisch!

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Quantifizierung Zweck:  ist nichts anderes als die Angabe von irgendetwas als Zahlenwert  zum Zweck der Vergleichbarkeit  erzeugt das Gefühl einer objektiven Bewertung Problem:  Vergleichbarkeit  Objektivität

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Quantifizierung – zufällige Fehler Voraussetzung: Stochastisches Fehlermodell  Softwarefehler besitzen (hoffentlich) deterministisches Fehlermodell  Ausfall  Stochastisches Modell über die Zeit → Ausfallrate ≡ Ausfälle des Elements pro Stunde  Stochastisches Modell über die Nutzungsfälle → Ausfallwahrscheinlichkeit ≡ Ausfälle pro Nutzung des Elements  Betrifft sowohl Verfügbarkeit als auch Sicherheit

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Quantifizierung – systematische Fehler Mögliche Quantifizierung:  Z. B. Gefundene Fehler pro LOC Prognose von systematischen Fehlern  Systematische Fehler treten bei gleichen Eingangsbedingungen reproduzierbar immer wieder auf  Zufälligkeit der Eingangsbedingungen sind nicht notwendigerweise gegeben  Warum einen Fehler nicht beheben, wenn er bekannt ist?  Woher weiß man, wie die Restfehler verteilt sein werden?

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Quantifizierung – korrekt, robust und vollständig Korrektheit ist ein Synonym für Fehlerfreiheit, das heißt:  Korrektheit ist digital  Korrektheit einer Realisierung ist bezogen auf deren Spezifikation  Eine fehlende Spezifikation impliziert Korrektheit Vollständigkeit ist  verallgemeinert, wenn alles für eine Problemlösung erforderte realisiert wurde (Normalbetrieb und Fehlerfälle)  bezogen auf Software die Umsetzung aller Anforderungen der Spezifikation  bezogen auf ein Problem die Spezifikation aller Aspekte eines Problems Robustheit ist  unter unerwarteten Situationen sinnvoll zu reagieren  nicht digital  nicht proportional zur Korrektheit

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Quantifizierung – Qualität Qualität - Lat.: qualitas – Beschaffenheit  Die Gesamtheit von Merkmalen (und Merkmalswerten) einer Einheit bezüglich ihrer Eignung, festgelegte und vorausgesetzte Erfordernisse zu erfüllen. [Deutsche Gesellschaft für Qualität] Qualitätsmodelle  Softwarequalität selbst ist in der Praxis nicht direkt anwendbar.  weitere Detaillierung und Konkretisierung durch Qualitätsmodelle  Ableitung von Unterbegriffen

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Quantifizierung – Qualitätsmodelle Qualitätsmodell nach Balzert

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Quantifizierung – Qualitätsmodelle Qualitätsmodell nach ISO/IEC

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Quantifizierung – Qualitätsmodelle Qualitätsmodell GQM nach Basili, Rombach

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Quantifizierung – Metriken Beispiele:  McCabes zyklomatische Zahl  Eindeutig definiert  Reproduzierbar  Nur auf Kontrollflussgraphen anwendbar  Lines of Code (LOC)  Unklarheit bezüglich Leerzeilen und Kommentarzeilen  Function Points  Basiert auf individuellen Einschätzungen  Prinzipbedingt nur sehr eingeschränkt reproduzierbar

Software in sicherheitsrelevanten Systemen Sommersemester Ralf Pinger / Stefan Gerken Page Quantifizierung – Qualität Bild: Axel Zechner Qualitätsanforderungen Qualitätsmodell Architekturmodell Designmodell