Download Skript - Informationstechnik

Transcript
Andere typische logische Fehler, wie nicht terminierende Schleifen bzw. allgemein
ungewollter, d.h. falscher Programmablauf, können prinzipiell nicht im Übersetzer
entdeckt werden, da sie stets auch in der Absicht des Programmierers liegen
können.
Logische Fehler werden im allgemeinen erst durch ihr Symptom erkannt,
nämlich durch die Nichteinhaltung der Spezifikation.
Logische und funktionale Fehler treten häufig in Kombination auf, wobei erst eine
Analyse die tatsächliche Ursache zeigen kann. Es gibt mehrere Test- und
Überprüfungsmethoden, um logische und funktionale Fehler zu entdecken.
8.3 Programmvalidierung
Validierung heißt:
Die Korrektheit des Programms / Moduls plausibel bzw.
einsichtig machen!
Dazu gibt es diverse manuelle und automatische Methoden, die im folgenden
vorgestellt werden.
8.3.1 Schreibtischtest
Eine Testperson überprüft am Schreibtisch ein Programm: am Shreibtisch bedeutet
ohne Rechner, d.h. die Überprüfung erfolgt an Hand des Listings mit Papier und
Bleistift. Der Ablauf ist folgendermaßen:
• Testdaten für die Eingabe auswählen:
- Testdaten sollen nicht zu kompliziert sein.
- Testdatensatz aus Entwurfsphase kann verwendet werden.
• Programmablauf anhand des Listings schrittweise durchspielen:
- Testperson übernimmt Aufgabe eines Interpreters.
- Aktuelle Variablenbelegungen werden mitgeschrieben.
- Gleichzeitig wird das Verhalten bei leichter Variation der Eingabe-Daten
im Auge behalten, z.B. Grenzfälle bei Verzweigungen.
!
Es gibt psychologische Probleme, wenn ein Autor seine eigenen Programme
testet:
- Die Methode ist langwierig und mühevoll.
- Sie erfordert hohe Konzentration und ist selbst sehr fehleranfällig.
- Oft werden Variablen vergessen und später nachgetragen.
- Sie spiegelt oft nur die eigene Meinung über die Korrektheit des
Programmes wieder.
8-4