| Checkliste: Code-Review-COBOL | Projekt: | |
| Prüfobjekt: | Prüfer: | Prüfdatum: |
| Allgemeines | |||
| Entsprechen alle Namen den gültigen Konventionen? | |||
| Sind die Programmierrichtlinien eingehalten? | |||
| Sind die Layout-Konventionen eingehalten? | |||
| Hat das Programm/Modul nur einen Eingang (Entry) und einen Ausgang (EXIT)? | |||
| Entspricht das Modul der fachlichen Spezifikation? | |||
| Sind wiederverwendbare Module ausgelagert? | |||
| Datenreferenzen | |||
| Werden alle Felder explizit definiert? | |||
| Werden alle Variablen richtig initialisiert? | |||
| Werden alle Tabellen richtig initialisiert? | |||
| Liegen alle Indexwerte innerhalb der Tabellengrenzen? | |||
| Sind Indizes ganzzahlig definiert? | |||
| Sind alle Redefinitionen von Datenstrukturen korrekt? | |||
| Sind Zuweisungen bzgl. der Zielvariablen sinnvoll? | |||
| Berechnungen und Vergleiche | |||
| Werden Berechnungen nur mit numerischen Feldern ausgeführt? | |||
| Sind bei Berechnungen mit unterschiedlichen Datentypen die Konvertierungen richtig? | |||
| Kann kein Devisor den Wert 0 erreichen? | |||
| Wird Division durch 0 abgefangen? | |||
| Kann es keine Über- oder Unterläufe geben? | |||
| Kann es keine Rundungsfehler geben? | |||
| Sind alle Ausdrücke und Formeln (Reihenfolge der Operatoren) richtig? | |||
| Haben beim Vergleich alle Operanden den gleichen Datentyp bzw. sind die Konvertierungsregeln korrekt? | |||
| Sind boolsche Ausdrücke korrekt? | |||
| Steuerung | |||
| Kommt jede Schleife zu einem Ende? | |||
| Werden Schleifenzähler richtig initialisiert? | |||
| Werden Schleifenzähler nicht zu groß? | |||
| Sind alle Schleifen kopfgesteuert? | |||
| Wird jede Schleife beendet? | |||
| Gibt es keine "toten" Bedingungszweige (ELSE- und OTHERWISE-Zweige ausprogrammiert)? | |||
| Werden GOTO's nur für Sprünge an ein Section-Ende benutzt? | |||
| Wird das Modul korrekt beendet? | |||
| Schnittstellen | |||
| Sind Anzahl und Reihenfolge von Übergabeparametern korrekt? | |||
| Werden keine Literale und keine Konstanten als Parameter übergeben? | |||
| Stimmen Parameter und Argumente in Typ und Länge überein? | |||
| Sind globale Variable notwendig und über alle Module konsistent? | |||
| Werden Eingabeparameter nicht verändert? | |||
| Ein-/Ausgabe | |||
| Stimmen E/A-Bereiche mit den Satzlängen überein? | |||
| Werden Dateiendebedingungen erkannt und richtig behandelt? | |||
| Werden alle Dateien rechtzeitig und korrekt eröffnet? | |||
| Werden alle relevanten Eingabedaten auf Gültigkeit geprüft? | |||
| Werden alle Dateien geschlossen? | |||
| Fehlerbehandlung | |||
| Wird für jedes Feld eine falsche Eingabe erkannt und richtig behandelt? | |||
| Werden alle DB-Fehler richtig erkannt und behandelt? | |||
| Werden alle System-Fehler richtig erkannt und behandelt? | |||
| Werden Commit-Points richtig gesetzt? | |||
| Sind Fehler- und Hinweistexte korrekt und sinnvoll? | |||
Zum Seitenanfang | |||
| Fenster drucken | |||
Möchten Sie profesionell Checklisten verwalten und Reviews organisieren? Testen Sie Q-Chess, das webbasierte Quality-Checklist Support System mit einem Gastzugang oder sehen Sie unter www.q-chess.de nach! © 2002, G. Muth Partners GmbH, Borsigstrasse 32, 65205 Wiesbaden-Nordenstadt eMail: info@q-chess.de |