SYSTEM- UND SOFTWARE-ENGINEERING Kapitel 3 Zuverlässige Systeme Vorlesung im Wintersemester 2012/13 FG System- und Software-Engineering Prof. Dr.-Ing. Armin Zimmermann
Inhalt Fehler und Fehlerursachen Zuverlässige Systeme Fehlervermeidung Fehlertoleranz Zuverlässigkeitsbewertung Modelle, Fehlerbaumanalyse Bewertung einzelner Komponenten Bewertung zusammengesetzter Systeme Fallstudie Zuverlässige Systeme 2
Fehler und Fehlerursachen Nichtfunktionale Anforderungen Problem: komplexe Systeme arbeiten nicht immer so wie gewünscht / spezifiziert! Sicherheit (safety) Verkehrstechnik (Auto, Bahn, Flugzeug) Chemie, Reaktorschutz, Medizintechnik Verletzlichkeit (security) Viren, Eindringen in Rechensysteme Unterbrechungsfreiheit (continuity) einer Mission Flugzeug, Blindlandesystem, Raumfahrt Datenkonsistenz und Datenintegrität (consistency) Buchungs- und Reservierungssysteme Zuverlässige Systeme 3
Fehler und Fehlerursachen Kenngrößen zuverlässiger Systeme Zuverlässigkeit (reliability) R(t) = Wahrscheinlichkeit, dass das System im Intervall [0, t] intakt ist Verfügbarkeit (availability) A(t) = Wahrscheinlichkeit, dass das System zum Zeitpunkt t intakt ist Sicherheit (safety) S(t) = Wahrscheinlichkeit, dass das System im Intervall [0, t] entweder intakt ist oder seine Funktion auf sichere Weise beendet hat Zuverlässige Systeme 4
Fehler und Fehlerursachen Kenngrößen zuverlässiger Systeme Überlebenswahrscheinlichkeit Wahrscheinlichkeit, dass das System im Zeitintervall (0,t) nicht ausfällt Voraussetzung: System war zum Zeitpunkt t = 0 fehlerfrei Ausfallwahrscheinlichkeit Wahrscheinlichkeit, dass das System im Zeitintervall (0,t) ausfällt Voraussetzung: System war zum Zeitpunkt t = 0 fehlerfrei Zuverlässige Systeme 5
Fehler und Fehlerursachen Typische Zuverlässigkeitsanforderungen Systeme mit langer Einsatzdauer Z.B. unbemannte Raumfahrt, Satellit, Typische Anforderung: Verfügbarkeit A(10 Jahre) 0.95 Zwischenzeitliche längere Ausfälle (z.b. 1 Woche) sind akzeptabel Sicherheitskritische Systeme Z.B. elektrische Flugsteuerung, industrielle Steuerungen, militärische Systeme, Typische Anforderung: Zuverlässigkeit R(3 Stunden) 1-10 -7, Sicherheit S(3 Stunden) 1-10 -7 Zuverlässige Systeme 6
Fehler und Fehlerursachen Typische Zuverlässigkeitsanforderungen Systeme mit langen Wartungsintervallen Wartungen werden periodisch durchgeführt, Reparatur zu anderen Zeitpunkten ist unmöglich oder sehr teuer Z.B. Raumstation, Telefonvermittlungsrechner in schwer zugänglichen Gebieten, Typische Anforderung: Zuverlässigkeit R(1 Monat) 0.99 Systeme mit hoher Verfügbarkeit Z.B. Bankbuchungs-, Börsentransaktionssystem, Typische Anforderung: Verfügbarkeit A(1 Tag) 0.99 Zuverlässige Systeme 7
Fehler und Fehlerursachen Unzulänglichkeiten technischer Systeme Ein Fehler (fault) im System führt zu einem fehlerhaften Zustand (error) Der Übergang in einen fehlerhaften Zustand wird als Ausfall (failure) bezeichnet Ein fehlerhafter Zustand kann zu einem Systemversagen (crash) führen Beispiel Fehler: Irrtum des Programmierers Fehlerhafter Zustand: falscher Code Systemversagen: wenn Ausführung des falschen Codes zu falschen Ausgaben führt Zuverlässige Systeme 8
Fehler und Fehlerursachen Entwicklungsfehler Entstehen vor Inbetriebnahme des Rechensystems Fehlerhafte Spezifikation, Implementierung, Dokumentation Herstellungsfehler Bedingt durch fehlerhafte Materialien oder Hilfsmittel Fertiges System entspricht nicht der Spezifikation Betriebsfehler Fehler in der Nutzungsphase des Systems Zufällige, physikalische Fehler (alterungsunabhängig) Verschleißfehler Störungsbedingte Fehler aufgrund äußerer Einflüsse Bedienungsfehler, Wartungsfehler Absichtliche Fehler (Sabotage) Zuverlässige Systeme 9
Fehler und Fehlerursachen Permanente Fehler Fehlermaskierung oder Ausgliederung der defekten Komponente Möglichst Reparatur Beispiel: fehlfunktionierende Hardwarekomponenten (Funktionsoder Speicherbausteine) Transiente Fehler Auswirkungen vorübergehender Ereignisse Keine Reparatur erforderlich Fehlermaskierung oder Fehlerkompensierung ausreichend Beispiel: Störsignale auf Nachrichtenleitung Intermittierende Fehler Treten zeitweilig für einen begrenzten Zeitraum auf Sonderfall permanenter oder transienten Fehler Beispiel: Wackelkontakt Zuverlässige Systeme 10
Grundbegriffe Zuverlässigkeit dependability Unzulänglichkeiten impairments Mittel means Kenngrößen measures Fehler faults errors Ausfälle failures Überlebens- Wahrscheinlichkeit reliability Verfügbarkeit availability Realisierung procurement Analyse validation Fehler- Vermeidung fault avoidance Fehler- Toleranz fault tolerance Modellierung modeling Simulation simulation Test testing Anfälligkeitsanalyse error forecasting Zuverlässige Systeme 11
Grundbegriffe Jedes reparierbare System befindet sich abwechselnd in den Zuständen intakt und defekt Zustand intakt defekt Lebensdauer Ausfalldauer t Mittlere Lebensdauer (MTTF, mean time to failure) = mittlere Zeit bis zum Ausfall eines Systems Mittlere Ausfalldauer (MTTR, mean time to repair) = mittlere Zeit für eine Reparatur Zuverlässige Systeme 12
Grundbegriffe Mittlerer Ausfallabstand (MTBF, mean time between failures) ist die mittlere Zeit zwischen zwei Ausfällen Zusammenhang: MTBF = MTTF + MTTR Ausfallrate: = 1/MTTF Reparaturrate: = 1/MTTR Verfügbarkeit (availability) und Nichtverfügbarkeit: Wahrscheinlichkeit, dass ein System zu einem vorgegebenem Zeitpunkt intakt bzw. defekt ist Mittlere Verfügbarkeit = MTTF / MTBF Mittlere Nichtverfügbarkeit = MTTR / MTBF Zuverlässige Systeme 13
Grundbegriffe Unterschied zwischen Überlebenswahrscheinlichkeit und Verfügbarkeit Überlebenswahrscheinlichkeit bezieht sich auf die Zeitspanne bis zum ersten Ausfall eines Systems Verfügbarkeit kann trotz häufiger Ausfälle hoch sein (reparierbares System mit kurzen Reparaturzeiten) Zuverlässige Systeme 14
Fehler und Fehlerursachen Zuverlässige Systeme Fehlervermeidung Fehlertoleranz Zuverlässigkeitsbewertung Modelle, Fehlerbaumanalyse Bewertung einzelner Komponenten Bewertung zusammengesetzter Systeme Fallstudie Zuverlässige Systeme 15
Zuverlässige Systeme Mittel zur Realisierung zuverlässiger Systeme Fehlervermeidung Übliche Qualitätssicherungsmaßnahmen Bei Hardware: Bauteile aussuchen, überdimensionieren und künstlich altern Schwachstellenanalyse Fehlertoleranz Fähigkeit eines Systems, auch mit einer begrenzten Anzahl fehlerhafter Subsysteme seine spezifizierte Funktion zu erfüllen (ITG 3004) Zuverlässige Systeme 16
Schwachstellenanalyse Arten und Ursachen von Schwachstellen Organisatorische Schwachstellen Unzulänglichkeiten in der Aufbau- bzw. Ablauforganisation Informationelle Schwachstellen Falsche oder fehlende Informationen Medienbrüche Technische Schwachstellen Unzulänglichkeiten in der technischen Ausstattung Unterscheidung in Quantifizierbare Nicht quantifizierbare Zuverlässige Systeme 17
Schwachstellenanalyse Arten und Ursachen von Schwachstellen Quelle: Markscheffel Zuverlässige Systeme 18
Schwachstellenanalyse Gefahrenursache bekannt unbekannt Beschreibung des Systemverhaltens z.b. Ereignisablaufanalyse Induktive Analyse z.b. Ausfalleffekt- und Bedeutungsanalyse Deduktive Analyse z.b. Fehlerbaumanalyse Explorative Analyse z.b. Ursache- Wirkungsanalyse bekannt unbekannt Auswirkungen Quelle : Krömker, Fenelon / McDermid Zuverlässige Systeme 19
Schwachstellenanalyse Methoden zur Schwachstellenanalyse Fehlerbaumanalyse (DIN 25424) Ursache-Wirkungs-Diagramm (Ichikawa - Diagramm) Ereignisablaufanalyse (DIN 25419) Ausfalleffekt-Analyse (DIN 25488) Zuverlässige Systeme 20
Schwachstellenanalyse Ursache-Wirkungs-Analyse Bestimmt Ursachen und Konsequenzen eines kritischen Ereignisses Einstufig vernetzte Zusammenhänge Ursachen Wirkungen Ursachen Wirkungen Quelle : Krömker Zuverlässige Systeme 21
Schwachstellenanalyse Ishikawa-Diagramm Mögliche und bekannte Ursachen (Einflüsse) Einteilung in Haupt- und Nebenursachen Einfluss auf Wirkung (Problem) Positiv oder negativ Quelle : Krömker Zuverlässige Systeme 22
Schwachstellenanalyse Quelle : Krömker Zuverlässige Systeme 23
Schwachstellenanalyse Ereignisablaufanalyse (event tree analysis) Ereignisabläufe von bekannten Störung zu unbekannten Endzuständen Untersucht Störfälle, Schwachstellen und Unfälle sowie ihre kausalen Folgeereignisse Beispiel: Einlesen einer fehlerhaften XML-Datei von einer Software [Quelle: Krömker, Bartholomäus] Zuverlässige Systeme 24
Schwachstellenanalyse Ausfalleffektanalyse (failure mode and effects analysis) Ereignisabläufe von bekannten Störung zu unbekannten Endzuständen (Risikoanalyse) Fehlerereignissen einzelner Komponenten und Auswirkungen auf das Gesamtsystem Akzeptanz, Ablehnung oder Empfehlung von Schutzmaßnahmen einzelner Systemkomponenten Zuverlässige Systeme 25
Schwachstellenanalyse Beispiel einer FMEA: Geschwindigkeitssensor in der Automobilindustrie Quelle: Krömker, Bartholomäus Zuverlässige Systeme 26
Fehler und Fehlerursachen Zuverlässige Systeme Fehlervermeidung Fehlertoleranz Zuverlässigkeitsbewertung Modelle, Fehlerbaumanalyse Bewertung einzelner Komponenten Bewertung zusammengesetzter Systeme Fallstudie Zuverlässige Systeme 27
Fehlertoleranz Fehlertoleranz Hilfsmittel zur Konstruktion zuverlässiger Systeme Maßnahmen zur Erzielung von Fehlertoleranz: Spezifikationsfehler Softwarefehler Äußere Störungen Hardwarefehler FEHLER- VERMEIDUNG Fehler Systemversagen Bauelementeausfälle Implementierungsfehler FEHLER- MASKIERUNG FEHLER- TOLERANZ Zuverlässige Systeme 28
Fehlertoleranz Fehlermaskierung Verhindert die Auswirkungen eines Fehlers in einem System, so dass die ununterbrochene Erfüllung seiner Funktion ermöglicht wird Damit der Ausfall von Teilsystemen nicht zum Systemversagen führt, ist Redundanz notwendig Definition: Vorhandensein von mehr als für die Ausführung der vorgesehenen Aufgaben notwendigen Mittel Zuverlässige Systeme 29
Arten von Redundanz Statische (fehlermaskierende) Redundanz Mehrere gleichartige oder verschiedenartige Komponenten zur Erfüllung der gleichen Systemfunktion Erhöhung der Überlebenswahrscheinlichkeit Dynamische Redundanz System ist in der Lage, Fehler zu erkennen Im Fehlerfall Rekonfiguration, d.h. die Systemstruktur wird verändert Erhöhung der Verfügbarkeit Zuverlässige Systeme 30
Arten von Redundanz Heiße Redundanz (hot standby) Zusätzliche Komponenten sind an der Ausführung der Systemaufgaben ständig beteiligt Kalte Redundanz (cold standby) Zusätzliche Komponenten werden erst bei Störung eingeschaltet Annahme: Komponenten können nicht ausfallen, solange sie ausgeschaltet in Reserve stehen Warme Redundanz (warm standby) Zusätzliche Komponenten sind zwar eingeschaltet, werden aber erst bei einer Störung aktiviert Zuverlässige Systeme 31
Arten von Redundanz Strukturelle Redundanz Erweiterung des Systems um zusätzliche Objekte gleichartige Rechner Funktionskomponenten (Busse, Prozessoren, ) Rechenprozesse Kopien von Dateien Oft statisch vorhanden Zuverlässige Systeme 32
Arten von Redundanz Strukturelle Redundanz bei Systemen mit n gleichartigen Komponenten Statische Redundanz System ist intakt, wenn mindestens m Komponenten intakt sind 2-aus-3-System (TMR = triple modular redundancy) Serienschaltung: n-aus-n-system Parallelschaltung: 1-aus-n-System Zuverlässige Systeme 33
Arten von Redundanz Dynamische Redundanz Von n Komponenten werden höchstens m eingesetzt Ausfallende Komponenten werden ersetzt Voraussetzung: Fehlerdiagnose / Fehlererkennung System ist intakt, wenn m Komponenten intakt sind und eingesetzt werden Fehlerdiagnose Zur Erkennung und Diagnose von Fehlern ist ein Fehlermodell notwendig Fehlermodell macht Annahmen über Ursachen, Art und Auswirkungen möglicher Fehler Zuverlässige Systeme 34
Arten von Redundanz Funktionale Redundanz Erweiterung des Systems um zusätzliche Funktionen Funktionen zur Rekonfigurierung Ersatzfunktionen Steht bei Bedarf zur Verfügung Informationsredundanz Schützen der Information gegen spezielle Bitfehler Spezielle Codierung (z.b. Quersummenbildung) Mehrfachverzeigerung von Listen Häufig mit geringem Aufwand verbunden Zuverlässige Systeme 35
Zuverlässige Software Softwareimplementierte Fehlertoleranz Fehlertoleranzmaßnahmen werden durch Softwarekomponenten ausgeführt (SIFT = Software Implemented Fault Tolerance) Redundante Rechenprozesse Gleichartige Prozesse auf verschiedenen Rechnern Fehlertoleranz im Hinblick auf Ausfälle der Hardware Alle Möglichkeiten der strukturellen Redundanz sind nutzbar Fehlermaskierung durch Vergleich und Mehrheitsbildung Rekonfigurierung durch Prozessmigration Hardware - und softwareimplementierte Fehlertoleranz sind gleichwertig Zuverlässige Systeme 36
Fehlererkennung Fehlererkennung Voraussetzung für eine Fehlerbehandlung ist die Fehlererkennung (error detection) Plausibilitätstest Beispiel: Messwerte müssen innerhalb physikalisch bedingter Schranken liegen Selbstdiagnose Kann beim Einschalten oder auch zyklisch erfolgen Beispiel: Werte in Speicher schreiben, lesen und vergleichen Zuverlässige Systeme 40
Fehlererkennung Replizieren und Vergleichen V Fehler Ausgabe Vergleicher V (Voter) wird häufig als korrekt vorausgesetzt, sonst wird Vergleicher auch repliziert Synchronisation nötig Probleme beim Vergleich reeller Größen Häufig: Doppelrechner und 2-aus-3-System Zuverlässige Systeme 41
Fehlererkennung Zeitüberwachung Besonders wichtig in kommunikationsbasierten Systemen Überwachungsprozesse Zyklische Lebensmeldung an Überwachungsprozess ( I am alive, heart beat) Umkehrprüfung Beispiel: atan(tan(x)) = x Hardwareschutzmechanismen Speicherschutz, privilegierte Befehle Fehlererkennende Codes Zuverlässige Systeme 42
Fehlererkennung Fehlerlatenzintervall Zeitintervall vom Auftreten eines Fehlers bis zu seiner Erkennung Verfügbarkeit versus Sicherheit Sicheres System: Nach der Fehlererkennung erfolgt ein Übergang in einen sicheren Zustand (fail-safe), z.b. durch Anhalten (fail-stop) System mit hohen Verfügbarkeitsanforderungen: Nach Fehlererkennung folgt Fehlerbehandlung, um Funktion des Systems aufrechtzuerhalten Zuverlässige Systeme 43
Fehlerbehandlung Fehlertoleranz fault tolerance Redundanz redundancy Fehlererkennung fault detection Fehlerbehandlung error processing Übergang zu fehlerfreien Subsystemen latent error processing Rekonfigurierung reconfiguration Ausgliederung error passivation Verlagerung migration Eingliederung activation Fehlerbehebung error recovery Herstellung eines fehlerfreien Zustands effective error processing Rückwärtsfehlerbehebung backward error recovery Vorwärtsfehlerbehebung forward error recovery Fehler- Kompensierung error compensation Fehlermaskierung fault masking Fehlerkorrektur fault correction Zuverlässige Systeme 44
Fehlerbehandlung Fehlerbehandlung Nach einer Fehlererkennung kann eine Fehlerbehandlung durchgeführt werden Fehler beheben oder kompensieren Fehlerkompensierung (durch statische Redundanz) Die Auswirkungen eines Fehlers werden durch Fehlermaskierung unterdrückt Fehler wird nicht unbedingt beseitigt Fehlerhafter Zustand wird korrigiert (Fehlerkorrektur) Zuverlässige Systeme 45
Fehlerbehandlung Fehlerbehebung (durch dynamische Redundanz) Ausgliederung fehlerhafter Komponenten Eingliederung intakter Komponenten Fehlerfreier Zustand wird wieder hergestellt Zwei Vorgehensweisen: Vorwärtsfehlerbehebung (explizit) Der fehlerhafte Systemzustand wird so modifiziert, dass ein Weiterarbeiten möglich ist Rückwärtsfehlerbehebung (implizit) Es wird ein alter, noch fehlerfreier Systemzustand wiederhergestellt Zuverlässige Systeme 46
Fehler und Fehlerursachen Zuverlässige Systeme Fehlervermeidung Fehlertoleranz Zuverlässigkeitsbewertung Modelle, Fehlerbaumanalyse Bewertung einzelner Komponenten Bewertung zusammengesetzter Systeme Fallstudie Zuverlässige Systeme 55
Zuverlässigkeitsbewertung Mittel zur Analyse zuverlässiger Systeme Modellierung Aussagen über das Systemverhalten im Fehlerfall aus einem analytischen Modell Sinnvoll zum Entwurf der Systemarchitektur Simulation Numerische Aussagen über das Systemverhalten im Fehlerfall Sinnvoll zum Entwurf der Systemarchitektur Test Zur Überprüfung der Systemverhaltens im Fehlerfall Anfälligkeitsanalyse Vorhersage möglicher Fehler Zuverlässige Systeme 56
Zuverlässigkeitsbewertung Modellgestützte Zuverlässigkeitsbewertung Ermittlung der gewünschten Kenngrößen durch Analyse von stochastischen Modellen Gängige Modellierungsmethoden: kombinatorische Modelle, Blockschaltbilder, Fehlerbäume, Markov-Ketten, Petri-Netze Für einfache Systeme sind kombinatorische Modelle wegen einfacher Analysierbarkeit sinnvoll Für komplexere Systeme sind z.b. Petri-Netze sinnvoll Flexible Modellierungsmethode mit großer Ausdruckskraft Werkzeuge unterstützen Modellerstellung und automatische Auswertung (z.b. TimeNET) Zuverlässige Systeme 57
Zuverlässigkeitsbewertung Modellgestützte Zuverlässigkeitsbewertung Analyseergebnisse ermöglichen Systemvergleich (z.b. Auswahl aus Entwurfsalternativen) Frühes Erkennen von Schwachstellen Nachweis, dass ein entwickeltes System Zuverlässigkeitsanforderungen erfüllt Quantifizierung von Zuverlässigkeitskenngrößen eines entwickelten Systems (z.b. für technische Spezifikationen in Datenblättern) Zuverlässige Systeme 58
Zuverlässigkeitsbewertung Gestaltungsspielraum Zuverlässige Systeme 59
Zuverlässigkeitsbewertung Fehlerbaumanalyse (fault tree analysis) [DIN 25 424] Unerwünschtes Ereignis mögliche Fehlerkombinationen Auftrittswahrscheinlichkeit und Nichtverfügbarkeit Zuverlässige Systeme 60
Zuverlässigkeitsbewertung Beispiel Fehlerbaum Quelle : sti.srs.gov Zuverlässige Systeme 61
Zuverlässigkeitsbewertung Fehlerbaumanalyse Elementare Ereignisse: Wahrscheinlichkeit X1 UND X2: X1 * X2 X1 ODER X2: 1-(1-X1)*(1-X2) Komplexere Fälle: Kombinatorik Voraussetzung: Unabhängigkeit! Erweiterungen existieren mit zusätzlichen Ausdrucks- und Berechnungsmöglichkeiten Zuverlässige Systeme 62
Fehler und Fehlerursachen Zuverlässige Systeme Fehlervermeidung Fehlertoleranz Zuverlässigkeitsbewertung Modelle, Fehlerbaumanalyse Bewertung einzelner Komponenten Bewertung zusammengesetzter Systeme Fallstudie Zuverlässige Systeme 65
Bewertung von Komponenten Dynamische Modellierung einzelner Komponenten Ausfallverhalten Lebensdauer ist Zeit bis zum Ausfall, modelliert durch Zufallsvariable T mit Verteilung F(t) = P(T t) Zuverlässigkeit R(t) = 1 -F(t) Ausfallrate (hazard rate) h(t) = gibt Ausfälle pro Zeiteinheit an f(t) R(t) Zuverlässige Systeme 66
Bewertung von Komponenten Erfahrung zeigt, dass Ausfallrate oft Form der so genannten Badewannenkurve besitzt Ausfallrate h(t) l Alterungsausfälle Frühausfälle Normalausfälle Zeit t Frühausfälle mit abfallender Ausfallrate Normalausfälle mit konstanter Ausfallrate Alterungsausfälle mit ansteigender Ausfallrate Zuverlässige Systeme 67
Bewertung von Komponenten Annahmen über die Lebensdauer Meist werden durch künstliche Alterung (z.b. Betrieb bei höherer Temperatur) schwache Komponenten aussortiert, daher treten im Betrieb kaum Frühausfälle auf Außerdem werden Komponenten meist ersetzt, bevor Alterungsausfälle auftreten Normalausfälle können gut durch exponentiell verteilte Lebensdauer F(t) = 1 -e -lt nachgebildet werden Falls diese Annahme unzulässig ist, werden andere Lebensdauerverteilungen benutzt, übliche: Weibullverteilung (ermöglicht steigende oder abfallende Ausfallrate) Phasentypverteilung (zusammengesetzt aus Phasen mit exponentiell verteilter Länge) Zuverlässige Systeme 68
Bewertung von Komponenten Ermittlung der Fehlerrate Aus Datenblättern der Komponenten oder dem Military Standardization Handbook des US Verteidigungsministeriums (Abkürzung: MIL-HDBK-217) Liefert z.b. Modell für die Fehlerrate eines ICs: l=pp (C p + C p ) p L Q 1 T 2 E P Ausfälle pro 10 6 h p L learning factor (1 10, Reife des Herstellungsprozesses) p Q quality factor (1 300, Qualitätssicherung) p T temperature factor ( ( 8121[(1/(T 273)) 1/298]) 0.1e - + -, T = Temperatur) environmental factor (0,2 10, Einsatzumgebung) p E Zuverlässige Systeme 69
Bewertung von Komponenten p P pin factor (1 1,2, Anschlussanzahl) C,C complexity factors 1 2 0,00471N 0,00423N 1 = 2 = (C 0, 0187e,C 0, 013e, N = Anzahl der Gatter) Typische Werte p = 1, p = 16, p = 0, 35, p = 0,2, p = 1 L Q T E P RAM 1 MBit 0,1 Ausfälle pro 10 6 h RAM 64 MBits 6,4 Ausfälle pro 10 6 h Zuverlässige Systeme 70
Bewertung von Komponenten Mittlere Lebensdauer Mean time to failure (MTTF), oft in Datenblättern angegeben Erwartungswert der Lebensdauer: ò ò ò MTTF = t f(t)dt = (1 - F(t))dt = R(t)dt 0 0 0 Im Fall der Exponentialverteilung: MTTF ist Kehrwert der konstanten Ausfallrate Zuverlässigkeit zum Zeitpunkt der mittleren Lebensdauer nur noch 0,3678! -lt 1 MTTF = ò e dt = l 1 -l MTTF -l l -1 R(MTTF) = e = e = e» 0, 3678 0 Zuverlässige Systeme 71
Bewertung von Komponenten Reparatur Reparaturzeit lässt sich wie die Lebensdauer als Zufallsvariable modellieren, charakterisiert durch Verteilungsfunktion Mittlere Reparaturzeit (mean time to repair, MTTR) ist Erwartungswert der Verteilung der Reparaturzeit MTTR wird oft grob geschätzt oder durch Fehlerinjektion ermittelt Künstliche Erzeugung von Fehlern (Injektion) Messung der Reparaturzeit Einsatz statistischer Schätzverfahren Zuverlässige Systeme 72
Bewertung von Komponenten Reparatur Oft mehrstufiges Fehlermodell mit verschiedenen Fehlerarten, die verschiedene Reparaturzeit erfordern Beispiele Fehler, die durch Softwaremaßnahmen behoben werden können (Reparaturzeit einige Sekunden) Fehler, die durch Neustart des Programms oder Rechners behoben werden können (Reparaturzeit einige Minuten) Fehler, die durch Austausch von Hardware-Komponenten behoben werden können (Reparaturzeit einige Stunden) Zuverlässige Systeme 73
Bewertung von Komponenten Stochastische Petri-Netze als Modell Ausfall ohne Reparatur OP fail F R(t) = P(# F = 0), MTTF =ò R(t)dt Ausfall mit Reparatur OP fail F 0 repair A(t) = P(# F = 0) Quelle der Petri-Netz-Folien: R. German Zuverlässige Systeme 74
Bewertung von Komponenten Transiente Analyse liefert zeitabhängige Verfügbarkeit A(t) Stationäre Analyse liefert stationäre Verfügbarkeit 1 A = lim ò A(x)dx t t t 0 (Interpretation: mittlerer Zeitanteil, zu dem das System verfügbar ist) Zuverlässige Systeme 75
Bewertung von Komponenten Beispiel Ausfall exponentiell verteilt mit Rate = 0,01/h Reparatur exponentiell verteilt mit Rate = 1/h Verfügbarkeit A(t) 1 0.99 0.98 2 4 6 8 10 Zeit t in Stunden Transiente Verfügbarkeit konvergiert oft schnell gegen den stationären Wert Stationärer Wert ist daher oft ein ausreichendes Maß der Verfügbarkeit Zuverlässige Systeme 76
Fehler und Fehlerursachen Zuverlässige Systeme Fehlervermeidung Fehlertoleranz Zuverlässigkeitsbewertung Modelle, Fehlerbaumanalyse Bewertung einzelner Komponenten Bewertung zusammengesetzter Systeme Fallstudie Zuverlässige Systeme 77
Bewertung von Systemen Modellierung zusammengesetzter Systeme Seriensysteme System ist intakt, falls alle Komponenten intakt sind Grundstruktur normaler technischer Systeme, die sich aus Einzelkomponenten zusammensetzen OP1 fail1 Petri-Netz-Modell OPn failn F R t = P #F = 0 Serie ( ) ( ) Zuverlässige Systeme 78
Bewertung von Systemen Kombinatorische Lösung T,R i i(t) seien Lebensdauer und Zuverlässigkeit von Komponente i( 1 i n) T Serie,R Serie(t) seien Lebensdauer und Zuverlässigkeit des Seriensystems Es gilt: P( TSerie > t) = P( T1 > t T2 > t Tn > t) Unter der Annahme, dass die Komponentenausfälle unabhängig sind, folgt: P(TSerie > t) = P(T1 > t) P(T2 > t) P(Tn > t) Also gilt: R (t) = R (t) R (t) R (t) Serie 1 2 n Zuverlässige Systeme 79
Bewertung von Systemen Komponenten mit exponentiell verteilter Lebensdauer l i sei Ausfallrate von Komponente i 1t 2t nt ( 1 2 n)t R Serie(t) e -l e -l e -l e - l +l + = = +l Lebensdauer eines Seriensystems ist exponentiell verteilt, falls Lebensdauer der Komponenten exponentiell verteilt sind Ausfallrate ist gleich Summe der Ausfallraten der Komponenten Zuverlässige Systeme 80
Bewertung von Systemen Zustandsraumbasierte Lösung Beispiel: Seriensystem mit 2 Komponenten mit exponentiell verteilter Lebensdauer, Ausfallraten l, l 1 2 OP1 OP2 fail1 fail2 F Zustände (1, 1) beide Komponenten intakt (0, 1) 1. Komponente ausgefallen (1, 0) 2. Komponente ausgefallen (0, 0) beide Komponenten ausgefallen R t = P #F = 0 Serie ( ) ( ) Zuverlässige Systeme 81
Bewertung von Systemen Zugrunde liegende Markov-Kette 1 0,1 2 1,1 0,0 Fehler 1,0 2 1 Zuverlässigkeit R und Lebensdauerverteilung F entsprechen Zustandswahrscheinlichkeiten Die Zustandswahrscheinlichkeiten ergeben sich aus der transienten Analyse (hier manuelles Lösen der Differentialgleichungen möglich) Zuverlässige Systeme 82
Bewertung von Systemen Analyse der Markov-Kette R (t) =p (t) = e Serie 1,1 -l ( +l )t 1 2 F (t) =p (t) +p (t) +p (t) Serie 0,1 1,0 0,0 -l ( +l )t = - = - 1 2 1 e 1 R (t) Serie Gleiches Ergebnis wie kombinatorische Lösung Zur Vereinfachung könnten die Zustände (0, 1), (1, 0) und (0, 0) zu einem Fehlerzustand zusammengefasst werden Zuverlässige Systeme 83
Bewertung von Systemen Parallelsysteme System besteht aus redundanten Komponenten und ist intakt, falls mindestens eine seiner Komponenten intakt ist Anzahl der redundanten Komponenten begrenzt durch Kosten, Größe, Gewicht, elektrische Leistung Verschiedene Mechanismen zur Fehlererkennung (z.b. Selbstdiagnose, Vergleich) und Fehlerbehandlung (z.b. Fehlermaskierung, Rekonfiguration) Zuverlässige Systeme 84
Bewertung von Systemen Petri-Netz-Modell Parallelsystem (mit idealer Fehlererkennung und -behandlung) OP1 fail1 n F OPn failn R Parallel(t) = P(#F = 0) Zuverlässige Systeme 85
Bewertung von Systemen Kombinatorische Lösung T,R i i(t) seien Lebensdauer und Zuverlässigkeit von Komponente i( 1 i n) T Parallel,R Parallel(t) seien Lebensdauer und Zuverlässigkeit des Parallelsystems Es gilt: P( TParallel t) = P( T1 t T2 t Tn t) Unter der Annahme, dass die Komponentenausfälle unabhängig sind, folgt: P(TParallel t) = P(T1 t) P(T2 t) P(Tn t) Also gilt: F Parallel(t) = F 1(t) F 2(t) F n(t) bzw.: R (t) = 1-( 1-R ( t) ) ( 1-R ( t) ) ( 1-R ( t) ) Parallel 1 2 n Zuverlässige Systeme 86
Bewertung von Systemen Zustandsraumbasierte Lösung Beispiel: Parallelsystem mit 2 Komponenten mit exponentiell verteilter Lebensdauer, Ausfallrate jeweils OP1 fail1 OP2 fail2 2 F Zustandsdefinition wie bei Seriensystem Zuverlässige Systeme 87
Bewertung von Systemen Zugrunde liegende Markov-Kette 1,1 0,1 1,0 Zuverlässigkeit und Lebensdauerverteilung entsprechen Zustandswahrscheinlichkeiten Die Zustandswahrscheinlichkeiten ergeben sich wieder aus der transienten Analyse Parallel 1,1 0,1 1,0 -lt -2lt R (t) =p (t) +p (t) +p (t) = 2e -e -lt -2lt Parallel =p 0,0 = - - = - Parallel F (t) (t) 1 (2e e ) 1 R (t) 0,0 Fehler Zuverlässige Systeme 88
Bewertung von Systemen Vergleich der Zuverlässigkeit eines Einzel-, Serien- und Parallelsystems, alle Komponenten mit exponentiell verteilter Lebensdauer, Ausfallrate Zuverlässigkeit R( t) 1 0.8 0.6 0.4 0.2 0 Parallelsystem (2 Komponenten) Einzelsystem Seriensystem 1 2 3 4 5 Normalisierte Zeit t Zuverlässige Systeme 89
Bewertung von Systemen Serien-Parallel-Systeme Beliebige Mischformen sind möglich, z.b. ein Seriensystem aus Bus und Prozessor, Bus ist Parallelsystem aus 2 Komponenten, Prozessor ist Parallelsystem aus 3 Komponenten Petri-Netz-Modell OPbus failbus 2 IS OPproc failproc 3 F IS R SP(t) = P(#F = 0) Zuverlässige Systeme 92
Bewertung von Systemen Kombinatorische Lösung weiterhin möglich durch Zusammensetzung der Ergebnisse für Serien- und Parallelsysteme, im Beispiel 2 3 [ ] [ ] R (t) = 1 -(1 -R (t)) 1 -(1 -R (t)) SP Bus Pr ozessor Ähnlich Fehlerbaumanalyse Zuverlässige Systeme 93
Bewertung von Systemen m-aus-n-systeme System besteht aus n redundanten Komponenten und ist intakt, falls mindestens m seiner Komponenten intakt sind Beispiel: Triple modular redundancy (TMR) Heiße Redundanz durch n = 3 redundante aktive Komponenten Auswahleinheit (voter) wählt Ergebnis der Mehrheit aus Bei Ausfall einer Komponente Fehlermaskierung System ist also intakt, falls m 2 Komponenten intakt sind Verallgemeinerung von TMR: n-modular redundancy (NMR), in der Praxis höchstens n = 5, meist TMR Zuverlässige Systeme 94
Bewertung von Systemen Petri-Netz-Modell (mit idealer Fehlererkennung) OP1 fail1 n-m+1 F OPn failn R m/n(t) = P(#F = 0) Vereinfachung, falls alle Lebensdauern exponentiell mit Rate verteilt sind OP n fail n-m+1 F 1/,IS R m/n(t) = P(#F = 0) Zuverlässige Systeme 95
Bewertung von Systemen Kombinatorische Lösung (ohne Herleitung) ænö R (t) R (t) (1 R (t)) n i n-i m / n = å einzel - einzel ç i i= mè ø Vergleich von Einzel- und 2-aus-3-System, alle Komponenten mit exponentiell verteilter Lebensdauer, Ausfallrate MTTF durch Integration der kombinatorischen Lösungsformel MTTF2/3 ò R 2/3(t)dt -2lt ò [3e -3lt 2e ]dt 0 0 = = - = 5 1 6 l Mittlere Lebensdauer kürzer als die des Einzelsystems! Zuverlässige Systeme 96
Bewertung von Systemen 2-aus-3-System ist anfangs besser, danach aber schlechter als Einzelsystem! (Erklärung: nach 1. Ausfall verhält sich System wie Seriensystem mit 2 Komponenten) Zuverlässigkeit R ( t) 1 0.8 0.6 0.4 0.2 0 2-aus-3-System Einzelsystem 1 2 3 4 5 Normalisierte Zeit t Zuverlässige Systeme 97
Bewertung von Systemen Reservesysteme Redundante Reservekomponenten sind inaktiv, bei Ausfall der aktiven Komponente wird eine Reservekomponente aktiviert (kalte bzw. warme Redundanz) System intakt, falls mindestens eine Komponente intakt ist Reservekomponenten besitzen oft Lebensdauer mit anderer Verteilung Zuverlässige Systeme 98
Bewertung von Systemen Petri-Netz-Modell (mit idealer Fehlererkennung) OPactive failactive n F n-1 OPspare activate IS failspare R Re serve(t) = P(#F = 0) A Reserve(t) = P(#OPactive = 1) Eine einfache kombinatorische Lösung existiert nicht Zuverlässige Systeme 99
Bewertung von Systemen Falls Reservekomponenten nicht ausfallen können und die Aktivierungszeit vernachlässigt wird, ist die Lebensdauer des Systems gleich der Summe der Lebensdauern der Komponenten Falls zusätzlich die Lebensdauern identisch exponentiell verteilt sind mit der Rate, ist die Lebensdauer des Systems Erlang-verteilt n-1 k ( lt) F Re serve(t) = 1-å e k! k= 0 -lt Zuverlässige Systeme 100
Bewertung von Systemen Vergleich von Einzel-, Parallel- und Reservesystem mit jeweils 2 Komponenten, alle Komponenten mit exponentiell verteilter Lebensdauer, Ausfallrate Zuverlässigkeit R( t) 1 0.8 0.6 0.4 0.2 0 Reservesystem Parallelsystem Einzelsystem 1 2 3 4 5 Normalisierte Zeit t Zuverlässige Systeme 101
Bewertung von Systemen Fehlererkennung und -behebung Bisher wurde angenommen, dass Fehlererkennung und -behebung immer ideal funktionieren Unrealistische Annahme, denn Selbstdiagnose und Vergleich sind nicht perfekt Vergleichs-, Auswahl- und Rekonfigurationselemente können selbst ausfallen Manche Fehler führen zum sofortigen Systemausfall Zuverlässige Systeme 103
Bewertung von Systemen Überdeckungsfaktor (coverage factor) c gibt die Fähigkeit an, dass ein auftretender Fehler erkannt werden kann Definition als bedingte Wahrscheinlichkeit c = P(Fehlererkennung möglich Fehler tritt auf) Schwer zu quantifizieren, Möglichkeiten: Verhältnis der erkannten und behebbaren Fehlern zu allen Fehlern Fehlerinjektion Besitzt wesentlichen Einfluss auf die Zuverlässigkeitskenngrößen! Zuverlässige Systeme 104
Bewertung von Systemen Petri-Netz-Modell des m-aus-n-systems Berücksichtigung der Fehlerüberdeckung Identisch verteilte Lebensdauern OP n fail IS 1-c c F n-m+1 Zuverlässige Systeme 105
Bewertung von Systemen Zuverlässigkeit des Parallelsystems mit 2 Komponenten und unterschiedlichem Überdeckungsfaktor c (Ausfall der Komponenten exponentiell verteilt, Rate ) Zuverlässigkeit R( t) 1 0.8 0.6 0.4 0.2 0 c=1 c=0,9 c=0,5 c=0,1 c=0 1 2 3 4 5 Normalisierte Zeit t Zuverlässige Systeme 106
Bewertung von Systemen Petri-Netz-Modell des Reservesystems Fehlerüberdeckung für aktive Komponente Keine Berücksichtigung der Fehlerüberdeckung für Reservekomponenten Identisch verteilte Lebensdauern OPactive failactive activate IS n-1 OPspare failspare 1-c c n F Zuverlässige Systeme 107
Bewertung von Systemen Zuverlässigkeit des Reservesystems mit 2 Komponenten und unterschiedlichem Überdeckungsfaktor c Ausfall der Komponenten exponentiell verteilt, Rate Reservekomponente fällt nicht aus Zuverlässigkeit R( t) 1 0.8 0.6 0.4 0.2 0 c=1 c=0,9 c=0,5 c=0,1 c=0 1 2 3 4 5 Normalisierte Zeit t Zuverlässige Systeme 108
Bewertung von Systemen Berechnung der MTTF aus stationärer Lösung Die Zuverlässigkeit eines Systems lässt sich allgemein modellieren durch ein Teilnetz für das Ausfallverhalten und durch eine Stelle F Ausfall F R(t) = P(# F = 0) MTTF ist dann gegeben durch MTTF Prinzipiell durch transiente Analyse und Integration zu berechnen, aber oft numerisch aufwendig = ò 0 R(t)dt Zuverlässige Systeme 109
Bewertung von Systemen Einfacherer Lösungsweg Hinzufügen einer fiktiven Reparaturtransition, Schaltzeit z.b. exponentiell verteilt mit Rate Ausfall F 1/ Reparatur Stationäre Verfügbarkeit: Stationäre Analyse liefert A = P(#F = 0) A Zuverlässige Systeme 110
Bewertung von Systemen Berechnung der MTTF aus der stationären Verfügbarkeit Es gilt A MTTF = MTTF + MTTR Auflösen nach MTTF ergibt MTTF A A 1 = MTTR = 1-A 1-A m Stationäre Analyse liefert also auch MTTF Um numerische Probleme zu vermeiden, sollte 1/ in ähnlicher Größenordnung wie MTTF gewählt werden Notfalls iteratives Vorgehen Zuverlässige Systeme 111
Fehler und Fehlerursachen Zuverlässige Systeme Fehlervermeidung Fehlertoleranz Zuverlässigkeitsbewertung Modelle, Fehlerbaumanalyse Bewertung einzelner Komponenten Bewertung zusammengesetzter Systeme Fallstudie Zuverlässige Systeme 113
Fallstudie Fallstudie: Motorsteuerung Nach [Johnson, S. 229 253] Systemaufbau Joystick mit Sensoren (Eingabe von Steuerkommandos) Elektronischer Regler (Umsetzung der Steuerkommandos, Stabilisierung der Geschwindigkeit) Motorsteuerung, Motoren Geschwindigkeitssensoren Fragestellung Zuverlässigkeit, Verfügbarkeit, Sicherheit des Systems Genaue Anforderungen sind nicht quantifiziert Genereller Vergleich zwischen nicht-redundantem und redundantem Systemaufbau erwünscht Zuverlässige Systeme 114
Fallstudie Blockschaltbild Joystick Sensor Sensor elektr. Regler Motorsteuerung Motorsteuerung Motor Motor Geschw.- Sensor Geschw.- Sensor Zuverlässige Systeme 115
Fallstudie Bewertung des nicht-redundanten Systems System ist Seriensystem der Komponenten Annahme: Ausfälle der Komponenten sind exponentiell verteilt Ausfallraten -6 l j = 10 / h (Joysticksensoren) -4 l e = 3, 5 10 / h (Regler, gemäß MIL-HDBK-217) -5 l s = 5 10 /h (Steuerung) -6 l g = 10 / h (Geschwindigkeitssensoren) -6 l m = 10 / h (Motor) Zuverlässige Systeme 116
Fallstudie Zuverlässigkeit R (t) = e -l System Regler ist Komponente mit größter Ausfallrate, bestimmt wesentlich die Ausfallrate des Systems MTTFSystem Systemt l = 2l + l + 2l + 2l + 2l System j e s g m -4 = 4,56 10 / h 1 =» l System 2192 h Entspricht bei 8 h Benutzung pro Tag einer mittleren Lebensdauer von einem 3/4 Jahr Zuverlässige Systeme 117
Fallstudie Verfügbarkeit Reparaturzeit nicht genau bekannt, abhängig von Fehlererkennung, Verfügbarkeit von qualifiziertem Personal, Annahme: Reparaturzeit exponentiell verteilt, Rate Stationäre Verfügbarkeit MTTFSystem 1/ lsystem A= = MTTF System + MTTR 1/ l System + 1/ m 1 = 1 +l / m System Zuverlässige Systeme 118
Fallstudie Stationäre Verfügbarkeit in Abhängigkeit von der MTTR Verfügbarkeit A 1 0.8 0.6 0.4 0.2 0 10. 100. 1000. 10000. MTTR in Tagen Reparaturzeit durch Hersteller ca. 1 Woche, viele Benutzer sammeln daher Ersatzkomponenten (teuer) Frage: Wie erhöht sich die Verfügbarkeit bei Verkleinerung der Ausfallrate und bei gleicher Reparaturzeit? Zuverlässige Systeme 119
Fallstudie Stationäre Verfügbarkeit in Abhängigkeit der Ausfallrate (MTTR = 1 Woche) Verfügbarkeit A 1 0.9 0.00001 0.0001 0.001 Ausfallrate pro h Zuverlässige Systeme 120
Fallstudie Bewertung des redundanten Systems Elektronischer Regler wird doppelt ausgelegt 2 Entwurfsalternativen Heiße Redundanz Beide Regler führen Berechnungen durch Vergleich beider Ergebnisse Beide führen Selbstdiagnose durch Bei Ausfall eines Reglers übernimmt der andere die Funktion alleine Zuverlässige Systeme 121
Fallstudie Warme Redundanz Beide Regler eingeschaltet Ein Regler führt Berechnungen durch Der andere Regler ist Reservekomponente und führt keine Berechnungen durch Beide führen Selbstdiagnose durch Bei Ausfall des aktiven Reglers übernimmt die Reservekomponente die Funktion Zuverlässige Systeme 122
Fallstudie Bewertung des redundanten Systems Reparatur: ein ausgefallener Regler wird durch Hersteller repariert bzw. ausgetauscht Ausfallrate der vom Regler verschiedenen Komponenten: -4 l Re st = 2l j + 2l s + 2l g + 2l m = 1,06 10 /h Überdeckungsfaktor der Selbstdiagnose: c d Überdeckungsfaktor des Vergleichs: c c Zuverlässige Systeme 123
Fallstudie Petri-Netz-Modell für heiße Redundanz OPelec failelec ndiagnose repair diagnose 2 F OPrest failrest R(t) = P(# F = 0) Zuverlässige Systeme 124
Fallstudie OPelec OPrest F failelec repair failrest ndiagnose diagnose Intakte elektronische Regler Restliche Komponenten intakt System ausgefallen Ausfall eines elektronischen Reglers, Schaltsemantik infinite-server, Schaltrate = e Reparatur eines Reglers, Schaltzeit = MTTR Ausfall der restlichen Komponenten, Schaltrate = rest Fehlererkennung durch Selbstdiagnose nicht erfolgreich, Gewicht = 1-c d Erfolgreiche Fehlererkennung durch Selbstdiagnose, Gewicht = c d Zuverlässige Systeme 125
Fallstudie Petri-Netz-Modell für warme Redundanz OPactive failactive andiagnose repair adiagnose 2 F OPspare OPrest failspare failrest sdiagnose sndiagnose undetected R(t) = P(# F = 0) Zuverlässige Systeme 126
Fallstudie OPactive OPspare OPrest undetected F failactive failspare repair failrest andiagnose (sndiagnose) adiagnose (sdiagnose) Aktive Komponente intakt Reservekomponente intakt Restliche Komponenten intakt Nicht erkannter Fehler der Reservekomponete System ausgefallen Ausfall der aktiven Komponente Schaltrate = e Ausfall der Reservekomponente Schaltrate = e Reparatur eines Reglers, Schaltzeit = MTTR Ausfall der restlichen Komponenten, Schaltrate = rest Fehlererkennung der aktiven (bzw. Reserve-) Komponente durch Selbstdiagnose nicht erfolgreich, Gewicht = 1-c d Erfolgreiche Fehlererkennung der aktiven (bzw. Reserve-) Komponente durch Selbstdiagnose, Gewicht = c d Zuverlässige Systeme 127
Fallstudie Zuverlässigkeit in Abhängigkeit von der Zeit ( cd = 0.95, MTTR = 1 Woche) Zuverlässigkeit R(t) 1 0.8 0.6 0.4 0.2 0 warme Redundanz heiße Redundanz nicht-redundantes System 2000 4000 6000 8000 10000 Zeit t in Stunden Zuverlässige Systeme 128
Fallstudie Zuverlässigkeit nach 3000 h in Abhängigkeit des Überdeckungsfaktors der Selbstdiagnose ( MTTR = 1Woche) Zuverlässigkeit R (3000h) 1 0.8 0.6 0.4 0.2 0 warme Redundanz heiße Redundanz nicht-redundantes System 0.2 0.4 0.6 0.8 1 Überdeckungsfaktor c d Zuverlässige Systeme 129
Fallstudie Stationäre Verfügbarkeit und MTTF Petri-Netz-Modell für heiße Redundanz OPelec failelec ndiagnose 2 #F>0 OPrest repair failrest diagnose 2 #F>0 F #F>0 repairall Zuverlässige Systeme 130
Fallstudie A = = = 1 - A A P(# F 0),MTTF MTTR Zeitlose Transitionen mit Guard #F>0 entleeren OPelec und OPrest, falls System ausgefallen Transition repairall für die Reparatur des gesamten Systems, Schaltzeit = MTTR Petri-Netz-Modell für warme Redundanz analog Zuverlässige Systeme 131
Fallstudie Vergleich der Verfügbarkeit in Abhängigkeit von der MTTR( c = 0,95 ) d 1 Verfügbarkeit A 0.8 0.6 0.4 0.2 nicht-redundantes System warme/heiße Redundanz 0 10. 100. 1000. 10000. MTTR in Tagen Zuverlässige Systeme 132
Fallstudie Vergleich der MTTF in Abhängigkeit vom Überdeckungsfaktor der Selbstdiagnose MTTF in Stunden 8000 7000 6000 5000 4000 3000 2000 1000 0 warme Redundanz heiße Redundanz nicht-redundantes System 0.2 0.4 0.6 0.8 1 Überdeckungsfaktor c d Zuverlässige Systeme 133
Fallstudie Schlussfolgerung Redundanz führt zu deutlicher Erhöhung der Zuverlässigkeit und Verfügbarkeit des Systems Warme Redundanz etwas besser für Zuverlässigkeit Bzgl. Verfügbarkeit kein signifikanter Unterschied zwischen warmer und heißer Redundanz Zuverlässige Systeme 134
Fallstudie Bewertung der Sicherheit Sicherheit S(t) = Wahrscheinlichkeit, dass das System im Intervall [0, t] entweder intakt ist oder seine Funktion auf sichere Weise beendet hat Bei Ausfall des Systems Unterscheidung Fail-Safe (FS): Wenn der Fehler erkannt wird, beendet das System seine Funktion auf sichere Weise (Z.B. durch Anzeige des Ausfalls und Umschalten auf Handbetrieb) Fail-Unsafe (FU): Wenn ein Fehler nicht erkannt wird, beendet das System seine Funktion auf unsichere Weise Zuverlässige Systeme 135
Fallstudie Bewertung der Sicherheit Bei warmer Redundanz können Fehler nur durch Selbstdiagnose erkannt werden Bei heißer Redundanz können Fehler zusätzlich durch Vergleich der Ergebnisse beider Komponenten erkannt werden Im folgenden Petri-Netz-Modelle bezüglich Sicherheit des Reglers (ohne Nachbildung des Ausfalls der restlichen Komponenten) Zuverlässige Systeme 136
Fallstudie Petri-Netz-Modell für heiße Redundanz OPelec failelec ndiagnose ncompare compare repair diagnose 2 FS FU S(t) = P(# FU = 0) Zuverlässige Systeme 137
Fallstudie Bedeutung der zusätzlichen Stellen und Transitionen FS FU compare ncompare System auf sichere Weise ausgefallen System auf unsichere Weise ausgefallen erfolgreiche Fehlererkennung durch Vergleich, Gewicht = c c Fehlererkennung durch Vergleich nicht erfolgreich, Gewicht = 1-c c Zuverlässige Systeme 138
Fallstudie Petri-Netz-Modell für warme Redundanz OPactive failactive 1-c andiagnose adiagnose repair c 2 FS FU OPspare failspare sdiagnose sndiagnose S(t) = P(# FU = 0) undetected Bedeutung der zusätzlichen Stellen FS und FU wie bei vorigem Modell Zuverlässige Systeme 139
Fallstudie Vergleich der Sicherheit in Abhängigkeit von der Zeit ( cc = 0,95 ) 1 Sicherheit S(t) 0.8 0.6 0.4 0.2 0 heiße Redundanz warme Redundanz 2000 4000 6000 8000 10000 Zeit t in Stunden Vergleich der Sicherheit nach 3000 h in Abhängigkeit vom Überdeckungsfaktor der Selbstdiagnose ( c = 0,95) c Zuverlässige Systeme 140
Fallstudie Schlussfolgerung Heiße Redundanz signifikant besser als warme Redundanz bzgl. Sicherheit Erklärung: durch Vergleich bessere Fehlererkennung 1 Sicherheit S(t) 0.8 0.6 0.4 0.2 0 heiße Redundanz warme Redundanz 0.2 0.4 0.6 0.8 1.0 Überdeckungsfaktor c d Zuverlässige Systeme 141
Zuverlässigkeit Weiterführende Literatur J.-C. Geffroy, G. Motet: Design of Dependable Computing Systems. Kluwer 2002 M. Dal Cin. Fehlertolerante Systeme. Teubner, 1979. B. W. Johnson. Design and Analysis of Fault Tolerant Digital Systems. Addison-Wesley, 1989. V. Nelson, B. D. Caroll. Tutorial: Fault-Tolerant Computing. IEEE Computer Society Press, 1987. K. S. Trivedi. Probability and Statistics with Reliability, Queuing, and Computer Science Applications. Prentice- Hall, 1982. Zuverlässige Systeme 142