This Document is available in German only.

![]()
|
|
Die Lösung für NATURAL, COBOL
und JCL bei |
|
Es ist allgemein anerkannt, dass die Software-Produktion nach vorgegebenen Qualitätsstandards erfolgen muss, um die Wartbarkeit der Anwendungen zu gewährleisten. Das Problem aber ist, die Einhaltung der Standards zu überwachen und Qualitäts-Probleme ohne großen Aufwand zu erkennen und zu beheben. Mit Qualizer steht jetzt ein Werkzeug zur Verfügung, das Sie bei der Analyse Ihrer Anwendungen maßgeblich unterstützt. Qualizer analysiert Ihren Quellcode und weist Abweichungen von vorgegebenen Qualitätskriterien sowohl tabellarisch als auch grafisch aus. Gerade die Visualisierung der Ergebnisse erlaubt die schnelle Erkennung von Qualitätsproblemen. |

Abbildung 1: Das Qualizer Anwendungsfenster
Durch vollständige Analyse des Quellcodes und
grafische Aufbereitung von Programm-Strukturen und Abläufen wird
durch Qualizer das Re-Engineering vereinfacht. Interaktiv kann aus
der grafischen Darstellung mittels Mausklick der zugehörige
Quellcode angezeigt werden.
Qualizer analysiert für Sie neben
|
|
NATURAL-Sourcen auch |
|
|
COBOL und |
|
|
Job Control. |
Dadurch sind auch im Batch-Bereich vollständige Analysen möglich und Zusammenhänge zwischen Jobs und 3GL-Routinen darstellbar.
Eine weitere wesentliche Hilfestellung bietet Qualizer im Bereich des Software-Tests. Qualizer stellt alle Testpfade ausführlich dar und erleichtert damit auch die Testfallermittlung ganz erheblich. Selbstverständlich wird bei Auswahl eines ermittelten Testfalls (per Maus-Klick) automatisch der Source-Code im Source-Fenster auf die korrespondierende Zeile positioniert und angezeigt.
Alle Ergebnisse werden sofort am Bildschirm dargestellt. Die Bildschirmdarstellungen können aber auch zur Weiterverwendung in Dokumenten oder dergleichen exportiert werden. Umfangreiche Vorgänge können auch als Stapel verarbeitet werden.
Qualizer besteht aus mehreren Arbeitsbereichen, die je nach Aufgabenstellung alle erforderlichen Funktionen zusammenfassen.
Qualizer/Audit kann als Auditor für NATURAL, COBOL und JCL eingesetzt werden. Qualizer/Audit fasst wesentliche Qualitätsmerkmale zusammen und weist Unter- und Überschreitungen frei wählbarer Qualitätsmaßstäbe aus. Als einige Beispiele seien hier nur die
|
|
Verwendung von FIND SORTED, |
|
|
Unbenutzte Variablen oder |
|
|
Nicht ausgeführter Code |
genannt.
Neben der reinen Zählfunktion wer-den alle Informationen im Detail dar-gestellt (z.B. Liste der unbenutzten Variablen) und durch Auswahl eines Ergebnisses bzw. einer Anomalie die zugehörige Programmzeile direkt angezeigt.
Dieser Arbeitsbereich dokumentiert die Merkmale eines Programms und noch vieles mehr. So erfolgt neben der Erstellung der reinen Programm-Listings auch die Aufbereitung des Maskenabbildes für referenzierte NATURAL Maps, die Ermittlung der zyklomatischen Komplexität nach McCabe, die grafische Darstellung von Call-Graphen, Struktogrammen und Anwendungsgutachten.

Abbildung 2: Das Anwendungs-Gutachten
Die Ergebnisse können sowohl auf Anwendungs- als auch auf Routinen-Ebene dargestellt bzw. zusammengefasst werden. Es wird auch ermittelt, von welchen Routinen die analysierte Routine aufgerufen wird. Diese Analysen sind nicht auf Informationen aus PREDICT oder anderen Tools angewiesen, sondern werden durch eigenständige Analyse des Codes gewonnen.

Abbildung 3: Das Kiviat-Diagramm
Qualizer/Info stellt alle wichtigen
Qualitäts-Kennzahlen bereit und gibt sie sowohl tabellarisch als
auch grafisch in einem Kiviat-Diagramm aus.
Gerade diese grafische Darstellung erlaubt die schnelle Erfassung
von Ausreißern (Abbildung 3).
Weiter wird die gesamte Aufrufstruktur grafisch aufbereitet. Dabei kann zwischen der Darstellung verschiedener Aufrufarten und Auswertungstiefen gewählt werden. Die Struktur kann durch Mausklick erweitert oder reduziert werden.
Mittels des Struktur-Diagramms (Abbildung 4) kann leicht eine Bewertung der internen Strukturierung einer Routine vorgenommen werden.

Abbildung 4: Das Struktur-Diagramm
Unterschiedliche Codekonstrukte werden durch unterschiedliche Symbole und Farben kenntlich gemacht.
Der Kontrollflussgraph repräsentiert den Programm-Ablaufplan auf grafische Weise. Durch Mausklick auf einzelne Knoten kann wiederum die korrespondierende Source-Zeile direkt angezeigt werden.
Der Arbeitsbereich Qualizer/Test wurde speziell für den Test und die Wartung von NATURAL-Objekten entwickelt. Qualizer/Test ermöglicht den Vergleich von Source-Codes (Versionen) und analysiert die Testpfade. Dabei werden sowohl die zu testenden Bedingungen als auch die zugehörigen Werte aufgezeigt. Wiederum kann direkt das zugehörige Statement im Source-Code positioniert werden.
Qualizer ermöglicht Ihnen, die Sourcen aus folgenden Quellen zu extrahieren bzw. zu benutzen und ggf. auch wieder zurück zu übertragen (2-Wege):
|
|
SYSTRANS-Datenbestand |
|
|
NATUNLD-Datenbestand |
|
|
NATURAL-Lightstorm FUSER |
|
|
jede beliebige PC-Datei mit einer Source |
Eine zusätzliche NATURAL-Lizenz ist nicht erforderlich! Quellcodes können somit problemlos vom Host auf PC und zurück übertragen werden (lediglich 1 Filetransfer für die komplette Anwendung).
Qualizer ermöglicht Ihnen, die Ergebnisse auf Bildschirm auszugeben und in folgenden Dateiformaten abzuspeichern:
| TXT | - reiner Text |
| RTF | - Text mit Formatierungen zum Import in Textverarbeitungsprogramme (z.B. MS Office) |
| HTML | - Text mit Formatierungen zur Anzeige mit Web-Browsern |
| WMF | - vektororientiertes Grafikformat zum Import in praktisch alle Windows-Anwendungen |
|
|
Qualizer/Rem (Year 2000 Remedy) |
|
|
Qualizer/Compare (Compare, stand-alone) |
|
|
Qualizer/Clean (restrukturiert bzw. erzeugt externe Data Areas) |
|
|
Qualizer/HTMLgen zur Ausgabe von Analyse-Ergebnissen im HTML-Format und der Möglichkeit zur Bereitstellung im Intranet |
|
|
Qualizer/Stack zur Analyse von Aufrufen via Stack und/oder LOGON |
|
|
Umstellungshilfe NATURAL 2.2 nach NATURAL 2.3 zur frühzeitigen Erkennung von Syntaxproblemen (ohne dass NATURAL 2.3 installiert ist) |
Mehr als 1 NATURAL-Statement in einer einzelnen Zeile;
Verweis auf eine Zeilennummer (statt auf ein Label);
FIND-Statement mit der SORTED-Klausel;
Eine interne Subroutine ist zwar definiert, wird aber nicht verwendet;
Eine Variable ist zwar definiert, wird aber nicht verwendet;
Eine Variable entspricht nicht den vordefinierten Standards für die Benennung;
In einem DECIDE-Statement werden drei oder weniger WHEN-/ VALUE-Klauseln verwendet;
NONE-Klausel in einem DECIDE-Statement fehlt;
Verschachtelungstiefe (z.B. eines IF) ist größer als 7;
Ein logischer Ausdruck enthält mehr als 4 AND- und OR-Operatoren;
Eine externe Subroutine oder ein Subprogram wird mittels FETCH verlassen;
Nicht-strukturierter ESCAPE;
Der Name einer externen Subroutine entspricht nicht dem Namen des Objekts.

Abbildung 5: Der Kontrollfluß-Graph
Struktogramme
Call-Graph interner Subroutinen
Zyklomatische Komplexität der Module
Anwendungsgutachten
Masken-Abbildung
Liste der internen Subroutinen und ihrer Komplexitäten
Liste der verwendeten Datenbereiche und Masken
Nutzung von Files und Views
Automatische Extraktion von Programm- bzw. Funktionsbeschreibungen aus den Programmköpfen
Versionsvergleich zwischen Sourcen
Programm-Listing
"Source Object Summary Pages" (1 Seite für jedes NATURAL2 Objekt)
"Application Summary Page" (1 Dokument für die gesamte Anwendung)
Sowohl Aufbau als auch Inhalt der Dokumente können interaktiv an die entsprechenden Bedürfnisse angepasst werden.
Kiviat-Diagramm
Call-Graph (Aufrufstruktur)
Strukturdiagramm
Kontrollflussgraph
Anwendungsgutachten
Benutzte Files/Views mit Feldern auf Objektebene
Relationen Files und NATURAL-Objekte
Verwendete Variablen auf Objektebene
In der Source definierte Konstanten
Zusammenfassung Files auf Anwendungsebene
Zusammenfassung Variablen auf Anwendungsebene
Zusammenfassung Konstanten auf Anwendungs- / Objektebene
Zusammenfassung Felder auf Anwendungs- / Objektebene
Zusammenfassung Kommentare auf Anwendungsebene
Versionsvergleich
Zyklomatische Komplexität nach Thomas McCabe;
Zyklomatische Komplexität der Hauptroutine;
Halstead level of abstraction;
Halstead bug prediction (Anzahl vorhergesagte Programmfehler);
Maximale Verschachtelungstiefe in strukturierten Statements;
Backfired function points (für Programs, Subprograms und Subroutines);
Halstead length;
Anzahl Lines of code (insgesamt, mit Kommentar);
Anzahl Zeilen mit Code gefolgt von Kommentar;
Anzahl triviale Kommentarzeilen (nur zur Code-Separierung verwendet, ohne erklärenden Inhalt);
Anzahl Netto-Kommentarzeilen (mit erläuterndem Inhalt);
Anzahl interne Subroutinen;
Anzahl Maps;
Maps in USING-Klauseln;
Anzahl Objekte von denen gerufen wird;
Anzahl Objekte die gerufen werden;
Anzahl Instruktionen (NATURAL 2 Statements);
Anzahl Tokens (Schlüsselwörter, Variablennamen, Labels, Operatoren, Delimiter, Konstanten, Attribute, Kommentare);
Auto-Dokumentation in %;
Anzahl benutzte Dateien;
Anzahl benutzte Felder;
Anzahl definierte Lokal-Variablen;
Anzahl benutzte Lokal-Variablen;
Anzahl unbenutzte Lokal-Variablen;
Anzahl definierte Global-Variablen;
Anzahl benutzte Global-Variablen;
Anzahl unbenutzte Global-Variablen.
Für jedes Kriterium können folgende Parameter frei definiert werden:
der Toleranzbereich (von/bis)
Anzeige auf Anwendungs- und/oder Objektebene
Aufnahme in Kiviat-Diagramm ja/nein
und vieles mehr.
Vergleich von Sourcen (neue/alte Version) mit Angabe über die Anzahl der geänderten, hinzugefügten und entfernten Zeilen und übersichtliche Gegenüberstellung der Änderungen;
Analyse der Testpfade mit
Auflistung von zu testenden Bedingungen bzw.
Werten (Variableninhalten)
IBM PC oder 100% kompatibel mit Windows 98, Windows NT 4.0, Windows 2000 oder Windows XP;
Grafikkarte mit einer Auflösung von mindestens 800x600 Pixel bei 256 Farben und Farb-Bildschirm;
Maus oder anderes kompatibles Zeigegerät.
Es ist kaum möglich, den großen Funktionsumfang von Qualizer in diesem Rahmen ausführlich darzustellen. Wir bieten daher ein umfangreicheres Dokument "Einführung in Qualizer" sowie kostenlose und unverbindliche Test-Installationen an (zeitlich limitierte Benutzung). Letztlich ist die Testinstallation die beste Möglichkeit, den vielfältigen Funktionsumfang und die interaktive Benutzeroberfläche auf der Basis einer bekannten Anwendung kennenzulernen. Sprechen Sie mit uns.
ATLANTIS
Information Technology GmbH
Birkenweg 2
73117 Wangen
Germany
Telefon: +49 (71 61) 50 60 0 - 0
Telefax: +49 (71 61) 50 60 0 - 55
E-mail: qualizer@atlantis.de
Document number: QLZRWIN-PI400-0104-D