Timm Grams: Denkfallen und Programmierfehler

Springer Compass, Berlin, Heidelberg 1990

Timm Grams: Grundlagen des Qualitäts- und Risikomanagements - Zuverlässigkeit, Sicherheit, Bedienbarkeit

Vieweg Praxiswissen, Braunschweig, Wiesbaden 2001

Auszüge aus "Grundlagen des Risiko- und Qualitätsmanagements - Zuverlässigkeit, Sicherheit, Bedienbarkeit"

> > > Neu: Übungsaufgaben zum Buch


Ein neuer Diaprojektor muss her. Der alte hat ausgedient, weil es inzwischen ein neues System von Diarähmchen gibt. Die Dias sind nun schön platzsparend, werden aber vom alten Gerät nicht mehr verkraftet.

Zuhause wird ausgepackt und gleich ausprobiert. Auf dem Bedienungsteil gibt es einen Knopf mit zwei Pfeilen. Der ist für den Diawechsel. Drückt man auf den Pfeil nach vorne, kommt das nächste Dia. Drückt man auf den Pfeil nach hinten, geht es nicht etwa zurück, sondern es geschieht dasselbe wie vorher. Daraufhin wird der Laden aufgesucht und eine Beschwerde vorgebracht. Der Verkäufer lächelt nachsichtig: "Nächstes Dia: kurz drücken. Zurück zum vorhergehenden: länger drücken". Beschämt zieht man von dannen.

Eine Weile tut das Gerät seinen Dienst. Als erstes - und zwar schon nach nur wenigen Diavorführungen - entledigt sich der Multifunktionsknopf eines Teils seiner Funktionen: Ab nun geht es nur noch vorwärts. Im Laufe der Jahre geht hin und wieder eine Birne kaputt. Das ist nicht weiter schlimm. Da man damit rechnen muss, ist stets eine Ersatzbirne im Haus. Nach ein paar Diaabenden bricht die Einstellschraube eines Fußes ab. Ab jetzt müssen Atlanten oder Kochbücher zum Justieren des Apparats herhalten. Bald darauf geht auch noch einer der Diaschieber kaputt. Die Optik zeigt auch bereits Eintrübungen. Das Gerät ist Schrott...


Inhalt
Einleitung
Grundbegriffe
Wahrscheinlichkeitsrechnung und Statistik
Zuverlässigkeit einfacher Systeme
Qualitätskontrolle und Zuverlässigkeitsschätzung
Diagnostizierbarkeit und Fehlertoleranz
Sicherheitstechnik

Fehlerbaumanalyse
Ereignisbaumanalyse
Zuverlässigkeit komplexer Systeme
Wartung und Reparatur: Verfügbarkeit
Zuverlässigkeitswachstumsmodelle
Risiko
Bedienfehler und Bedienbarkeit
Konstruieren nach dem Fehlerintoleranz-Prinzip


Das Zusammenspiel von Mensch, Maschine und Umwelt führt immer wieder zu unerwünschten Resultaten. Das kann daran liegen, dass die Maschine

  • schlecht gebaut worden ist,
  • nicht auf Dauer das tut, was sie tun soll,
  • nicht richtig bedient wird,
  • böswillig missbraucht wird,
  • Wirkungen entfaltet, die nicht vorhergesehen worden sind.

Unkorrekte Systeme erkennen wir daran, dass sie zuweilen versagen. Ein System versagt genau dann, wenn zu einem technischen Fehler eine fehleroffenbarende Beanspruchung hinzukommt. Ausgangspunkt der Zuverlässigkeitsmodellierung ist die Zuverlässigkeitsfunktion Z(t) des betrachteten Systems. Sie ist gleich der Wahrscheinlichkeit, dass im Zeitintervall von 0 bis t das System nicht versagt.

In der Theorie der Hardware-Zuverlässigkeit geht man davon aus, dass sich jeder Ausfall sofort offenbart. Damit tritt der Ausfall an die Stelle des Versagens. Die Zuverlässigkeitsfunktion wird zur zeitabhängigen Überlebenswahrscheinlichkeit.


Es ist eine Ursachenanalyse für das unerwünschte Ereignis "Überhitzung des Heizkessels" (boiler overheating) durchzuführen ... Das zu analysierende unerwünschte Ereignis ist das Top-Ereignis des Fehlerbaums.

Zur Überhitzung des Heizkessels kann es kommen, wenn der Durchfluss durch den Heizkessel zu gering ist (low flow), und wenn gleichzeitig der Regler für die Gaszufuhr versagt und diese offen lässt (regulator failure)... Der Reglerausfall wird als Basisereignis angesehen. Basisereignisse sind Ereignisse, über die man bereits genaue Kenntnisse und vor allem statistische Daten hat, und für die man nicht nach noch tiefer liegenden Ursachen suchen muss.

Anders ist das beim zu niedrigen Durchfluss. Hier sind die möglichen Ursachen noch zu ermitteln. Zum niedrigen Durchfluss kommt es, wenn die Pumpe 1 ausfällt, oder wenn die Durchströmung des Heizkessels aufgrund von Vorbeileitungen (bypass) um Pumpe oder Heizkessel herum zu gering wird, oder wenn Leitungen blockiert sind. Damit ist die nächste Ebene des Fehlerbaums geklärt.

Diese Ursachen sind - abgesehen vom Pumpenausfall - erneut weiter aufzuhellen. Schließlich erhält man den vollen Fehlerbaum, an dessen Blättern nur Basisereignisse stehen.


Der Ausfallprozess besteht dann aus einer abwechselnden Folge von Zeiten, in denen das System ausgefallen ist und solchen, in denen das System intakt ist. Diese Zeiten sind zufällig. Die Länge eines Intervalles, in dem das System intakt ist, nennen wir auch Ausfallabstand.

Wir führen für den mittleren Ausfallabstand die Kennzahl MTBF (Mean Time Between Failures) ein...

Der Mittelwert der Reparaturdauern heißt MTTR (Mean Time To Repair). Die Wahrscheinlichkeit dafür, rein zufällig auf ein intaktes System zu treffen, heißt mittlere Verfügbarkeit A. Zwischen den Größen bestehen folgende einfach einzusehende Zusammenhänge: A = MTBF/(MTBF+MTTR)...


Die Bedienoberfläche sollte Signale geben, so dass ein adäquates mentales Modell des Artefakts induziert und die korrekten Bedienhandlungen angeregt werden. Ein gutes Beispiel ist "die klassische Tür": Aufgesetztes Türblatt und Anbringung der Klinke sagen, was zu tun ist. Die "moderne Tür" hingegen verheimlicht ihre Funktion. Das schlechte Design kommt deswegen meist mit einer Bedienungsanleitung daher. Es wird eigens draufgeschrieben, ob man ziehen oder drücken muss. Solche Erläuterungen stellen kommunikative Umwege dar; sie widersprechen dem Prinzip der Direktheit der Manipulation und Kommunikation.


Das Lernen aus den Fehlern, den Lernzyklus, können wir perfektionieren und durch externes Wissen in Form von schriftlich fixierten Regeln ergänzen, wie beispielsweise beim Regelkreis des selbstkontrollierten Programmierens. Zentrale Elemente dieses Regelkreises sind

  • ein Katalog von Programmierregeln und
  • die Technik der Fehleranalyse (Analyse der Fehlerursachen).

Die Programmierregeln notiert man sich am besten in einer eigenen Datei. Diese schreibt man im Laufe des Lernprozesses fort.


© Timm Grams, 29. November 2001