F1: Modellbildung, Wahrscheinlichkeit, Experimente

F1: Modellbildung, Wahrscheinlichkeit, Experimente
Test und Verlässlichkeit (F1)
Kapitel 1: Modellbildung,
Wahrscheinlichkeit, Experimente
Prof. G. Kemnitz
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015
1/142
Vertrauen und Verlässlichkeit
IT-Systeme automatisierten
IT-System
intellektuelle Aufgaben:
betriebliche Abläufe
Steuerung von Prozessen
und Maschinen
Entwurfsaufgaben, ...
Einsatzvoraussetzung ist Vertrauen, dass
das System, wenn es gebraucht wird, funktioniert,
seine Service-Leistungen korrekt und pünktlich ausführt,
keine unkalkulierbaren Schäden und Kosten verursacht.
Fakt 1
Vertrauen setzt Verlässlichkeit voraus.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015
2/142
Fehlfunktionen in IT-Systemen müssen nicht, aber können
erheblichen Schaden verursachen:
Datenverlust,
Hintertüren für den Datenmissbrauch,
Unfälle, Selbstzerstörung, Produktionsausfälle, ...
Am 3. Juni 1980 meldete ein Rechner des nordamerikanischen
Luftverteidigungszentrums den Anug sowjetischer
Nuklearraketen. Sofort wurden Vergeltungsmaÿnahmen
vorbereitet. Eine Überprüfung der Daten von Radarstationen und
Satelliten konnte den Angri nicht bestätigen, so dass der Start
amerikanischer Raketen mit Nuklearsprengköpfen in letzter
Minute gestoppt wurde [3].
Urheber der nahen Katastrophe war ein defekter Schaltkreis in
einem Rechner.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015
3/142
In dem Begri der Verlässlichkeit treen Wunschvorstellungen
und Wirklichkeit zusammen. Das macht eine objektive
Bewertung schwierig1 . Sprichworte mit tiefem Wahrheitsgehalt:
Allen Leuten recht getan, ist eine Kunst, die keine kann.
Verlorenen Vertrauen ist schwer wieder herzustellen.
Whatever can go wrong will go wrong. (Murphys Law2 )
It ist not a Bug, it is a feature. (Wegreden von Fehlern, statt
Beseitigung.)
Der Schlüssel zu objektiv verlässlichen Systemen sind Kontrollen
und das Abstellen der dabei erkannten Mängel auf drei Ebenen:
während Entwurf und Fertigung (Fehlervermeidung),
vor dem Einsatz und zur Wartung (Fehlerbeseitigung) und
im laufenden Betrieb (Fehlertoleranz, Schadensvermeidung).
1
Wie bei der Verlässlichkeit zwischenmenschlichen Beziehungen, in der
Politik, Wirtschaft ... ist es auch für IT-Systeme kaum möglich, allgemein
akzeptierte mess- oder abschätzbare Kriterien zu denieren.
2
Viele Menschen denken pessimistisch, d.h. die negativen Erfahrungen
bleiben viel stärker im Gedächtnis haften als die positiven.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015
4/142
Verlässlichkeit ist quantizierbar durch
Zählen/Schätzen der Anzahl unerwünschter Ereignisse
(entstandender Fehler, Fehlfunktionen, Schadensfälle, ...) pro
Zeit oder
des Kehrwerts (mittlere Zeit pro unerwünschtes Ereignis).
Die verlässlichkeitssichernde Maÿnahmen (Fehlervermeidung,
-beseitigung, -toleranz, ...) sind quantizierbar durch
den Anteil der vermiedenen unerwünschten Ereignisse oder
die Verlängerung mittleren Zeit pro unerwünschtes Ereignis.
Vielleicht wird einmal in einer KFZ-Beschreibung stehen: Fahren
ohne ESP3 hat für normal geübte Fahrer eine Verlässlichkeit von
x Stunden pro Unfall und das Zuschalten von ESP erhöht die
Verlässlichkeit um den Faktor y auf x · y Stunden.
3
ESP (Electronic Stability Control) ist ein elektronisch gesteuertes
Fahrassistenzsystem für Kraftfahrzeuge, das durch gezieltes Abbremsen
einzelner Räder Unfällen durch Ausbrechen des Wagens entgegenwirkt.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015
5/142
Inhalt und Lernziel der Vorlesung
Bewertung der Verlässlichkeit
Kontrollen, Fehlertoleranz und Schadensvermeidung
Test und Fehlerbeseitigung
Fehlervermeidung.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015
6/142
Inhalt Foliensatz F1
1.1
1.2
1.3
1.4
1.5
2.1
2.2
2.3
2.4
Modellbildung
Zufallsexperiment
Service-Modell
Fehlfunktionen und Fehler
Potentielle und Modellfehler
Aufgaben
Wahrscheinlichkeit
Verkettete Ereignisse
Fehlerbaumanalyse
Markov-Ketten
Problembeseitigung
Prof. G. Kemnitz
·
2.5 Aufgaben
Zählexperimente
3.1 Verfügbarkeit
3.2 Zuverlässigkeit
3.3 Sicherheit
3.4 Kontrolle der Kontrolle
3.5 Kontrollen für Tests
3.6 Fehleranteil und Entst.-Proz.
3.7 Reifeprozesse
3.8 Aufgaben
Literatur
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015
7/142
1. Modellbildung
Prof. G. Kemnitz
Modellbildung
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015
8/142
1. Modellbildung
Der Begri Modell in der Informatik
Selbst die einfachsten Sachverhalte in der Informatik wie die
Abarbeitung eines Befehls werden sehr schnell kompliziert, wenn
alle Details berücksichtigt werden.
Denition 2
Ein Modell ist ein Mittel, um einen Zusammenhang zu
veranschaulichen. Es stellt die wesentlichen Sachverhalte dar und
verbirgt unwesentliche Details.
In dieser Vorlesung sind die Modelle Zufallsexperimente für
das Funktionieren und Versagen von IT-Systemen,
für Kontrollen, Tests, Reviews, Fehler, Ausfälle, ... ,
Fehlervermeidung, Fehlerbeseitigung und
Schadensbegrenzung.
für Systeme aus Hardware und/oder Software [+ Mechanik].
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015
9/142
1. Modellbildung
Modelle zur Beschreibung der Verlässlichkeit
Service
(allg. Modell einer
IT-Dienstleistung)
Anforderung
Ergebnis
Kontrolle
(vermeindlich)
falsches Ergebnis
Korrektor
kein Ergebnis
richtiges Ergebnis
falsches Ergebnis
(Service nicht verfügbar)
Ergebnis Klassifizierung
falsch
falsch (richtige Klassifizierung)
falsch
richtig (nicht erkanntes falsches Ergebnis)
richtig
falsch (vermeindlich falsches Ergebnis)
richtig
richtig (richtige Klassifizierung)
nicht korrigierbar
richtig korrigiert
falsch korrigiert
Unwesentlich sind tatsächliche Funktionen und Ergebnisse.
Wesentlich ist die Unterscheidung zwischen gewünschten und
unerwünschten Ergebnissen, ...
Zählen bzw. Zufallsexperimente für gewünschte und
unerwünschte Ergebnisse, ...
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 10/142
1. Modellbildung
Prof. G. Kemnitz
1. Zufallsexperiment
Zufallsexperiment
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 11/142
1. Modellbildung
1. Zufallsexperiment
Zufallsexperiment
Denition 3
Ein Zufallsexperiment ist ein Experiment mit mehreren
möglichen Ergebnissen und zufälligem Ausgang.
Zufallsexperimente zu Test und Verlässlichkeit:
Anforderung einer Service-Leistung. WB4 : richtig, falsch, ...
Ergebniskontrolle: WB: richtig, falsch, ...
Korrektur falscher Ergebnisse: WB: erfolgreich, ...
Zählen der Fehler in einem System. WB: 0, 1, 2, ...
Aufdecken eines Fehlers mit einem Test. WB: ja, nein
Messen der Zeit bis zum Ausfall: WB: tA ≥ 0 s
...
4
Wertebereich der experimentellen Ergebnisse.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 12/142
1. Modellbildung
1. Zufallsexperiment
Bernoulli-Versuche
Das einfachste Zufallsexperiment ist der Bernoulli-Versuch. Er
hat zwei mögliche Ergebnisse 0/1 (nein/ja, falsch/wahr, ...) und
die Verteilung
P {X = 0} = 1 − p
P {X = 1} = p
(p Wahrscheinlichkeit, dass das Ergebnis 1, ja oder wahr ist).
Bernoulli-Versuche für Aspekte der Verlässlichkeit:
Kontrolle, ob ein Service verfügbar ist?
Kontrolle, ob ein Service korrekt ausgeführt wird?
Test, ob ein System fehlerhaft ist?
Test, ob ein Fehler nachweisbar ist?
In der Vorlesung werden fast alle statistisch untersuchten
Zusammenhänge auf Bernoulli-Versuche zurückgeführt, z.B. die
Fehleranzahl als Summe potentieller Fehler, ob vorhanden ...
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 13/142
1. Modellbildung
Prof. G. Kemnitz
2. Service-Modell
Service-Modell
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 14/142
1. Modellbildung
2. Service-Modell
Das Service-Modell
Denition 4
Eine Service sei ein Vorgang, der mit der Entgegennahme der
Service-Anfrage beginnt, aus den Daten der Service-Anfrage
Ausgaben berechnet und diese weitergibt.
Die Ein- und Ausgabe sind ganz allgemein bedatete Objekte mit
einem auf die Art des Services abgestimmten Format. Das
Format hängt von der Art des Systems ab und legt die Struktur
und Bedeutung der Daten festlegt. Die Berechnung hat eine
Soll-Funktion und optional weitere Vorgaben z.B. eine max.
Ausführungszeit.
Prof. G. Kemnitz
Anforderung
·
Service
Ergebnis
(allg. Modell einer
IT-Dienstleistung)
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 15/142
1. Modellbildung
2. Service-Modell
Das Service-Modell ist für die meisten IT-Strukturen von
den Grundbausteinen bis zum Gesamtsystem geeignet
(Software, Hardware, Cyper-physikalische Systeme5 ) .
Es beschreibt die wesentlichen Aspekte für den Test und die
Verlässlichkeit:
Gibt es ein Ergebnis?
Wenn ja, ist es richtig?
...
Anforderung
Service
(allg. Modell einer
IT-Dienstleistung)
kein Ergebnis
richtiges Ergebnis
falsches Ergebnis
Verbund informatischer Komponenten aus Soft- und Hardware mit
mechanischen und elektronischen Teilen. Kopplung cyper(informationstechner) mit physikalischen Komponenten.
5
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 16/142
1. Modellbildung
2. Service-Modell
Programme und Serverdienste als Service
Unterprogrammaufruf:
int16_t UP(int16_t16 a, int16_t b){
return 23*(a+b);
};
Eingabe: Variable a und b vom Typ int16_t6 bedatet mit
den Aufrufwerten.
Ausgabe: Rückgabewert vom Typ int16_t.
Soll-Funktion7 : Rückgabe ← 23*(a+b)
Server-Anfrage, z.B. an eine Suchmaschine:
Eingabe: Internet-Datenpaket
Ausgabe: Internet-Datenpaket
Soll-Funktion: Erstellung einer Liste von Suchergebnissen.
6
7
int16_t 16-Bit-Typ Zweierkomplement in AVR-Studio.
Die Soll-Funktion weicht im Beispiel von der Ist-Funktion ab.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 17/142
1. Modellbildung
2. Service-Modell
Hardware- und Cyper-physikalische Systeme
a
b
op
n
n
td ≤ 10 ns
Rechenwerk
n
y
a, b
op
y
n
td
Operanden
Operationscode
Ergebnis
Bitbreite
Verzögerungszeit
Rechenwerk als Beispiel für eine digitale Verarbeitungsfunktion:
Eingabe: Operanden und Op.-Code.
Ausgabe: Ergebnis.
Funktion: arithmetische oder logische Operation
Motorsteuergerät als Beispiel für ein CP-System:
Eingabe: Messwerte am Motor, Soll-Position, Ist-Position, ...
Ausgabe: Stellwert, Anzeigewerte, ...
Soll-Funktion: Reglung der Zündzeitpunkte, ...
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 18/142
1. Modellbildung
2. Service-Modell
Service-Leistungen ohne und mit Gedächtnis
Eine Service-Leistung ist, um testbar zu sein, i.allg.
deterministisch. Ein deterministischer Service ohne Gedächtnis
realisiert im math. Sinne eine Funktion:
y = f (x)
die jedem zulässigen Eingabewert x genau einen Ausgabewert y
zuordnet.
Ein deterministischer Service mit Gedächtnis ist im math. Sinne
ein Automat mit einem Zustand s einer Übergangsfunktion
Funktion:
s = fs (s, x)
und einer Ausgabefunktion
y = fy (s, x)
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 19/142
1. Modellbildung
2. Service-Modell
Die Unterteilung ohne/mit Gedächtnis gilt für jeden
Service-Typ (Programme, Hardware, CP-Systeme, ...):
ohne Gedächtnis
mit Gedächtnis
Programmbausteine
Unterprogramme ohne
private Daten
OOP-Methoden zur
Objektbearbeitung.
Programm
Compiler
Textverarbeitung
Serverdienst
Ohne Nutzung
fremder Daten.
Datenbankanfrage
digitale Schaltung
Rechenwerk
Prozessor
CP-System
Maschine, die aus
Vorgaben Werkstücke
herstellt
Steuergeräte, die sich
Daten merken
Eine Gesamstsystem ohne Gedächtnis kann auch Teilsysteme mit
Gedächnis nutzen (z.B. eine Server-Dienst den Server).
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 20/142
1. Modellbildung
2. Service-Modell
Service-Hierarchie
Hierarchie der
Hardware
Geräte
IT-Systeme sind hierarchisch aufgebaut:
Client-Server-Systeme bestehen aus
Rechnern und Netzwerkkomponenten.
Baugruppen
Rechner, Netzwerkkomponenten, ...
bestehen aus Hard- und Software.
Software besteht aus ProgrammbausteiSchaltkreise
nen, diese sind aus Programmieranweisungen zusammengesetzt, die ihrerseits
mit Maschienenbefehlen nachgebildet
Funktionsblöcke
werden.
Maschinenbefehle sind Service-Leistungen
der Hardware. Die Hardware bestehen aus Gatterschaltungen
Funktionsbausteinen, diese meist aus
&
&
&
Gattern und diese wiederum aus
&
Transistoren.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 21/142
1. Modellbildung
2. Service-Modell
Im Service-Modell
Hierarchie der
Hardware
stellen die Transistoren elementare SchaltGeräte
funktionen bereit (ein/aus) mit denen
Gatterfunktionen und Speicherelemente
gebildet werden.
Baugruppen
Mit Gattern und Speicherelementen
werden komplexere Funktionseinheiten
wie Rechenwerke, Register bis hin zu
kompletten Rechnern nachbildet.
Schaltkreise
Die Software nutzen HardwareFunktionen, ...
Funktionsblöcke
Ein IT-System funktioniert korrekt, wenn
alle Service-Leistung hierarchisch absteigend
korrekt arbeiten und der Informationsuss
Gatterschaltungen
dazwischen korrekt abläuft.
&
Prof. G. Kemnitz
&
&
&
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 22/142
1. Modellbildung
Prof. G. Kemnitz
3. Fehlfunktionen und Fehler
Fehlfunktionen und Fehler
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 23/142
1. Modellbildung
3. Fehlfunktionen und Fehler
Fehlfunktionen, Fehler, Störungen und Ausfälle
Fehlfunktionen sind erkennbare Abweichungen vom Sollverhalten.
Die Ursachen (root cause) für Fehlfunktionen können sein:
Fehler:
wirken ständig,
sind durch Reperatur oder Ersatz beseitigbar,
entstehen im Entwurfs- oder Fertigungsprozess,
sind durch Beseitigung ihrer Entstehungsursache vermeidbar.
Störungen:
spontane, nicht reproduzierbare Wirkung,
schwer zu vermeiden oder abzustellen.
Ausfälle:
Während des Betriebs entstehende Fehler.
Aufgelistetet sind die wesentlichen Aspekte (siehe Modelldenition).
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 24/142
1. Modellbildung
3. Fehlfunktionen und Fehler
Fehler in Systemen ohne Gedächtnis
Fehler + beeinträchtigte Servic-Anforderung ⇒ Fehlfunktion
Fehlernachweis:
Service mit fehlernachweisender Bedatung anfordern.
Kontrolle der Ausgabe.
Fehlerlokalisierung und Reparatur:
Suche der untersten Teilservice-Leistung oder Kommunikation, die mit korrekten Daten falsch ausgeführt wird.
Ersatz, Reparatur, ... der lokalisierten Teilservice-Leistung.
Erfolgskontrolle durch Wiederholung der Anforderung.
Prof. G. Kemnitz
Ausgang
·
Verfälschung
Rückverfolgungspfad
Ende des Rückverfolgungspfades
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 25/142
1. Modellbildung
3. Fehlfunktionen und Fehler
Fehler in Systemen mit Gedächtnis
kontaminierender
Service-Aufruf
fehlerfreier
Zustand
kontaminationsbeseitigender Service-Aufruf
kontaminationsnachweisender Service-Aufruf
Datenkontamination
Fehlfunktion
konataminationserhaltender Service-Aufruf
Fehlernachweis:
Verlangt eine Folge kontaminationserzeugender, -erhaltender
und -nachweisender Service-Anforderungen + Kontrollen.
Fehlerlokalisierung:
Rückwärts über mehrere Service-Anforderungen. System
mehrfach neu starten, um die kontaminierende Anforderung
zu nden, ... Lokalisierung der kontaminierenden
Anforderungen anhand mitgeschriebener interner Daten.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 26/142
1. Modellbildung
3. Fehlfunktionen und Fehler
Isolierter Test der Übergangs- und Ausgabefunktion
Fehlernachweis und -lokalisierung ist in Systemen mit Gedächtnis
viel schwieriger als in Systemen ohne. Isolierter Test der
Übergangs- und Ausgabefunktion:
Debugger: Programm anhalten und Variablen kontrollieren.
Trace: Mitschreiben der internen Daten.
Hardware: Lesen (und Überschreiben) der gespeicherten
Daten nach jedem Testschritt z.B. mit Scan-Registern.
Registerzelle mit
um Scan-Funktion
Schaltung mit Register
Übergangsund Ausgabefunktion
x
y
xi
yi
Multiplexer
D
si
ScanRegister
sin
Prof. G. Kemnitz
·
sout
si+1
Sel Takt
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 27/142
1. Modellbildung
Prof. G. Kemnitz
4. Potentielle und Modellfehler
Potentielle und Modellfehler
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 28/142
1. Modellbildung
4. Potentielle und Modellfehler
Potentielle Fehler
In den nachfolgenden statistischen Modellen hat jedes System
eine abzählbare Menge potentieller Fehler, die mit gewisser
Wahrscheinlichkeit vorhanden sein könnten.
Eine zweckmäÿige, aber nicht perfekte Denition:
Denition 5
Potentielle Fehler seien hierachisch absteigend alle Teil-ServiceLeistungen und Kommunikationswege, die falsch ausgeführt
werden können, ohne dass in ihnen eine genauere Lokalisierung
möglich ist.
Beispiele potentieller Fehler:
Transistorfehler, Gatterfehler, Prozessorfehler, ...
Anweisungsfehler, vertauschte Variablen, fehlerhaftes
Unterprogramm, fehlerhafter Service, ...
.
·
Prof. G. Kemnitz
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 29/142
1. Modellbildung
4. Potentielle und Modellfehler
Die Fehlerhierarchie folgt der Service-Hierarchie.
Digitale Schaltung:
Transistorfehler: Transistor schaltet nicht ein oder aus.
Gatterfehler: falsche logische Ausgabe, ...
Rechner: falsche/keine Operationsausführung
Software:
falsche Ausführung von Maschinenbefehlen,
falsche Ausführung von Befehlsfolgen, Unterprogrammen,
fehlerhafte Programmbausteine, ...
Die Anzahl der potentiellen Fehler ist etwa proportional zur
Systemgröÿe, aber
jeder potentielle Fehler kann unterschiedlichste
Fehlerwirkungen haben.
Sein Verhalten lässt sich nicht simulieren und
nur ungefähr mit einer Nachweiswahrscheinlichkeit
beschreiben.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 30/142
1. Modellbildung
4. Potentielle und Modellfehler
Zu erwartende Fehler
Nicht alle potentiellen Fehler und ihre möglichen
Funktionsverfälschungen sind gleichwahrscheinlich. Die zu
erwartenden Fehler hängen vom Entstehungsprozess ab:
Fertigungsfehler (z.B. bestückte Baugruppen): Kurzschlüsse,
Unterbrechungen, Fehlbestückungen, Lötfehler, ...
Entwurfsfehler: vergessene oder falsch interpretierte
Anforderungen, falscher Algorithmus, fehlerhafte
Programmzeilen, durch Compilieren entstande Fehler, ...
Entwurf birgt mehr Fehlermöglichkeiten als Fertigung.
Mehrfach genutzte Komponenten gleiche Entwurfsfehler. ...
Unbeständige Fehlerwirkung durch Fremdeinüssen
(Temperatur, Versorgungsspannung, ..), unzugängliche
gespeicherte Zustände, ...
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 31/142
1. Modellbildung
4. Potentielle und Modellfehler
Modellfehler
Für die Bewertung von Testsätzen und die geziele Suche von
Testbeispielen wird eine Menge von in das System einfügbarer
oder simulierbarer Beispielfehler benötigt.
Denition 6
Ein Modellfehler ist eine Beispielfehler mit exakt vorgegebenem
Fehlverhalten.
Beispiele für Modellfehler:
Setze Signal auf ständig null / ständig eins.
Setze Sprungbedingung auf ständig wahr / ständig falsch.
Verfälsche Zwischenergebnisse +1 / -1.
Ein Algorithmus für die Berechnung von Modellfehlermengen
wird als Fehlermodell bezeichnet.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 32/142
1. Modellbildung
4. Potentielle und Modellfehler
Ausfall
Die Hardware und Mechanik eines IT-Systems unterliegt einem
Verschleiÿ, der zur Zerstörung von Teilsystemen führen kann.
Denition 7
Ein Ausfall ist ein Fehler, der während des Einsatzes entsteht.
Die meisten Fehler in IT-Systemen sind solche, die von den Tests
vor dem Einsatz nicht erkannt wurden. Da die Iteration aus Test
und Fehlerbeseitigung vor dem Einsatz vorrangig die gut
nachweisbaren Fehler beseitigt, versagen Systeme im Einsatz nur
selten aufgrund nicht erkannter Entwurfs- und Fertigungsfehler.
Ausfälle können auch gut oder schlecht nachweisbar sein und so
die Verlässlichkeit kaum bis komplett beeinträchtigen. In der
Umgangssprache werden nur die Ausfälle als solche gezählt, die
die Verlässlichkeit spürbar beeinträchtigen.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 33/142
1. Modellbildung
Prof. G. Kemnitz
5. Aufgaben
Aufgaben
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 34/142
1. Modellbildung
5. Aufgaben
Aufgabe 1.1: Wertebereichsproblem
Eine Service-Leistung sei deniert durch:
Eingabeformat: a, b: 16-Bit Zweierkomplement
Ausgabeformat: Rückgabewert 16-Bit Zweierkomplement
Soll-Funktion: Rückgabe des Wertes des Ausdrucks a-b+25
Implementierung als C-Funktion:
int16_t fkt(int16_t a, int16_t b){
return a-b+25;
}
1
2
3
Wie groÿ sind die kleinsten und gröÿten darstellbaren Einund Ausgabewerte?
Für welche Bedatungen von a und b unterscheidet sich der
Ausgabe-Ist- vom Ausgabe-Soll-Wert?
Wie sind Ist- und die Soll-Funktion zu verändern, so dass bei
einem Bereichsüber- bzw. -unterlauf des Ergebnisses der
gröÿte bzw. kleinste darstellbare Wert zurückgegeben wird?
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 35/142
1. Modellbildung
5. Aufgaben
Aufgabe 1.2: C-typischer Multiplikationsfehler
Eine Service-Leistung sei deniert durch:
Eingabeformat: zwei Variablen a und b, 8-Bit vorzeichenfrei
Ausgabeformat: Rückgabewert 16-Bit vorzeichenfrei
Sollfunktion: Rückgabe des Produkts a*b
Implementierung als C-Funktion:
uint16_t umult16(uint8_t a, uint8_t b){
return a*b;
}
1
2
3
Kleinster und gröÿter darstellbarer Ein- und Ausgabewerte?
Für welche Bedatungen von a und b unterscheidet sich der
Ist- vom Soll-Wert der Ausgabe8 ?
Wie ist die Ist-Funktion zu verändern, dass für alle
Eingabewerte das korrekte Ergebnis berechnet wird?
8
In C hat ein Produkt den Typ des Operanden mit dem gröÿten Wertebereichs. Typenumwandlung der Zuweisung erst nach Produktbildung.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 36/142
1. Modellbildung
5. Aufgaben
Aufgabe 1.3: Typ. Fehler einer Gleitkommadivision
Eine Service-Leistung sei deniert durch:
Ein- und Ausgabegabeformat: 32-Bit Gleitkommaformat
IEEE 754 single
Soll-Funktion: Rückgabe von y=sin(x)/x mit maximaler
Soll-/Ist-Abweichung:
|ySoll − yIst |
< 0.01%
yIst
Implementierung als C-Funktion:
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 37/142
1. Modellbildung
1
2
3
4
5. Aufgaben
Beschreiben Sie den Aufbau das Gleitkommaformats IEEE
754 single9 .
Wie wird der Eingabewert -5.0 dargestellt?
Für welchen Eingabebereich weicht das Ist-Ergebnis vom
Soll-Ergebnis ab.
Verbessern Sie die Implementierung, so dass sie auch für den
im Aufgabenteil zuvor bestimmten Wertebereich der Eingabe
korrekte Ergebnisse liefert.
Die benötigten Informationen nden unter dem Suchbegri IEEE
Gleitkommaformat im Internet.
9
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 38/142
1. Modellbildung
5. Aufgaben
Aufgabe 1.4: Initialisierungsfehler
Das nachfolgende Unterprogramm soll für das mit einem Zeiger
auf den Anfang und der Länge übergebene Feld den kleinsten
Wert zurückgeben und hat ein unbeständiges Fehlverhalten.
int16_t Feld[]= {231, -13, ...}; // Beispiel für ein Feld
...
int16_t kleinsterWert(int16_t *Feld, uint16_t len){
int16_t tmp, *ptr;
for (ptr=Feld; ptr <Feld+len; ptr++){
if (*ptr<tmp) tmp = *ptr;
}
}
1
2
Mit welchen Eingaben und Zusatzbedingungen ist der Fehler
nachweisbar?
Ändern Sie das Programm so, dass es korrekt funktioniert.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 39/142
1. Modellbildung
5. Aufgaben
Aufgabe 1.5: Fehler in kombinatorischer Schaltung
Eine kombinatorische Schaltung mit der Soll-Funktion
entsprechend der nachfolgenden Wertetabelle ist durch die
Schaltung daneben realisiert.
Soll-Funktion
x3 x2 x1 x0 y x3 x2 x1 x0
0 0 0 0 1 1 0 0 0
0 0 0 1 0 1 0 0 1
0 0 1 0 1 1 0 1 0
0 0 1 1 0 1 0 1 1
0 1 0 0 0 1 1 0 0
0 1 0 1 1 1 1 0 1
0 1 1 0 0 1 1 1 0
0 1 1 1 0 1 1 1 1
1
2
Realisierung
y
1
1
1
1
0
1
0
0
x0
x1
x2
x3
&
&
≥1
y
&
Stellen Sie die Wertetabelle der Realisierung auf. Für welche
Eingaben weicht die Ausgabe vom Soll-Wert ab.
Verbessern Sie die Realisierung so, dass Sie für alle Eingaben
richtige Ergebnisse liefert.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 40/142
1. Modellbildung
5. Aufgaben
Aufgabe 1.6: Seqentielle Schaltung mit Fehler
Eine Schaltung soll bei x = 0 in den Zustand y = y2 y1 y0 = 000
übergehen und sonst bei jeder aktiven Taktank seinen Wert um
eins erhöhen (Binärzähler).
1
0
1
x 0
1
y0 0
T
Testbeispiel
mit Soll-Werten
für die Ausgabe
1
0
1
y2 0
y1
y0
y1
Realisierung:
&
=1
&
=1
&
y2
x
T
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 41/142
1. Modellbildung
5. Aufgaben
Gezeigt sind ein Testbeispiel mit Soll-Signalverläufen und eine
fehlerhafte Realisierung.
1 Bestimmen Sie die tatsächlichen Ausgabesignalverläufe yi für
das Testbeispiel.
2 Korrigieren Sie die Schaltungsrealisierung so, dass sie das
Testbeispiel richtig abarbeitet.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 42/142
1. Modellbildung
5. Aufgaben
Aufgabe 1.7: Wurzelberechnung
Eine Service-Leistung sei deniert durch:
Eingabeformat: uint16_t (16 Bit, vorzeichenfrei)
Ausgabegabeformat: uint8_t (8 Bit, vorzeichenfrei)
Soll-Funktion: Rückgabe der ganzzahligen Anteils der Wurzel
Implementierung als C-Funktion:
uint8_t wurzel(uint16_t x){
uint8_t w=0;
uint16_t sum=0;
while (sum<x){sum += (w<<1)+1;
w++;}
return w;
} <ausprobieren>
1
2
Mit welchen Eingaben ist der Fehler nachweisbar?
Ändern Sie das Programm so, dass es korrekt funktioniert.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 43/142
2. Wahrscheinlichkeit
Prof. G. Kemnitz
Wahrscheinlichkeit
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 44/142
2. Wahrscheinlichkeit
Die Wahrscheinlichkeit von Zufallsexperimenten
Denition 8
Wahrscheinlichkeit ist das Verhältnis, gegen das bei einem
Zufallsexperiment die Anzahl der günstigen zur Anzahl aller
möglichen Ereignisse mit zunehmender Versuchsanzahl strebt.
Wahrscheinlichkeit, dass eine 3 gewürfelt wird.
Zufallsexperiment: Würfeln
Mögliche Ergebnisse: 1, 2, ..., 6
günstiges Ergebnis: 3
N
n Anzahl der Versuche
(Würfel werfen)
N Anzahl der günstigen
Ereignisse (3 würfeln)
Prof. G. Kemnitz
·
10
Steu
5
0
ung
n/6
N=
0
10
20
30
40
Institut für Informatik, Technische Universität Clausthal
50
60
n
11. Juni 2015 45/142
2. Wahrscheinlichkeit
N
n Anzahl der Versuche
(Würfel werfen)
N Anzahl der günstigen
Ereignisse (3 würfeln)
10
Steu
5
0
ung
n/6
N=
0
10
20
30
40
50
60
n
Beim Würfeln wird davon ausgegangen, das alle 6 Möglichkeiten
gleichwahrscheinlich sind. Mit Versuchsanzahl n → ∞ strebt das
Verhältnis aus günstigen Ergebnisse N zur Versuchsanzahl gegen
das Verhältnis aus möglichen günstigen und möglichen
Ereignissen:
N
1
p = lim
n→∞
n
=
6
Das bedeutet aber keineswegs, dass bei jedem sechsten Versuch
eine 3 gewürfelt wird. Es ist durchaus zu beobachten, dass
hintereinander mehrere Dreien und auch mal lange Zeit keine
Dreien gewürfelt werden.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 46/142
2. Wahrscheinlichkeit
Aufteilen und verketteten von Experimenten
Zufallsexperimente lassen sich u.U. in mehrere Experimente
aufteilen oder mehrere unabhängige Experimente zu einem
zusammenfassen. Im nachfolgenden wird bei jedem Experiment
zweimal gewürfelt (Ereignisse A und B , Wertebereich jeweils
{1, 2, . . . , 6}. Daraus werden mit Vergleichsoperatoren die
zweiwertigen Ereignisse C und D gebildet und diese einmal
UND- und einmal ODER verknüpft und gezählt.
n
A
B
C = (A > 3)
D = (B < 3)
E = (C ∧ D)
F =P
(C ∨ D)
PC
PD
PE
F
Prof. G. Kemnitz
·
1
6
6
1
0
0
1
1
0
0
1
2
1
5
0
0
0
0
1
0
0
1
3
5
6
1
0
0
1
2
0
0
2
4
4
2
1
1
1
1
3
1
1
3
5
1
1
0
1
0
1
3
2
1
4
6
1
3
0
0
0
0
3
2
1
4
7
2
3
0
0
0
0
3
2
1
4
8
2
6
0
0
0
0
3
2
1
4
9
4
4
1
0
0
1
4
2
1
5
10
6
5
1
0
0
1
5
2
1
6
11
4
1
1
1
1
1
6
3
2
7
12
3
3
0
0
0
0
6
3
2
7
13 . . .
1
1
0
1
0
1
6
4
2
8
Institut für Informatik, Technische Universität Clausthal
20 . . .
6
4
1
0
0
1
11
6
5
13
40
5
3
1
0
0
1
21
9
6
24
11. Juni 2015 47/142
2. Wahrscheinlichkeit
Nach 40 Versuchen betragen die Schätzwerte der
Wahrscheinlichkeiten als Verhältnis der günstigen Ergebnisse,
dass die Bedingungen C bis F erfüllt sind, zur Versuchsanzahl:
Ereignis
C = (A > 3)
D = (B < 3)
E = (C ∧ D)
F = (C ∨ D)
Schätzwert
21/40 = 53%
9/40 = 23%
6/40 = 15%
24/40 = 60%
Wahrscheinlichkeit
3/6 = 50%
2/6 = 33%
6/36 = 17%
24/36 = 67%
Die Wahrscheinlichkeit als Grenzwerte für n → ∞ ergibt sich für
jeden Versuch aus dem Verhältnis der günstigen zur Anzahl der
möglichen Ergebnisse. Die Würfelexperimente haben 6 mögliche
Ergebnisse. Davon sind für die Ereignisse C und D 3 bzw. 2
günstig. Die verketten Ereignisse E und F haben 62 = 36
mögliche Ergebnisse, von denen 6 bzw. 24 günstig sind.
Die Schätzung einer Wahrscheinlichkeit mit weniger als 100
günstigen Ereignissen ist recht ungenau.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 48/142
2. Wahrscheinlichkeit
Bedingte Wahrscheinlichkeiten
Bei einer bedingten Wahrscheinlichkeit werden nur die Versuche
und Ereignisse gezählt, die die Bedingung erfüllen. Beispiel sei
die ODER-Verknüpfung sich ausschlieÿender Ereignisse:
PP
E = C ∨ D unter der Bedingung C ∧ D = 0.
n
C
D
C ∨D
nicht
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 20 16
1 0 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 1 11 7
0 0 0 1 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 6 2
1 0 1 1 1 0 0 0 1 1 1 0 1 1 1 0 1 0 1 1 13 9
mitgezählte Ereignisse bzw. Summe ohne diese Ereignisse
Sowohl die Anzahl der gezählten Versuche als auch die günstigen
Ergebnisse verringern sich um die vier nicht mitzuzählenden
Ergebnisse mit C ∧ D = 1. Das undokumentierte Aussortieren
ungewollter Ergebnisse ist eine unauällige und beliebte Technik,
Statistiken zu fälschen10 .
10
Traue nie einer Statistik, die du nicht nicht selbst gefälscht hast.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 49/142
2. Wahrscheinlichkeit
Prof. G. Kemnitz
1. Verkettete Ereignisse
Verkettete Ereignisse
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 50/142
2. Wahrscheinlichkeit
1. Verkettete Ereignisse
Wahrscheinlichkeit verketteter Ereignisse
Wahrscheinlichkeit, dass ein Ereignis A nicht eintritt:
P Ā = 1 − P (A)
(1)
Wahrscheinlichkeit, dass von zwei unabhängigen Ereignissen
A und B alle eintreten:
(2)
P (A ∧ B) = P (A) · P (B)
Wahrscheinlichkeit, dass von mehreren unabhängigen
Ereignissen mindestens eines eintritt:
P (A ∨ B) = P Ā ∧ B̄
=
Prof. G. Kemnitz
=
·
1 − (1 − P (A)) · (1 − P (B)) (3)
P (A) + P (B) − P (A) · P (B)
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 51/142
2. Wahrscheinlichkeit
1. Verkettete Ereignisse
Beispiel: Nachweis unabhängiger Fehler
In einem System mit drei Fehlern seien diese unabhängig
voneinander mit den Nachweiswahrscheinlichkeiten p1 = 10%,
p2 = 5% und p3 = 20% nachweisbar. Wie groÿ sind die
Wahrscheinlichkeiten der verketten Ereignisse, dass
E1 : alle Fehler,
E2 : kein Fehler,
E3 : mindestens ein Fehler und
E4 : genau zwei Fehler nachgewiesen werden?
Lösung: Denition von Ereignissen Fi für Fehler i nachweisbar
und Beschreibung von Ei durch logische Verknüpfungen:
Alle Fehler nachweisbar:
Prof. G. Kemnitz
E1
P (E1 )
·
= F1 ∧ F2 ∧ F3
= P (F1 ) · P (F2 ) · P (F3 )
= p1 · p2 · p3 = 10% · 5% · 20% = 0,1%
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 52/142
2. Wahrscheinlichkeit
1. Verkettete Ereignisse
Kein Fehler nachweisbar:
E2
P (E2 )
= F1 ∨ F2 ∨ F3
=
=
1 − (1 − (1 − P (F1 )) · (1 − P (F2 )) · (1 − P (F2 )))
(1 − p1 ) · (1 − p2 ) · (1 − p3 ) = 90% · 95% · 80% = 68,4%
Mindestens ein (nicht kein) Fehler nachweisbar:
E3
P (E3 )
= Ē2
=
1 − P (E2 ) = 1 − 68,4% = 31,6%
Genau 2 Fehlern werden nachgewiesen, wenn
die ersten beiden und der dritte nicht,
die zweiten beiden und der erste nicht oder
der erste und der dritte, aber nicht der zweite
nachgewiesen werden (ausschlieÿendes ODER, nächste Folie):
E4
P (E4 )
=
F1 ∧ F2 ∧ F̄3 ∨ F̄1 ∧ F2 ∧ F3 ∨ F1 ∧ F̄2 ∧ F3
= p1 · p2 · (1 − p3 ) + (1 − p1 ) · p2 · p3 + p1 · (1 − p2 ) · p3
=
Prof. G. Kemnitz
·
90% · 5% · 20% + 10% · 95% · 20% + 10% · 5% · 80% = 6,8%
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 53/142
2. Wahrscheinlichkeit
1. Verkettete Ereignisse
Abhängige Ereignisse
Die Wahrscheinlichkeiten der UND- oder ODER-Verknüpfung
von abhängigen Ereignissen A ∧ B und A ∨ B lassen sich nur aus
den Wahrscheinlichkeiten P (A) und P (B) der Einzelereignisse
bestimmen, wenn sich die Ereignisse ausschlieÿen:
(4)
Die Wahrscheinlichkeit, dass eines von beiden eintritt ist dann die
Summe der Einzelwahrscheinlichkeiten:
P (A ∧ B) = 0
P (A ∨ B)|P (A∧B)=0 = P (A) + P (B)
(5)
Ist diese Voraussetzung nicht erfüllt, ist das Experiment so
umformulieren, dass sich danach alle zu verkettenden Ereignisse
gegenseitig ausschlieÿen oder voneinander unabhängig sind.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 54/142
2. Wahrscheinlichkeit
1. Verkettete Ereignisse
Beispiel abhängiger Fehlernachweis
Wie groÿ sind die Wahrscheinlichkeiten, dass von zwei Fehlern in
einem System 0, 1 oder 2 Fehler nachweisbar sind, wenn die
Nachweiswahrscheinlichkeit für Fehler 1 unabhängig vom
Nachweis von Fehler 2 p1 = 10% beträgt und für Fehler 2 bei
Nachweis von Fehler 1 p2 = 20% und sonst 0 beträgt. (Der
Nachweis des zweiten Fehler hängt vom Nachweis des ersten ab.)
Lösung: Denition von Ereignissen Fi für Fehler i nachweisbar
und Ei für i Fehler nachweisbar.
Kein Fehler ist nachweisbar, wenn der erste Fehler nicht
nachweisbar ist11 :
E0
P (E0 )
11
= F̄1
=
1 − P (F1 ) = 1 − p1 = 1 − 10% = 90%
Der Fall, Nachweis des zweiten ohne den ersten Fehler ist ausgeschlossen.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 55/142
2. Wahrscheinlichkeit
1. Verkettete Ereignisse
Ein Fehler ist nachweisbar, wenn der erste Fehler
nachweisbar ist und der zweite nicht:
E1 = F1 ∨ F̄2
P (E1 ) = p1 · (1 − p2 ) = 10% · 80% = 8%
Zwei Fehler sind nachweisbar, wenn beide Fehler nachweisbar
sind:
E2 = F1 ∨ F2
P (E2 ) = p1 · p2 = 10% · 20% = 2%
Probe: Summe der Wahrscheinlichkeiten aller möglichen
Ergebnisse muss immer 100% sein:
Prof. G. Kemnitz
90% + 2% + 8% = 100%
·
√
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 56/142
2. Wahrscheinlichkeit
1. Verkettete Ereignisse
Beispiel Bedatungswahrscheinlichkeit
Wie groÿ ist die Wahrscheinlichkeit, dass ein 8-Bit-Vektor für
eine Service-Anfrage an eine Schaltung mit dem Wert
x = ”11111110” bedatet wird, wenn
1 unabhängig voneinander für jedes Bit mit einer
Wahrscheinlichkeit12 von g = 50% zufällig eine Eins und
sonst eine Null gewählt wird.
2 Dasselbe wie im Aufgabenteil zuvor, nur mit g = 60%.
3 Dasselbe wie in den Aufgabenteilen zuvor, nur dass für die
höchtwertigen vier Bits immer derselben Zufallswert
ausgewählt wird.
12
Die Wahscheinlichkeit g wird auch als Wichtung der Bitstelle bezeichnet.
Wichtung wird beim Test eingesetzt, um die Nachweiswahrscheinlichkeiten
sehr schlecht nachweisbarer Fehler zu erhöhen.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 57/142
2. Wahrscheinlichkeit
1. Verkettete Ereignisse
Lösung: Denieren von Ereignissen Gi , dass für Bit i eine Eins
ausgewählt wird. Für die beiden ersten Teilaufgaben gilt:
x = ”11111110”
P (x = ”11111110”)
= G7 ∧ G6 ∧ G5 ∧ G4 ∧ G3 ∧ G2 ∧ G1 ∧ Ḡ0
= g 7 · (1 − g)
Für die letzte Teilaufgabe folgt aus G7 = G6 = G5 = G4 :
x = ”11111110”
P (x = ”11111110”)
= G4 ∧ G3 ∧ G2 ∧ G1 ∧ Ḡ0
= g 4 · (1 − g)
g
50%
60%
G4 bis G7 unabhängig
2−8 ≈ 0,004
0,67 · 0,4 = 0,01
G7 = G6 = G5 = G4
Prof. G. Kemnitz
·
2−5 ≈ 0,03
0,64 · 0,4 = 0,05
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 58/142
2. Wahrscheinlichkeit
Prof. G. Kemnitz
2. Fehlerbaumanalyse
Fehlerbaumanalyse
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 59/142
2. Wahrscheinlichkeit
2. Fehlerbaumanalyse
Fehlerbaumanalyse (FTA fault tree analysis)
Die FTA dient zur Beschreibung von Fehlersituationen und zur
Abschätzung deren Wahrscheinlichkeiten. Sie unterscheidet:
Basisereignisse, die nicht weiter untersucht
werden, weil sie gut bekannt sind, oder Wahrscheinlichkeiten dafür existieren.
Nicht untersuchte Ereignisse.
Ereignisse, die im gewöhnlichen Betrieb
auftreten, aber in Kombination mit anderen
Ereignissen Fehlerquelle sein können.
Fehlerereignisse, die sich nicht weiter
aufteilen lassen.
Die Ereignisse können direkt oder als Komplementereignis UND
und ODER verknüpft sein.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 60/142
2. Wahrscheinlichkeit
2. Fehlerbaumanalyse
Beispiel: Motor lässt sich nicht abstellen
Schalter 1
versagt
B1
Not-Aus-Schalter
versagt
F1
&
PB1
Schalter 2
versagt
B2
pB2
pF1 = pB1 · pB2
an alternativer
Stromversorgung
angeschlossen
N1
Motor lässt sich
nicht abstellen
≥1
F2
pF2 = 1 − (1 − pF1 ) · (1 − pN1 )
pN1
Zusammenstellen und Klassizierung der zu
berücksichtigenden Ereignisse.
Verknüpfung mit UND-, ODER-, NICHT
Abschätzung der Wahrscheinlichkeit der verketteten
Ereignisse nach den Gl. 1 bis 5:
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 61/142
2. Wahrscheinlichkeit
Schalter 1
versagt
B1
Not-Aus-Schalter
versagt
F1
&
PB1
Schalter 2
versagt
B2
pB2
2. Fehlerbaumanalyse
pF1 = pB1 · pB2
an alternativer
Stromversorgung
angeschlossen
N1
Motor lässt sich
nicht abstellen
≥1
F2
pF2 = 1 − (1 − pF1 ) · (1 − pN1 )
pN1
Angenommen, die Schalter versagen mit einer Wahrscheinlichkeit
von 10−3 und die Wahrscheinlichkeit, dass eine alternative
Stromversorgung existiert, ist nicht gröÿer als 10−8 , ergibt sich
für den betrachteten Fehlerfall eine Wahrscheinlichkeit:
pF2 < 10−3 · 10−3 + 10−8 − 10−3 · 10−3 · 10−8 ≈ 10−6
Am Überschlags kann jetzt diskutiert werden, ob das Risiko von
10−6 , dass der Motor nicht abschaltet, akzeptiert wird oder
weitere Maÿnahmen ergrien werden, z.B. dritter Schalter.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 62/142
2. Wahrscheinlichkeit
2. Fehlerbaumanalyse
Beispiel Überlebenswahrscheinl. mit Redundanz
Mit dem Modell Fehlerbaum lässt sich auch das Überleben
eines Systems mit mehreren Komponenten beschreiben.
Beispiel: Rechner mit redundantem Plattensystem. Der Rechner
soll ohne die Berücksichtigung der Plattenausfälle über den
betrachteten Zeitraum eine Überlebenswahrscheinlichkeit
pR = 95% und die Platten von pP = 50% haben.
Wie groÿ ist die Überlebenswahrschenlichkeit p1P des
Rechners mit nur einer Platte?
Wie groÿ ist die Überlebenswahrschenlichkeit p2P mit zwei
Platten, wenn der Rechner auch nur mit einer Platte
benutzbar bleibt?
Lösung: Die Ereignisse, Gesamtsystem, Rechner ohne Platte und
die beiden Platten überleben, sollen mit den zweiwertigen
Zufallsvariablen G, R, P1 und P2 bezeichnet werden.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 63/142
2. Wahrscheinlichkeit
2. Fehlerbaumanalyse
Mit einer Platte überlebt das Gesamtsystem, wenn Platte und
Rechner überleben. Überlebenswahrsch. 47,4%:
R
P (R) = 95%
P1
P (P1 ) = 50%
&
G
P (G) = P (R) · P (P1 )
= 95% · 50% = 47, 4%
Mit zwei Platten überlebt der Rechner, solange Rechner und
mindestens eine Platte überleben. Überlebenswahrsch. 71,4%:
R
P (R) = 95%
P1
P (P1 ) = 50%
P2
P (P2 ) = 50%
Prof. G. Kemnitz
·
&
≥1
G
P (G) = 95% · 75% = 71, 4%
1 − (1 − 50%) · (1 − 50%)
= 75%
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 64/142
2. Wahrscheinlichkeit
2. Fehlerbaumanalyse
Fehlerbäume mit rekonvergenten Auächerungen
Rekonvergente Auächerungen sind Schlaufen in gerichteten
Graphen.
An den Verzweigungen am Schlaufenbeginn werden
abhängige Ereignisse gebildet und am Schlaufenende
miteinander verknüpft.
B1
B2
B3
≥1
≥1
F1 = B 1 ∨ B 2
F2 = B 2 ∨ B 3
&
F3
Im Beispiel sind die beiden ODER-verknüpften Ereignisse
beide von B2 abhängig, schlieÿen sich aber auch nicht aus, so
das für die UND-Verknüpfung weder Gl. 2 noch 4 gilt.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 65/142
2. Wahrscheinlichkeit
2. Fehlerbaumanalyse
Beseitigung der Rekonvergenz durch Umformung
Prof. G. Kemnitz
B1
≥1
B2
≥1
B3
F1 = B 1 ∨ B 2
F2 = B 2 ∨ B 3
&
F3
Extraktion und Umformung/Vereinfachung des
nachgebildeten logischen Ausdrucks:
(B1 ∨ B2 ) ∧ (B2 ∨ B3 ) = B2 ∨ (B1 ∧ B3 )
Funktionsgleicher rekonvergenzfreier Fehlerbaum:
B1
B3
B2
·
p1
p3
p2
&
p1 · p3
≥1
F3
p1 · p3 + p2 − p1 · p2 · p3
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 66/142
2. Wahrscheinlichkeit
2. Fehlerbaumanalyse
Umformung über Wertetabelle
B1
B2
B3
p1
p2
≥1
p3
≥1
B1 ∨ B2
B2 ∨ B3
B1 B2 B3
&
F3
1 Ereignis eingetreten
0 Ereignis nicht eingetreten
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
F3
0
0
1
1
0
1
1
1
Wahrscheinlichkeit
+
(1 − p3 ) · p2 · (1 − p1 )
(1 − p3 ) · p2 · p1
+ (1 − p3 ) · p2 · (1 − p1 )
+
p3 · p2 · (1 − p1 )
p3 · p2 · p1
+
Jede logische Funktion ist durch eine Wertetabelle beschreibbar.
Die Auswahlwahrscheinlichkeiten der Zeilen sind
Wahrscheinlichkeitprodukte. Die gleichzeitige Auswahl mehrerer
Zeilen ist ausgeschlossen, so dass die Gesamtwahrscheinlichkeit
die Summe der Wahrscheinlichkeitsprodukte der günstigen
Eingabezeilen ist.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 67/142
2. Wahrscheinlichkeit
Prof. G. Kemnitz
3. Markov-Ketten
Markov-Ketten
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 68/142
2. Wahrscheinlichkeit
3. Markov-Ketten
Markow-Ketten13
Modellierung eines stochastischen Prozesses durch einen
Zustandsautomaten, dessen Kanten mit Übergangswahrscheinlichkeiten beschriftet sind. Ein einfaches Beispiel ist die
Beschreibung des Nachweises eines Fehlers mit n Service-Aufrufen. Das System habe die Zustände Z0 (Fehler nicht
nachgewiesen) und F1 (Fehler nachgewiesen).
Automat zur Beschreibung
des Fehlernachweise
N
N̄
Z0
Zi
N
13
Z1
Zustände
Nachweisereignis
Anfangszustand
Markov-Kette zum Automaten
p
1
1−p
P (Z0 )
P (Z1 )
P (Zi ) Zustandswahrscheinlichkeiten
p Nachweiswahrscheinlichkeit
Anfangswert: P (Z0 ) = 1
Nach Andrej Andreevi£ Markov, russischer Mathematiker, 1856-1922.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 69/142
2. Wahrscheinlichkeit
3. Markov-Ketten
Eine Markov-Kette ist ein lineares System, das sich auch als
Matrixgleichung beschreiben lässt. Rekursive Form:


P (Z0 )
P (Z1 )



i+1
=
1−p
p
0
1
 
·
P (Z0 )
P (Z1 )


i
Die Summe der Zustandswahrscheinlichkeiten und die Summe der
Übergangswahrscheinlichkeiten aus einem Zustand (in einer
Spalte) muss immer eins sein. Die Zustandswahrscheinlichkeiten
nach n Service-Aufrufen betragen im Beispiel:


P (Z0 )
P (Z1 )


 =
n
1−p
p
n 
0
 ·
1
1
0


Die Wahrscheinlichkeit, dass ein Fehler mit n Service-Aufrufen
nachgewiesen wird, ist die, dass er nicht mit keinem nachgewiesen
wird:
Prof. G. Kemnitz
n
p (n) = 1 − (1 − p)
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 70/142
2. Wahrscheinlichkeit
3. Markov-Ketten
Unsere spezielle Markov-Kette geht in n-Schritten mit dieser
Wahrscheinlichkeit von Zustand Z0 (Fehler nicht nachgewiesen)
nach Z1 (Fehler nachgewiesen) und verbleibt dort:
Prof. G. Kemnitz


·
Z0
Z1


 =
n
n
(1 − p)
0
n
1 − (1 − p)
1
 
·
Institut für Informatik, Technische Universität Clausthal
1
0


11. Juni 2015 71/142
2. Wahrscheinlichkeit
3. Markov-Ketten
Auftrittswahrscheinlichkeit fehlernachweisender
Testeingabefolgen
Ein Zufallsgenerator erzeugt die Testeingabewerte Xi jeweils mit
einer Wahrscheinlichkeit pi . Wie groÿ ist die Wahrscheinlichkeit,
dass in einer Folge der Länge n in drei aufeinanderfolgenden
Schritten die Teilfolge X1 X2 X3 enthalten ist?
Entwurf eines Akzeptorautomaten, der in einem
Anfangszustand startet und bei Erkennen der Folge X1 X2 X3
in einen Endzustand übergeht.
E1
Z0
sonst
Prof. G. Kemnitz
E2
Z1
sonst
E3
Z2
sonst
Z3
Zi
Ei
·
immer
vorherige Folge bestand aus
den ersten i richtigen Werten
Wert ist Xi
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 72/142
2. Wahrscheinlichkeit
3. Markov-Ketten
Ersatz der Übergangsbedingungen durch die Übergangswahrscheinlichkeiten pi = P (Ei ) und der Zustände durch
Zustandswahrscheinlichkeiten P (Zi ).
p1
P (Z1 )
P (Z0 )
1 − p2
1 − p1
p2
p3
P (Z2 )
P (Z3 )
1
1 − p3
Simulation mit den Startwert Z0 (P (Z0 ) = 1 und
P (Zi6=0 ) = 0) für n Schritte:

P (Z0 )

 P (Z )
1


 P (Z2 )

P (Z3 )
Prof. G. Kemnitz
·








 =




n
1 − p1
1 − p2
1 − p3
0
p2
0
0
0
p3
p1
0
0
Institut für Informatik, Technische Universität Clausthal
0
n 
1

  
 
0 
  0 
 · 
 
0 
  0 
1
0
11. Juni 2015 73/142
2. Wahrscheinlichkeit
3. Markov-Ketten
Mit Beispielwerten für p1 bis p3 :
p1 = 30%
70%
P (Z0 )
p2 = 20%
P (Z1 )
p3 = 60%
P (Z2 )
100%
P (Z3 )
80%
40%
Schritt
0
1
2
3
4
...
10
...
50
...
100
Prof. G. Kemnitz
·
P (Z0 )
100,00
70,00
73,00
70,30
68,41
...
P (Z1 )
0,00
30,00
21,00
21,90
21,09
...
P (Z2 )
0,00
0,00
6,00
4,20
4,38
...
P (Z3 )
0,00
0,00
0,00
3,60
6,12
...
Summe
100,00
100,00
100,00
100,00
100,00
...
59,43
...
19,27
...
18,34
...
5,95
...
3,77
...
1,22
...
18,46
...
73,56
...
100,00
...
100,00
...
4,73
1,46
0,30
93,53
100,00
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 74/142
2. Wahrscheinlichkeit
3. Markov-Ketten
Verfügbarkeit Redundanter Master-Checker System
Ein Rechnersystem für höchste Sicherheitsanforderungen soll aus
vier Rechnern bestehen, einem Master, der rechnet, einem
Checker, der die Ergebnisse kontrolliert, und zwei
Reserverechnern, die bei Ausfall die Service-Anforderungen des
Masters oder des Checkers übernehmen. Das System startet mit
Rechner 1 als Master und Rechner 2 als Checker und gilt solange
als funktionsfähig, wie noch ein Master und ein Checker
funktionieren. Die Ausfallwahrscheinlichkeit p der Rechner je
Service-Abforderung sei 10%.
1 Beschreiben Sie dem Sachverhalts durch eine Markov-Kette
in Matrixform.
2 Erweiterung der Fehlerreaktion um einen Reparaturprozess,
in dem jeder defekte Rechner während, Master und Checker
eine Service-Anfage abarbeitet, mit einer Wahrscheinlichkeit
von 20% repariert wird.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 75/142
2. Wahrscheinlichkeit
3. Markov-Ketten
Die relevanten Systemzustände sind 0, 1, 2 und mehr als 2
Rechner ausgefallen (Z0 bis Z3 ). Ohne Reparatur erhöht sich die
Anzahl der ausgefallenen Rechner
um zwei, wenn Master und Checker gleichzeitig ausfallen
p2 = p2 = 1%,
um eins, wenn entweder der Master oder der Checker
ausfällt, p1 = 18% oder
um keinen, wenn weder Master noch Checker ausfällt,
p0 = (1 − p)2 = 81%:

 



n
P (Z0 )

 P (Z1 )


 P (Z2 )

P (Z3 )
81%


 18%



 =
 1%



0
n
0%
0
81%
0
18%
81%
1%
19%
1

 


0   0 


 ·
 0 
0 

 
0
100%
0
Mit Reparatur können bis zu zwei fehlerhafte Rechner hinzukommen und max. alle zuvor fehlerhaften Rechner repariert werden.
Das wird recht kompliziert ...(Fortsetzung als Aufgabe 3.16).
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 76/142
2. Wahrscheinlichkeit
Prof. G. Kemnitz
4. Problembeseitigung
Problembeseitigung
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 77/142
2. Wahrscheinlichkeit
4. Problembeseitigung
Kontrolle und Problembeseitigung
Der Schlüssel zu objektiv verlässlichen Systemen sind Kontrollen
und eine Nachbesserungsiteration zur Beseitigung der dabei
erkannten Probleme auf drei Ebenen:
während Entwurf und Fertigung (Fehlervermeidung),
vor dem Einsatz und zur Wartung (Fehlerbeseitigung) und
im laufenden Betrieb (Fehlertoleranz, Schadensvermeidung).
Zusammenstellung überprüfbarer
Anforderungen:
für Entwurf und Fertigung
für den Test
während des Betriebs
Nachbesserung:
Veränderung am System
Änderung der Anforderung
Änderung der Nutzung
Prof. G. Kemnitz
·
für alle diese Anforderungen
Kontrolle
ja
erfüllt
Institut für Informatik, Technische Universität Clausthal
nein
Nachbessern
11. Juni 2015 78/142
2. Wahrscheinlichkeit
4. Problembeseitigung
Problembeseitigung als Markov-Kette
1 − pB
AN
pE
NE
1 − pE
pB
AN Anforderung nicht erfüllt.
NE Nicht erfüllte Anforderung erkannt.
NN Nicht erfüllte Anforderung nicht
erkannt, Problem bleibt bestehen.
AE Anforderung erfüllt. Problem beseitigt.
pE Erkennungswahrscheinlichkeit
pB Beseitigungswahrscheinlichkeit
AE
NN
Zustand der Markov-Kette nach n Kontroll- und
Beseitigungsschritten:
Prof. G. Kemnitz

pAN

 p
 NE

 pNN

pAE
·


0
 
  p
E
 
=
  1 − pE
 
0
1 − pB
0
0
pB
0
0
n 
1

 



0 
  0 
 ·



1 0 
  0 
0 1
0
0
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 79/142
2. Wahrscheinlichkeit
4. Problembeseitigung
Beispielsimulationen
Simulation der Wahrscheinlichkeiten pAE (Problem erfolgreich
beseitigt), pNN (Problem nicht (mehr) erkennbar), pAN + pNE
(unklassiziert) und pNNpAE
+pAE (wenn klassiziert, dann beseitigt)
nach jedem Doppelschritt mit pE = 99% und pB = 20%:
n pAN +pNE
2
79.2
4
62.7
6
49.7
8
39.3
10
31.2
12
24.7
14
19.5
16
15.5
18
12.3
Prof. G. Kemnitz
·
pNN
1.0
1.8
2.4
2.9
3.3
3.6
3.9
4.1
4.2
pAE
19.8
35.5
47.9
57.7
65.5
71.7
76.6
80.5
83.5
pAE
pNN +pAE
95.2
95.2
95.2
95.2
95.2
95.2
95.2
95.2
95.2
Institut für Informatik, Technische Universität Clausthal
unklassifiziert (UK)
1 − pB
AN
pE
NE
1 − pE
NN
pB
AE
Problembeseitigung beendet (PB)
UK
sonst
1 − pE + pE · pB
PB
11. Juni 2015 80/142
2. Wahrscheinlichkeit
4. Problembeseitigung
Beseitigungsaufwand und -wahrscheinlichkeit
Die Wahrscheinlichkeit, das ein erkanntes Problem nach einem
Beseitigungsversuch beseitigt oder nicht mehr zu erkennen ist,
beträgt:
pPB (1) = 1 − pE + pE · pB
Nach m Beseitigungsversuchen beträgt sie:
pPB (m) = 1 − (pE · (1 − pB ))
m
Die mittlere Anzahl der Beseitigungsversuche ist der Kehrwert
der Beseitigungswahrscheinlichkeit je Versuch:
m̄ =
1
1 − pE + pE · pB
Bei einer Erkennungswahrscheinlichkeit nahe 100% ist die
Beseitigungswahrscheinlichkeit abschätzungsweise pB ≈ 1/m̄, bei
bei 1,25 ca. 80%. und bei 5 Versuchen ca. 20%.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 81/142
2. Wahrscheinlichkeit
4. Problembeseitigung
Erfolgswahrscheinlichkeit
Die Wahrscheinlichkeit, dass das betrachtete Problem nach einer Beseitigungsiteration
nicht mehr existiert, beträgt unabhängig
von der Anzahl der Beseitigungsversuche:
pAE \pPB =
1 − pB
AN
pE
1 − pE
NN
NE
pB
AE
pE · pB
(1 − pE ) + pE · pB
Für die Verlässlichkeit ist eine
90%
95%
99%
pB pE 80%
hohe Erkennungs- und eine
20%
44,4% 64,3% 79,2% 95,2%
moderate Beseitigungswahr50%
66,7% 81,8% 90,5% 98,0%
80%
76,2% 87,8% 93,8% 98,8%
scheinlichkeit wichtig. Viele
Beseitigungsiterationen (pB 1) erhöhen allerdings das Risiko,
dass dabei neue Fehler entstehen.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 82/142
2. Wahrscheinlichkeit
Prof. G. Kemnitz
5. Aufgaben
Aufgaben
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 83/142
2. Wahrscheinlichkeit
5. Aufgaben
Aufgabe 1.8: Wahrscheinlichkeiten von
Würfelexperimenten
X und Y seien die zufälligen Augenzahlen bei der Durchführung
des Versuchs Würfeln mit zwei Würfeln. Berechnen Sie die
Wahrscheinlichkeiten folgender Ereignisse:
1
2
3
4
X +Y >8
X>Y
(X = 5) ∧ (Y < 5)
X · Y ist durch drei teilbar.
Geben Sie jeweils die Anzahl der möglichen Ereignisse an und
zählen Sie die günstigen Ereignisse auf.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 84/142
2. Wahrscheinlichkeit
5. Aufgaben
Aufgabe 1.9: Verkettete Würfelereignisse
Welche möglichen Ergebnisse hat das Zufallsexperiment
auswürfeln einer Zahl, bei einer Sechs darf ein zweites Mal
gewürfelt werden?
Mit welcher Wahrscheinlichkeit tritt jedes der möglichen
Ergebnisse ein?
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 85/142
2. Wahrscheinlichkeit
5. Aufgaben
Aufgabe 1.10: Fehlfunktionen und Fehlernachweis
Ein System habe vier unabhängig voneinander nachweisbare
Fehler mit den Nachweiswahrscheinlichkeiten je Service-Aufruf
von p1 = 10%, p2 = 20%, p3 = 5% und p4 = 1%.
1 Mit welcher Wahrscheinlichkeit versagt eine einzelne
Service-Anforderung?
2 Wie hoch ist die Wahrscheinlichkeit, dass zehn
aufeinanderfolgende Service-Anforderungen korrekt
ausgeführt werden?
3 Wie groÿ ist die Wahrscheinlichkeit für jeden der vier Fehler,
dass er bei einem der zehn aufeinanderfolgenden
Service-Aufrufe nachgewiesen wird (mindestens ein Versagen
verursacht)?
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 86/142
2. Wahrscheinlichkeit
5. Aufgaben
Aufgabe 1.11: Erstellen eines Fehlerbaums
Herr M. möchte um Mitternacht in seinem Büro einen Bericht
lesen. Er muss dazu in sein Büro, braucht Licht und eine Brille.
Ereignisse (Bi Basisereignisse ; Ni nicht untersuchte Ereignisse;
Fi Fehlerereignisse):
B1 Tür klemmt, pB1 = 0, 1%
B2 Deckenlampe defekt, pB1 = 0, 2%
B3 Tischlampe defekt, pB1 = 0, 2%
B4 Lesebrille defekt, pB1 = 0, 3%
B5 Ersatzbrille defekt, pB1 = 0, 5%
N1 Schlüssel vergessen, pN1 unbekannt
N2 Lesebrille vergessen, pN2 unbekannt
N3 Ersatzbrille im Schreibtisch eingeschlossen, pN3
unbekannt
F1 Büro verschlossen
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 87/142
2. Wahrscheinlichkeit
5. Aufgaben
F2 Büro unbeleuchtet
F3 Keine Brille
F4 Bericht ungelesen
1
2
Stellen Sie den Fehlerbaum auf.
Schätzen Sie die Wahrscheinlichkeiten der Fehlerereignisse
F1 bis F4 unter der Annahme, dass die Wahrscheinlichkeiten
der unberücksichtigten Ereignisse nicht gröÿere als 1% sind.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 88/142
2. Wahrscheinlichkeit
5. Aufgaben
Aufgabe 1.12: Fehlerbaumanalyse 2
1
Entwickeln Sie den Fehlerbaum für folgenden
Zusammenhang:
Ereignis F1 tritt ein, wenn entweder B1 und nicht B2 oder
nicht B1 und B2 eintritt.
Das Ereignis F2 tritt nur ein, wenn F1 und B3 eintreten.
2
Berechnen Sie die Wahrscheinlichkeit für F1 und F2 für den
Fall, dass die Wahrscheinlichkeiten der Basisereignisse
pB1 = 2%, pB2 = 10% und pB3 = 5% betragen.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 89/142
2. Wahrscheinlichkeit
5. Aufgaben
Aufgabe 1.13: Übertragungsfehler
Bei der Übertragung von vier möglichen Zeichen A, B, C und D
betrage die Wahrscheinlichkeit, das ein Zeichen in eines der drei
anderen verfälscht wird, je pF = 5%. Die Wahrscheinlichkeit, dass
es unverfälscht übertragen wird, ist pU = 1 − 3 · pF = 85%:
1 Stellen Sie den Zusammenhang als Markov-Kette dar.
2 Bestimmen Sie die Wahrscheinlichkeit, dass ein A nach
der 5. Übertragung immer noch ein A ist.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 90/142
2. Wahrscheinlichkeit
5. Aufgaben
Aufgabe 1.14: Risikoanalyse
Eine schwerwiege Fehlfunktion bei einer Maschine kann nur
auftreten, wenn sie vom Normalzustand Z0 nacheinander in
höhere Riskozustände Z1 bis Z4 übergeht. Das Bedienpersonal
erkennt erhöhte Risikozustände mit einer Wahrscheinlichkeit
p1 = 80% und initialisiert das System dann neu (Rückkehr in den
Grundzustand Z0 ). Die Wahrscheinlichkeit für den Übergang von
einem in den nächsten Risikozustand betrage in jedem
Zeitschritt, wenn nicht neuinitialisiert wird, p2 = 10%. In
Risikozustand Z4 tritt ohne rechtzeitige Neuinitialisierung mit
p3 = 5% die schwerwiegende Fehlersituation ein.
1 Beschreiben Sie den Sachverhalt mit einer Markov-Kette und
einer Matrixgleichung zur Simulation mit Matlab.
2 Bestimmen Sie für 100 Schritte die Zustandswahrscheinlichkeiten P (Z0 ) bis P (Z4 ) und die Wahrscheinlichkeit, dass die
schwerwiegende Fehlersituation eintritt.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 91/142
2. Wahrscheinlichkeit
5. Aufgaben
Aufgabe 1.15: Ausfall, Reparatur und Verfügbarkeit
Für eine stark ausfallgefährdete Rechnerbaugruppe, die eine hohe
Verfügbarkeit haben muss, hat der Hersteller drei
Ersatzkomponenten dazugestellt, von denen jede bei Ausfall der
aktuell genutzten Komponente die Aufgabe übernehmen kann.
Bei jeder Service-Anfrage betrage die Ausfallwahrscheinlichkeit
der genutzten Komponente pA = 10% und die der
Ersatzkomponenten null. Die defekten Ersatzpomponenten
werden während der Dauer jeder Service-Anfrage mit einer
Wahrscheinlichkeit von pR = 8% repariert. Wenn mehrere kaputt
sind, wird jede mit einer Wahrscheinlichkeit pR repariert.
1 Beschreiben Sie den Sachverhalt mit einer Markov-Kette mit
der Anzahl der defekten Komponenten als Zustandsnummer.
2 Stellen Sie die Übergangsmatrix auf.
3 Bestimmen Sie durch Simulation die Wahrscheinlichkeit,
dass der Service der Rechnerbaugruppe verfügbar ist.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 92/142
2. Wahrscheinlichkeit
5. Aufgaben
Aufgabe 1.16: Master-Checker-System mit
Reparatur
Stellen Sie für das Beispiel auf Folie 75 die Übergangsmatrix für
den Fall auf, dass nicht nur Master und Checker mit einer
Wahrscheinlichkeit von 10% ausfallen, sondern dass auch jeder
defekte Rechner mit 20% Wahrscheinlichkeit repariert wird.
1 Erweiterung um einen Zustand Z4 (4 Rechner ausgefallen).
2 Bestimmen Sie für die Zustände Z0 bis Z4 , wie viele Rechner
in Summe ausfallen und repariert werden können, und die
zugehörigen Übergangswahrscheinlichkeiten dafür.
3 Schreiben Sie ein Matlab-Programm zur Simulation dieser
Markov-Kette.
4 Bestimmen Sie die Zustandswahrscheinlichkeiten nach 100,
200 und 1000 Service-Anforderungen. Gegen welche
Wahrscheinlichkeit strebt die Wahrscheinlichkeit, dass der
Service
verfügbar, d.h. die Markov-Kette in einem der
·
Prof. G. Kemnitz
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 93/142
2. Wahrscheinlichkeit
5. Aufgaben
Aufgabe 1.17: Fehlerbeseitigungsiteration
Es seien 1000 Anforderungen zu überprüfen. Bei 20% treten
Probleme auf. Die Problembeseitigung erfordert im Mittel 3
Versuche. Wie groÿ muss die Erkennungswahrscheinlichkeit der
Kontrolle mindestens sein, damit nach der Problembeseitigungsiteration im Mittel nicht mehr als zehn Anforderung
problembehaftet sind?
Hinweis: Die gegebene mittlere Anzahl der Reparaturversuche
und der indirekt gegebene Anteil der zu beseitigenden Probleme
sind beides Funktionen der Beseitigungs- und Erkennungswahrscheinlichkeit. Die Erkennungswahrscheinlichkeit muss
überschlagsweise fast eins sein, so dass sie in einer der beiden
Gleichungen praktisch keinen Einuss hat, so dass sich
Beseitigungs- und Erkennungswahrscheinlichkeit nacheinander
über jeweils eine Gleichung bestimmen lassen.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 94/142
2. Wahrscheinlichkeit
5. Aufgaben
Aufgabe 1.18: Fehlerbeseitigungsiteration
Bei einer praktischen Fehlerbeseitigung, z.B. bei der Beseitigung
von Programmfehlern, ist es nicht untypisch, dass neu Probleme
in Form von anderen danach nicht mehr erfüllten Anforderungen
entstehen. Es sei angenommen, dass jeder Beseitigungsversuch
für jede der bis dahin erfüllten Anforderung mit einer
Wahrscheinlichkeit von 10% ein neues Problem verursacht.
1 Wie viele Probleme entstehen unter Beibehaltung aller
anderen Werte aus der Aufgabenstellung zuvor zusätzlich
durch die Problembeseitigungsversuche?
2 Auf welchen Erwartungswert erhöht sich die Anzahl der
Probleme, die nach der Beseitigungsiteration noch vorhanden
sind, ohne von den Kontrollen erkannt zu werden?
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 95/142
3. Zählexperimente
Prof. G. Kemnitz
Zählexperimente
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 96/142
3. Zählexperimente
Aspekte und Zählgröÿen der Verlässlichkeit
Verlässlichkeit beschreibt die Abwesenheit von Problemen
(Fehler, Fehlfunktionen, Ausfälle, Datenverlust, ...).
Quantitative Bewertung durch Zählen potentieller,
anwesender, vermiedener, beseitigter, ... Probleme
Nach den jeweils betrachteten Problemen wird zwischen
zahlreichen Teilaspekten der Verlässlichkeit unterschieden:
Verlässlichkeitsaspekt
relevante Zählgröÿen
Verfügbarkeit
nicht ausgeführte / ausgeführte SL
Zuverlässigkeit
korrekt / fehlerhafte ausgeführte SL
Betriebssicherheit
SL mit / ohne sicherheitskritischer FF
Entstehungsprozesse
potentielle und entstandene Fehler
...
...
(SL Service-Leistung; FF Fehlfunktion).
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 97/142
3. Zählexperimente
Prof. G. Kemnitz
1. Verfügbarkeit
Verfügbarkeit
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 98/142
3. Zählexperimente
1. Verfügbarkeit
Service als Zufallsexperiment
Die Verfügbarkeit ist die Wahrscheinlichkeit, dass ein Service ein
Ergebnis liefert.
Service als Zufallsexperiment:
Anfragen
Ergebnis
Service
(n)
K, N, F
K Ergebnis korrekt
N kein Ergebnis
Anfragenr. 1 2 3 4 5 6 7 8 9 10 . . .
Ergebnis K K K N K K F K F K . . .
F Ergebnis fehlerhaft
n Anzahl der Service-Anfragen
Fehlerbehandlung
nach jedem Versagen
Schätzer für die Verfügbarkeit:
V ≈1−
Anz (N)
n
(6)
Nach einem Versagen ist meist eine Fehlerbehandlung erforderlich
(Reparatur, Neuinitialisierung, Wiederholung, ...), während der
gleichfalls keine Service-Leistungen erbracht werden.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 99/142
3. Zählexperimente
1. Verfügbarkeit
Schätzung über MTBF und MTTR
Verfügbarkeitsprobleme sind in der Regel seltene Ereignisse mit
langer Dauer zur Wiederherstellung der Betriebsbereitschaft.
Alternative Abschätzung über:
MTBF mittlere Dauer zwischen dem Eintritt zweier
Probleme (mean time between failure).
MTTR mittlere Dauer für die Problembseitigung (mean
time to repair).
V ≈
MTBF
MTBF + MTTR
(7)
Die Verfügbarkeit hängt erheblich von der Dauer für die
Neuinitialisierung nach Abstürzen und der Reperaturzeit nach
Ausfällen ab.auch vom Umgang mit Ausfällen und Abstürzen ab.
Aussagekräftige Schätzungen nach Gl. 7 verlangen eine lange
Beobachtungsdauer.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 100/142
3. Zählexperimente
Prof. G. Kemnitz
2. Zuverlässigkeit
Zuverlässigkeit
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 101/142
3. Zählexperimente
2. Zuverlässigkeit
Zuverlässigkeit
Anfragen
Ergebnis
Service
(n)
K, N, F
K Ergebnis korrekt
N kein Ergebnis
Anfragenr. 1 2 3 4 5 6 7 8 9 10 . . .
Ergebnis K K K N K K F K F K . . .
F Ergebnis fehlerhaft
n Anzahl der Service-Anfragen
Fehlerbehandlung
nach jedem Versagen
Für die Zuverlässigkeit werden nur die erbrachten Service-Leistungen (bei denen das Systen verfügbar ist) gezählt. Schätzer:
mittlere Anzahl korrekt abgearbeiteter Service-Leitungen
zwischen zwei Fehlfunktionen:
Zn ≈
Anz (K) + Anz (F)
Anz (F)
mittlere Zeit zwischen zwei Fehlfunktionen:
Zt ≈
tB
Anz (F)
(tB Beobachtungsdauer; Anz (F) 10, siehe später Foliensatz
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 102/142
3. Zählexperimente
2. Zuverlässigkeit
Teilzuverlässigkeiten und Gesamtzuverässigkeit
Wenn nur ein Teil der Fehlfunktionen (FF) Probleme sind:
nur FFs eines bestimmten Teilsystems,
nur Eingabefehler, nur Störungen, ...,
nur durch HW, nur durch SW verursachte FFs,
nur FF, die Betriebssicherheit / die Datensicherheit / die
Zugangssicherheit gefährden:
Klassifikation
nach dem
Entstehungsort
Klassifikation
nach der
Wirkungsdauer
Fehlfunktion
CPU
einmalig
Speicher
Burst
Programm A
Prof. G. Kemnitz
···
·
Absturz
···
···
···
Institut für Informatik, Technische Universität Clausthal
···
11. Juni 2015 103/142
3. Zählexperimente
Klassifikation
nach dem
Entstehungsort
2. Zuverlässigkeit
Klassifikation
nach der
Wirkungsdauer
Fehlfunktion
CPU
einmalig
Speicher
Burst
Programm A
Absturz
···
···
···
···
···
Bei einer eindeutigen Zuordnung aller Fehlfunktionen zu einer der
PKlass Problemklassen ist die Summe aller Fehlfunktionen FF
gleich der Summe der Fehlfunktionen FFPK.i aller Klassen i:
Anz(PKlass)
Anz (FF) =
X
Anz (FFPK.i )
(8)
i=1
Bei der mittleren Anzahl korrekter Service-Leistungen bzw. Zeit
zwischen zwei FFs addieren sich die Kehrwerte:
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 104/142
3. Zählexperimente
1
=
ZN
Anz(PKlass)
X
i=1
2. Zuverlässigkeit
1
ZPKN.i
;
1
=
ZT
Anz(PKlass)
X
i=1
1
ZPKT.i
Beispiel: jede Fehlfunktionen in einem System sei entweder dem
Speicher, dem Prozessor oder der Software zugeordnet.
Geschätzte Zuverlässigkeitswerte der drei Teilsysteme:
Prozesser: ZCPU = 10000 h
Speicher: ZMem = 3000 h
Software: ZSW = 100 h.
Gesamtzuverlässigkeit:
ZT =
1
1
10000 h
+
1
3000 h
+
1
100 h
≈ 96 h
Das Gesamtsystem ist immer unzuverlässiger als das
unzuverlässigste Teilsystem.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 105/142
3. Zählexperimente
Prof. G. Kemnitz
3. Sicherheit
Sicherheit
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 106/142
3. Zählexperimente
3. Sicherheit
Sicherheit
Denition 9
Eine Sicherheit ist eine Teilzuverlässigkeit in Bezug auf
Fehlfunktionen mit erheblichem Schaden.
Schadenskategorien für Fehlfunktionen:
unerheblicher Schaden,
erheblich Nutzungsbeeinträchtigung,
für die Betriebssicherheit kritisch14 ,
für die Datenssicherheit kritisch, ...
14
Fehlfunktionen mit Personen- oder groÿem materiellen Schaden.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 107/142
3. Zählexperimente
3. Sicherheit
Betreibssicherheit, Datensicherheit
Denition 10
Die Betriebssicherheit (Safty) wird durch die mittlere Zeit oder
die mittlere Anzahl der Service-Anforderungen zwischen
betriebssicherheitskritischen Problemen charakterisiert.
Denition 11
Die Datensicherheit (security) wird durch die mittlere Zeit oder
die mittlere Anzahl der Service-Anforderungen zwischen zwei
signikannten Datenproblemen charakterisiert. Als signikannte
Datenprobleme können wahlweise Datenverlust, Datendiebstahl
oder beidesa zählen.
a
Klarer wäre die Denition von zwei Datensicherheiten.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 108/142
3. Zählexperimente
3. Sicherheit
Zuverlässigkeit und Sicherheit
Unter der Annahme, dass die sicherheitskritischen Fehlfunktionen
etwa immer denselben Anteil an allen Fehlfunktionen haben,
erhöht eine Maÿnahme zur Verbesserung der Zuverlässigkeit die
Sicherheiten etwa um denselben Faktor.
Die drei Ebenen zur Schaung von Zuverlässigkeit
Fehlervermeidung
Fehlerbeseitigung und
die Fehlerbehandlung im laufenden Betrieb
schaen in gleichem Maÿe Sicherheit.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 109/142
3. Zählexperimente
Prof. G. Kemnitz
4. Kontrolle der Kontrolle
Kontrolle der Kontrolle
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 110/142
3. Zählexperimente
4. Kontrolle der Kontrolle
Kontrolle
Eine Kontrolle ist ein Service
der Probleme erkennen soll und
eine begrenzte Zuverlässigkeit hat.
Service-Ergebnis
falsch (SF)
richtig (SR)
Kontrolle
Kontrollergebnis
falsch (KF)
richtig (KR)
(kein Ergebnis)
Ergebnis Kontroll- Kontrollergebnis aussage
FF
falsch
falsch
FR
falsch
richtig
RF
richtig
falsch
RR
richtig richtig
Kontrollfehler:
Fehlermaskierung (FR): Ohne Erkennung keine
Schadensbegrenzung oder Korrektur.
Phantomfehler (RF): Unnütze Schadensbegrenzungs- oder
Korrektormaÿnahmen. Können Fehlfunktionen verursachen.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 111/142
3. Zählexperimente
Service-Ergebnis
falsch (SF)
richtig (SR)
Kontrolle
4. Kontrolle der Kontrolle
Kontrollergebnis
falsch (KF)
richtig (KR)
(kein Ergebnis)
Ergebnis Kontroll- Kontrollergebnis aussage
FF
falsch
falsch
FR
falsch
richtig
RF
richtig
falsch
RR
richtig richtig
Experimentell schätzbare Gröÿen:
Erkennungswahrscheinlichkeit:
pE ≈
Anz (FF)
Anz (SF)
Maskierungswahrscheinlichkeit:
pM = 1 − pE ≈
Anz (FR)
Anz (SF)
Phantomfehlerwahrscheinlichkeit:
pPh ≈
Anz (RF)
Anz (SR)
Brauchbare Schätzungen verlangen viele ( 10) gezählte
Ereignisse für FF, FR, RF, ... (siehe später Foliensatz F2).
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 112/142
3. Zählexperimente
4. Kontrolle der Kontrolle
Phantomfehler
Wenn nur sehr selten wirkliche Fehler oder Gefahrensituationen
auftreten, sind die meisten diagnostizierten Fehler Phantomfehler.
Jeder im Institut für Mathematik bisher ausgelöste Feuerarlarm
war ein Fehlalarm.
Es gab und gibt in der Informatik Tendenzen, wirkliche Fehler zu
Phantomfehlern zu erklären: It is not a bug, it is a feature.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 113/142
3. Zählexperimente
Prof. G. Kemnitz
5. Kontrollen für Tests
Kontrollen für Tests
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 114/142
3. Zählexperimente
5. Kontrollen für Tests
Test
Ein Test ist eine Kontrolle auf Abwesenheit von Fehlern:
statischer Test: direkte Kontrolle der Eigenschaften
wiederhole für eine Menge direkt überprüfbarer Merkmale
Kontrolle, dass sie erfüllt sind
dynamischer Test: indirekte Kontrolle über Service-Aufrufe
Wiederhole für eine Menge von Testbeispielen
Service anfordern
Ergebnisse kontrollieren
Das Mindestergebnis ist eine gut/schlecht-Aussage. Bei der
Testaussage schlecht (nicht zu korrekten Leistungen fähig)
kann ein Test weitere Zusatzinformationen liefern, z.B. eine
Zuordnung zu potentiellen Fehlern.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 115/142
3. Zählexperimente
5. Kontrollen für Tests
Fehlerüberdeckung
Anteil der nachweisbaren Fehler
FC =
ϕErk
ϕ
(ϕErk Anzahl der nachweisbaren, ϕ Anzahl der vorhandenen
Fehler). Abschätzung mit Modellfehlermengen15 . Zählexperiment:
Wiederhole für alle Modellfehler
Wiederhole für den gesamten Testsatz
Service anfordern und Ergebnisse kontrollieren
fehlerhaft?
ja
nachweisbaren Fehler protokollieren
weiter mit dem nächsten Modellfehler
Die Modellfehler im System werden simuliert oder emuliert.
15
Von den tatsächlichen Fehler sind nur die nachweisbaren bekannt.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 116/142
3. Zählexperimente
5. Kontrollen für Tests
Reproduzierbarkeit
Testsatz (immer derselbe)
Testobjekt (immer dasselbe)
Test
Testergebnis ∈ {K, F1 , F2 , ...}
K keine Fehlverhalten
Fi Fehlverhalten i
Zur Kontrolle der Reproduzierbarkeit wird
derselbe Test mit demselben Testobjekt mehrfach wiederholt und
als Ereignisse korrekte und falsche Service-Ergebnisse gezählt.
Mögliche Diagnosen:
einmaliges Fehlverhalten ⇒ Störung,
seltenes Fehlverhalten ⇒ Schwachstelle im System, die
Störungen begünstigt.
häuges, aber unterschiedliches Fehlverhalten ⇒
unbeständiger Fehler.
immer dasselbe Fehlverhalten ⇒ beständiger Fehler.
Zählergebnisse zur Reproduzierbarkeit helfen bei der
Fehlerlokalisierung, bei der Abschätzung von Diversitäten, ...
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 117/142
3. Zählexperimente
5. Kontrollen für Tests
Fehlernachweiswahrscheinlichkeiten
Zufallstestsatz
Testobjekt
Test
Testergebnis
∈ {K, F1 , F2 , ...}
K keine Fehlverhalten
Fi Fehlverhalten i
Bei einer zufälligen Bedatung der Testeingaben oder beim Test
im laufenden Betrieb ist der Nachweis eines Fehlers Zufall.
Experimente:
Zählen der Fehlerfunktion für jeden (Modell-) Fehler i .
Abhaken der nachweisbaren Fehler.
Schätzer für Fehlernachweiswahrscheinlichkeiten:
pi ≈
1
Anz (FFF.i )
; pi ≈
n
nF.i
(Anz(FFF.i ) Anzahl der FF verursacht von Fehler i; n Anzahl
aller Test; nF.i Anzahl der Tests bis zum ersten Nachweis von
Fehler i.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 118/142
3. Zählexperimente
5. Kontrollen für Tests
Fehlernachweishäugkeit
Hj
0 1 2 3 4
j
Die Fehlernachweishäugkeit beschreibt die Auftrittshäugkeit
von Fehlern in Abhängigkeit von deren Nachweiswahrscheinlichkeit. Typische Beobachtung, für mit einer Potenzfunktion
abgestufte Wahrscheinlichkeitsintervalle
h
Ij = v −j , v −(j+1)
(j ∈ {0, 1, 2, . . .} Intervallnummer;
v Parameter für die
Intervallgröÿe, z.B. 2 für 1, 21 , 21 , 41 , ...) nimmt die Häugkeit
Hj =
Anz Fi |pi ∈Ij
Anz (Fi )
der den Intervallen zuzurechnenden Fehler mit der Intervallnummer, d.h. abnehmender Nachweiswahrscheinlichkeit ab16 .
16
vergl. Pareto-Verteilung, bei der die überwiegende Mehrheit der
Probleme durch einen kleinen Anteil von Fehlern verursacht wird.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 119/142
3. Zählexperimente
5. Kontrollen für Tests
Wiederhole für eine Vielzahl unterschiedlicher Objekte
Wiederhole mit vielen zufälligen Bedatungen
Zufallstestsatz
Zählen der FF
Test
und Zuordnung
Testobjekt
zu Fehlern
Das Experiment zur Abschätzung der Fehlernachweishäugkeit
besteht aus den Experimenten zum Schätzen der
Nachweiswahrscheinlichkeit vorhandener Fehler für eine Vielzahl
unterschiedlicher Objekte einer betrachteten Klasse von
Systemen. Jedes Einzelexperiment schätzt die
Nachweiswahrscheinlichkeiten der Fehler im getesteten Objekt
und liefert eine Menge von Wahrscheinlichkeitswerten. Jeder
Wahrscheinlichkeitswert wird seinem Wahrscheinlichkeitsbereich
j zugeordnet, in dem für diesen der Häugkeitswert um eins
erhöht wird. Abschlieÿende Division aller Häugkeitswerte durch
die Anzahl der untersuchten Objekte.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 120/142
3. Zählexperimente
5. Kontrollen für Tests
Die Fehlernachweishäugkeit dient später zur Abschätzung der
Anzahl der nicht gefundenen Fehler in Systemen und der
Häugkeit, mit der diese Fehler im Einsatz Service-Leistung
versagen lassen.
Das skizzierte Experiment ist extrem aufwändig und vermutlich
noch nie mit einer aussagekräftigen Versuchsanzahl durchgeführt
wurden. Im nächsten Foliensatz werden Abschätzungen von
Nachweiswahrscheinlichkeiten aus der Systemstruktur diskutiert,
die zeigen, dass
die meisten Fehler gut nachweisbar sind,
es aber in der Regel auch Systembestandteile mit schlecht
nachweisbaren Fehlern gibt und
Fehler, die fast nie oder erst nach einer sehr langen
Betriebsdauer erstmalig eine Fehlsfunktion verursachen,
nicht ausschlieÿbar sind.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 121/142
3. Zählexperimente
Prof. G. Kemnitz
6. Fehleranteil und Entst.-Proz.
Fehleranteil und Entst.-Proz.
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 122/142
3. Zählexperimente
6. Fehleranteil und Entst.-Proz.
Fehleranteil
Der Fehleranteil DL (Defekt Level) ist der Anteil der defekten
Systeme in einer Menge gleichartiger Systeme und ein Schätzer
für die Wahrscheinlichkeit, dass ein System defekt ist:
DL =
Anz(DS)
Anz(Sys)
(Anz(DS) Anzahl der defekten Systeme; Anz(Sys) Anzahl
aller Systeme). Richtwerte für ungtestete Systeme:
Typ
DL
NLOC
Schaltkreise
diskrete Bauteile
Lötstellen
0,01...0,03 dpu
200 dpm
10 dpm
1 dpm
(dpu Defects per Unit; dpm Defects per Million; NLOC Netto
Lines of Code, Codezeilen ohne Kommentar- und Leerzeilen).
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 123/142
3. Zählexperimente
6. Fehleranteil und Entst.-Proz.
Bestimmung des Fehleranteils durch Zählen
Für einen geringen Fehleranteil enthalten die meisten defekten
System nur einen Fehler. Die Fehlerüberdeckung ist etwa:
FC =
ϕErk
Anz(DS)
≈
ϕ
Anz(DS) + Anz(DS∗ )
{z
}
|
ca. Anzahl vorhandene Fehler
(Anz(DS) Anzahl der erkannten defekten Systeme (etwa gleich
der Anzahl der nachweisbaren Fehler), Anz(DS∗ ) Anzahl der
nicht erkennbaren defekten Systemen). Fehleranteil unter
Berücksichtigung der nicht erkannten defekten Systeme:
DL =
Anz(DS) + Anz(DS∗ )
Anz(DS)
=
>
Anz(Sys)
F C · Anz(Sys)
Anz(DS)
F C · Anz(Sys)
|
{z
}
scheinbarer Fehleranteil
Um den Kehrwert der Fehlerüberdeckung gröÿer als der
scheinbare Fehleranteil.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 124/142
3. Zählexperimente
6. Fehleranteil und Entst.-Proz.
Entstehungschritte als Service
Entwurfs- oder
Fertigungsauftrag
ZPSi−1
ZP Zwischenprodukt
K korrekt
Service-Leistung
Entwurfsschritt
Fertigungsschritt
ZPSi
K, N, F
N kein Ergebnis (oder erkennbar defekt)
F nicht erkennbar defekt
Jeder Fertigungs- oder Entwurfsschritt kann das
Zwischenprodukt
korrekt belassen,
einen erkennbaren Defekt oder
einen nicht erkannbaren Defekt
einbauen. Als defekt erkannte Objekte werden aussortiert oder
repariert. Reparaturen sind als Rückgrie (Wiederholungen von
Enstehungsschritten) modellierbar.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 125/142
3. Zählexperimente
6. Fehleranteil und Entst.-Proz.
Entstehungsprozess als Markov-Kette
Beschreibung der Wahrscheinlichkeit in einem 2D-Zustandraum:
Dimension 1: abgeschlossener Entstehungsschritt
Dimension 2: K (korrekt), F (nicht erkennbarer Defekt), N
(erkennbarer Defekt).
Bspiel: 3 Entstehungsschritte, Aussortieren erkennbarer Defekte
0.K
p1.K
p1.K
p1.N
1.K
pe.K
p2.F
2.K
p3.K
3.K
p3.F
3.F
1.F
2.F
p2.K + p2.F
p3.K + p3.F
p2.N
p3.N
Produkt aussortiert
Endzustände
pi.K Wahrscheinlichkeit, dass in Schritt i kein Fehler entsteht
pi.F Wahrsch., dass in Schritt i ein nicht erkannter Fehler entsteht
pi.N Wahrscheinlich., dass in Schritt i ein erkannter Fehler entsteht
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 126/142
3. Zählexperimente
0.K
p1.K
p1.K
p1.N
1.K
6. Fehleranteil und Entst.-Proz.
pe.K
2.K
p2.F
p3.K
3.K
p3.F
3.F
1.F
2.F
p2.K + p2.F
p3.K + p3.F
p2.N
p3.N
Produkt aussortiert
Endzustände
pi.K Wahrscheinlichkeit, dass in Schritt i kein Fehler entsteht
pi.F Wahrsch., dass in Schritt i ein nicht erkannter Fehler entsteht
pi.N Wahrscheinlich., dass in Schritt i ein erkannter Fehler entsteht
Bestimmung der Wahrscheinlichkeiten, dass ein korrektes,
defektes oder kein Produkt entsteht durch Simulation:
Startwert P(0K)=100% und für die anderen Zustände null.
(mindestens) 3 Simulationschritte.
Für sehr klein pi.N ist die Wahrsscheinlichkeit, dass ein korrektes
Produkt entsteht gleich dem Fehleranteil:
Prof. G. Kemnitz
DL3 ≈ P (3.K) =
·
3
Y
i=1
pi.K
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 127/142
3. Zählexperimente
6. Fehleranteil und Entst.-Proz.
System aus Teilsystemen
Das bisherige Modell gilt für den sequentiellen Durchlauf von
Entstehungsschritten eines Einzelobjekts ohne Hirarchie.
Beim Zusammenfügen einen Systems aus Teilsystemen erbt das
Gesamtsystem die Fehler aller Teilsysteme. Fehleranteil eines
zusammengesetztes Systems:

DLZus > pK · 1 −
Anz(Komp)
Y
i=1

(1 − DLKomp.i )
(pK Wahrscheinlichkeit fehlerfreier Zusammenbau; DLKomp.i Fehleranteil Komponente i; Anz(Komp) Anzahl der
Komponenten.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 128/142
3. Zählexperimente
6. Fehleranteil und Entst.-Proz.
Fehleranteil einer Baugruppe
Eine Baugruppe soll aus nachfolgenden Komponenten mit
gegebenen Fehleranteilen bestehen:
Typ
Anzahl
DLBT
Leiterplatte
Schaltkreise
diskrete Bauteile
Lötstellen
1
20
35
560
10 dpm
200 dpm
10 dpm
1 dpm
Welcher Fehleranteil ist für die Baugruppe zu erwarten, wenn die
bei der Baugruppenfertigung zusätzlich entstehenden Fehler
zahlenmäÿig vernachlässigbar sind oder alle beseitigt werden:
DLSys
=
≈
≈
Prof. G. Kemnitz
·
20
35
560
1 − 1 − 10−5 · 1 − 2 · 10−4
· 1 − 10−5
· 1 − 10−6
10−5 + 20 · 2 · 10−4 + 35 · 10−5 + 560 · 10−6
5000 dpm = 0,005 dpu
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 129/142
3. Zählexperimente
6. Fehleranteil und Entst.-Proz.
Experiment aus [1]
Eine Gruppe von 72 Studenten hatte die Aufgabe, aus der
Beschreibung eines PLAs17 eine Gatterschaltung zu entwickeln
und diese über die grasche Benutzeroberäche eines
CAD-Systems in den Rechner einzugeben. Für jeden Entwurf
wurden u.a. die elementaren Entwurfsoperationen18 und die
Entwurfsfehler gezählt.
Die Fehlerentstehungswahrscheinlichkeit je Entwurfsoperation ist der Kehrwert der in der Abb. dargestellten
Entwurfsoperationen je Fehler und
lag im Experiment bei 0,005 bis 0,1
Entwurfsfehler pro Entwurfsschritt.
8
4
0
0
200 400 600
Entwurfsoperationen
je Fehler
PLA: programmable logic array
Als elementare Entwurfsoperationen galten das Anordnen eines Gatters
auf dem Bildschirm und das Zeichnen einer Verbindung.
17
18
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 130/142
3. Zählexperimente
Prof. G. Kemnitz
7. Reifeprozesse
Reifeprozesse
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 131/142
3. Zählexperimente
7. Reifeprozesse
Reifeprozesse
Groÿe Systeme enthalten auch im Einsatz noch ein groÿe Anzahl
von Fehlern. Bei Software und rekongurierbarer Hardware reift
in der Einsatzphase:
Für jede Service-Anforderung
Ergebniskontrolle
Bei beobachtbarer Fehlfunktion
Change Request durch den Anwender
Fehlersuche und Beseitigung durch den Hersteller
Herausgabe fehlerärmerer Versionen
Reifeprozesse sind an der Abnahme der Häugkeit von
Fehlfunktionen beobachtbar.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 132/142
3. Zählexperimente
7. Reifeprozesse
Abnahme der durch Software-Fehler verursachten Treiberabstürze
(FFS) im Verhältnis zu denen durch Hardware verursachten
(FFH) für Windows [2, Fig.15].
Prof. G. Kemnitz
0
·
Anz(FFS) /Anz(FFH)
1
2
3
2004
2005
2006
Application Driver
2004
2005
2006
CD-Burning
2004
2005
2006
Display
2004
2005
2006
Multimedia
2004
2005
2006
Networking
2004
2005
2006
Printing
2004
2005
2006
Storage
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 133/142
3. Zählexperimente
Prof. G. Kemnitz
8. Aufgaben
Aufgaben
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 134/142
3. Zählexperimente
8. Aufgaben
Aufgabe 1.19: Service-Versagen und Kontrolle 1
In einem System, in dem auf die Ereignisse keine
Service-Leistung oder kein Kontrollergebnis solange mit einer
wiederholten Service- oder Kontrollanforderung reagiert wird,
seien die Wahrscheinlichkeiten für Kontrollergebnis richtig:
pKR = 95% und die beiden korrekten Klassikationen pFF = 90%
und pRR = 97% bekannt. Wie groÿ sind die Wahrscheinlichkeiten
1 pSF dass ein Service-Ergebnis korrekt ist,
2 pRF dass richtige Service-Ergebnis als falsch klassiziert und
3 pFR dass falsche Service-Ergebnis als richtig klassiziert
werden?
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 135/142
3. Zählexperimente
8. Aufgaben
Aufgabe 1.20: Service-Versagen und Kontrolle 2
Ein Service und seine Kontrolle seien mit 100%-iger
Wahrscheinlichkeit verfügbar. Wie groÿ ist die
Wahrscheinlichkeit, dass der Service fehlerhaft ausgeführt wird,
wenn 99% der Kontrollen keinen Fehler erkennen und die
Kontrollerkennungswahrscheinlichkeit 80% beträgt und keine
Phantomfehler auftreten?
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 136/142
3. Zählexperimente
8. Aufgaben
Aufgabe 1.21: Schätzen des Fehleranteils
In einem Experiment zur Abschätzung des Fehleranteils wurden
31 Objekte als fehlerhaft und 712.981 Objekte als fehlerfrei
klassiziert. Für den Testsatz sei anzunehmen, dass er mindesten
80% der Fehler nachweisen kann. Schätzen Sie ab, in welchem
Bereich der Fehleranteil liegt.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 137/142
3. Zählexperimente
8. Aufgaben
Aufgabe 1.22: Fehleranteil eines Rechners
Ein Rechner besteht aus Leiterplatten, Schaltkreisen, diskreten
Bauteilen (Widerstände, Kondensatoren, . . .) und Lötstellen. Die
nachfolgende Tabelle zeigt für einen Beispielrechner für alle
eingesetzten Bauteiltypen deren Anzahl und deren zu
erwartenden Fehleranteil DLBT .
Typ
Anzahl
E (DLBT )
Leiterplatten
Schaltkreise
diskrete Bauteile
Lötstellen
10
100
200
10000
10 dpm
200 dpm
10 dpm
1 dpm
Was für einen Fehleranteil hat ein solcher Rechner, wenn alle
anderen Arten von Fehlern anzahlmäÿig vernachlässigt werden
können?
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 138/142
3. Zählexperimente
8. Aufgaben
Aufgabe 1.23: Fehlerentstehung 1
Wie viele Fehler sind in einem groÿen Software-System mit
105 Programmzeilen zu erwarten, wenn beim Entwurf 3%
der Programmzeilen falsch sind und der Test 60% der Fehler
erkennt?
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 139/142
3. Zählexperimente
8. Aufgaben
Aufgabe 1.24: Fehlerentstehung 2
Durch eine Störung in einem Fertigungsprozess verdoppelt
sich die Anzahl der fehlerhaft gefertigten Bauteile. Wie wirkt
sich das auf die Häugkeit der Fehlfunktionen eines Systems
aus, bei dem dieser Bauteiltyp bisher 10% der
Fehlfunktionen verursacht hat?
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 140/142
3. Zählexperimente
8. Aufgaben
Aufgabe 1.25: Chipgröÿe, Fehleranteil und
Herstellungskosten
Der Fehleranteil der Transistoren eines Fertigungsprozesses für
integrierte Schaltkreise sei bekannt und betrage:
DLTr ≈ 10−6
Andere Fehlerarten seien zu vernachlässigen. Wie hoch ist der
Fehleranteil für Chips mit
1
2
3
105
106 und
107 Transistoren.
Schätzen Sie die Herstellungskosten der Halbleiter-Chips ab unter
der Annahme, dass ein Chip mit 106 Transistoren 1$ beträgt, die
Kosten sich proportional zur Chipäche verhalten und die Kosten
für die auszusortierenden defekten Schaltkreise zu denen der
fehlerfrei gefertigten hinzugefügt werden müssen.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 141/142
4. Literatur
Prof. G. Kemnitz
Literatur
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 142/142
4. Literatur
[1] J. E. Aas and I. Sundsbo.
Harnessing the human factor for design quality.
IEEE Circuits and Devices Magazine, 11(3):2428, 1995.
[2] K. Glerum.
Debugging in the (Very) Large: Ten Years of Implementation
and Experince.
In SOSP, pages 1114, 2009.
[3] J. Hartmann.
Analyse und Verbesserung der probabilistischen Testbarkeit
kombinatorischer Schaltungen.
PhD thesis, Diss. Unversität des Saarlandes, 1992.
Prof. G. Kemnitz
·
Institut für Informatik, Technische Universität Clausthal
11. Juni 2015 142/142
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement