Lfd 5 a Betriebliche Qualitätssicherung systematisch feststellen, beseitigen und dokumentieren

In diesem Bereich des des Ausbildungsrahmenplan muss der oder die Auszubildende lernen wie systematische Qualitätsmängel erkannt, behoben und dokumentiert werden.
Folgende Lerninhalte sind in diesem Feld vorhanden:

  • Qualitätsstandards und -richtlinien kennen: Es gibt ein haufen an Standard und richtlinien. Alle muss man nicht kennen. Viele Softwarefirmen sind z.B. ISO 9001 zertifiziert. Es wird festgelegt wie Unternehmen ihre Prozesse dokumentieren und kontinuirlich verbessern sollen.
    Um bei dem Beispiel der ISO 9001 zu bleiben ist dort festgelegt wie der Entwicklungsprozess von der Anforderungsanalyse bis zur Abnahme Dokumentiert wird. Dies wird gemacht, damit die Entwicklung transparent und Nachvollziehbar ist.
  • Fehlerquellen analysieren: Systematisch wird hier gelernt Schwachstellen in IT Systemen, Prozessen oder Software zu erkennen und diese zu bewerten. Dazu sind verschiedene Schritte nötig:
    • Fehlerarten Identifizieren: Es muss unterschieden werden zwischen
      • bedienfehlern
      • Softwarefehler
      • Hardwaredefekten
    • Ursachenanalyse durchführen: Mithilfe verschiedenster Methoden wird gelernt den Fehler auf dem Grund zu gehen. Einige Methoden sind:
      • 5-Why-Methode: Eigentlich eine Einfache Methode 5 mal fragt man sich selber Warum. Ein Beispiel dazu ist weiter unten unter 5-Why-Methode zu finden.
      • Ishikawa-Diagramm: Ursache-Wirkungs-Diagramm oder auch Fischgrätendiagramm genannt.
        Das Ishikawa-Diagramm – auch bekannt als Fischgrätendiagramm oder Ursache-Wirkungs-Diagramm – dient der strukturierten Analyse möglicher Fehlerursachen. Ein Beispiel dazu ist weiter unten unter Beispiel Ishikawa-Diagramm zu finden.
  • Tests und Prüfverfahren anwenden: Zunächst werden verschiedenste Testarten kennengelernt (wie z.B. Unit-Integrations-,Systemtest) sowie verschiedene Testmethoden (Z.B. Blackbox, Whitebox,etc.). Hier sollten Auszubildene mittels praktischer Übung selbst ein Programm erstellen und für dieses Programm Testfälle erstellen. Dafür eignen sich Unit Tests sehr gut. Je nach Anwendung wird hier gelernt wie Testdaten ausgewählt oder Testprotokolle erstellt werden. Dieser Punkt fördert das Qualitätsbewussten. (Siehe weiter unten das Beispiel Tests und Prüfverfahren).
  • Maßnahmen zur Fehlerbehebung umsetzen: Tritt ein Fehler während eines Tests auf, sollte dieser natürlich behoben werden. Dazu muss folgendes erfolgen:
    • Lösungsstrategien entwickeln: Es wird gelernt aus Fehlerursachen konkrete Maßnahmen abzuleiten. Beispiel den Code korrigieren (anhand des Beispielen Fehler „Division durch 0“ eine automatische Prüfung das als Divisor der Benutzer ein Hinweis erhält das 0 als Divisor nicht erlaubt ist.
    • Fehlerbehebung dokumentieren: Jede Behebung nachvollziehbar in einem Fehlerprotokoll festhalten.
    • Wirksamkeit prüfen: Durch erneute Tests prüfen ob der Fehler tatsächlich behoben ist und sich durch die Behebung nicht neue Fehler eingeschlichen haben.
    • Kommunikation im Team: Der / die Auszubindende natürlich lernen Fehler und Lösungen im Team zu kommunizieren.
    • Prävention ableiten: Es ist noch kein Meister vom Himmel gefallen. Hier ist tatsächlich der Satz „Lerne aus deinem Fehlern“ Programm. Durch die Lösung und ordentlichen Dokumentation (einschweißen der Lösung) können diese oder ähnliche Fehler präventiv für die Zukunft ausgeschlossen werden.
  • Dokumentation und Nachverfolgung: Hier geht es darum Fehler nachvollziehbar, strukturier und auch dauerhaft verfügbar zu Dokumentieren. Bei der Dokumentation ist folgendes zu beachten:
    • Vollständigkeit der Dokumentation: Alle Informationen müssen enthalten sein, z.B. die Fehlerbeschreibung, die Ursache, die Lösung des Problemes und alle Testergebnisse.
    • Nachvollziehbarkeit: Die Kollegen oder nachvolgende Programmierer müssen die Dokumentation verstehen können.
    • Struktur: Das Dokument sollte Strukturiert sein. Also Einheitliche Formate verwenden
    • Korrekte Sprache: Fachlich präzise in verständlicher Form.
    • Versionierung: Änderungen an der Dokumentation sollten Versioniert werden um so die Dokumente Nachvollziehbar zu gestalten. Einige Firmen verwenden zur Qualitätskontrolle sowie implementierung neuer Programmteile und Fehlerbehebung Tools wie Jira (externer Link).

Beispiele zur Fehlerquellenanalyse

Bei den Beispielen der Ursachenanalyse wird der Fehler „Division durch 0“ als Fallbeispiel für die unterschiedlichen Methoden verwendet.

5-Why-Methode

Das folgende Beispiel der 5-Why-Methode veranschaulicht die herangehensweise bei den Fehler „Division durch 0“:

  • Warum wird durch 0 geteilt?
    → Weil der Divisor zur Laufzeit den Wert 0 hat.
  • Warum hat der Divisor zur Laufzeit den Wert 0?
    → Weil er aus einer Benutzereingabe oder Berechnung stammt, die 0 ergibt.
  • Warum wurde die Eingabe oder Berechnung nicht überprüft?
    → Weil im Code keine Validierung auf den Wert 0 vor der Division erfolgt.
  • Warum fehlt die Validierung?
    → Weil sie im ursprünglichen Entwicklungsprozess nicht berücksichtigt oder getestet wurde.

Beispiel Ishikawa-Diagramm

Das folgende Diagramm veranschaulicht typische Ursachen für diesen Fehler und zeigt auf, wie er sich vermeiden lässt. Das Ishikawa-Diagramm (auch als Fischgrätendiagramm oder Ursache-Wirkung-Diagramm bekannt) hilft bei der Ursachenanalye.
Als Beispiel verwende ich ein Programmfehler „Division durch 0“ (ich denke kennt fast jeder der mit dem Programmieren anfängt).
Das folgende Diagramm zeigt ein Beispiel des Ishikawa-Diagramm zeigt Ursachen zu dem Fehler „Division durch 0“ und wie diese verhindert werden können.

Ishikawa oder auch Fischgräten Diagramm. Der Fehler wäre der Fischkopf und die Gräten die möglichen Fehlerursachen
Ishikawa Diagramm zu dem Fehler „Division durch 0“ (z.B. 1/0) Quelle MS Copilot

FMEA (Fehlermöglichkeits- und einflussanalyse)

Die klassische Struktur der FMEA besitz 3 Kernbewertungen. Auftretenwahrscheinlichkeit (A), Bedeutung (B) sowie Entdeckungswahrscheinlichkeit(E).
Dabei werden die Kernbewertungen auf einer Skala von 1 (niedrig) bis 10(hoch) bewertet.

ProzessschrittFehlermöglichkeitFehlerursacheFehlerfolgeABERisikoprioritätszahlMaßnahme
Berechnung durchführenDivision durch 0Keine Prüfung des DivisorsProgrammabsturz / Ausnahmefehler684192Validierung de Divisors vor berechnung
Benutzereingabe verarbeitenEingabe von 0 als DivisorFehlende eingabeprüfungProgrammabsturz / ausnahmefehler575175Eingabefeld prüfen
Code Review durchführenFehler wird übersehenKein Fokus auf Mathematische AusdrückeFehler gelangt in Programm366108Checkliste für Mathematische operationen nutzen

Beispiel Tests und Prüfverfahren

Test für Division durch 0

Testfall-IDDatumTesterEingabeErwartetes ErgebnisTatsächliches ErgebnisErgebnis
Test00116.06.2021Gernardt42 / 0Fehlermeldung „Division durch 0 nicht erlaubt“Fehlermeldung „Division durch 0 nicht erlaubt“Bestanden

Durch diesen Test soll vermieden werden, dass das Programm abstürzt oder eine unbehandelte Ausnahme auswirft. Mit dem Beispiel Protokoll wird der Testfall festgehalten.

1 Kommentar zu „Lfd 5 a Betriebliche Qualitätssicherung systematisch feststellen, beseitigen und dokumentieren“

  1. Pingback: Lfd 5 b Ursachen Qualitätsmängel systematisch feststellen, beseitigen und dokumentieren - gernardt.net

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen