German / Deutsch

Analyse-Werkzeug
f?
NATURAL, COBOL und JCL
Version 4
![]()
|
|
Die L?ung f? NATURAL, COBOL und JCL bei |
| Es ist allgemein anerkannt, da?die Software-Produktion nach
vorgegebenen Qualit?sstandards erfolgen mu? um die Wartbarkeit der Anwendungen zu
gew?rleisten. Das Problem aber ist, die Einhaltung der Standards zu ?erwachen und Qualit?s-Probleme ohne gro?n Aufwand zu erkennen und zu beheben. Mit Qualizer steht jetzt ein Werkzeug zur Verf?ung, das Sie bei der Analyse Ihrer Anwendungen ma?eblich unterst?zt. Qualizer analysiert Ihren Quellcode und weist Abweichungen von vorgegebenen Qualit?skriterien sowohl tabellarisch als auch grafisch aus. Gerade die Visualisierung der Ergebnisse erlaubt die schnelle Erkennung von Qualit?sproblemen. |

Abbildung 1: Das Qualizer Anwendungsfenster
Durch vollst?dige Analyse des Quellcodes und grafische
Aufbereitung von Programm-Strukturen und Abl?fen wird durch Qualizer das Re-Engineering
vereinfacht. Interaktiv kann aus der grafischen Darstellung mittels Mausklick der
zugeh?ige Quellcode angezeigt werden.
Qualizer analysiert f? Sie neben
|
|
NATURAL-Sourcen auch |
|
|
COBOL und |
|
|
Job Control. |
Dadurch sind auch im Batch-Bereich vollst?dige Analysen m?lich und Zusammenh?ge zwischen Jobs und 3GL-Routinen darstellbar.
Eine weitere wesentliche Hilfestellung bietet Qualizer im Bereich des Software-Tests. Qualizer stellt alle Testpfade ausf?rlich dar und erleichtert damit auch die Testfallermittlung ganz erheblich. Selbstverst?dlich 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?nen aber auch zur Weiterverwendung in Dokumenten oder dergleichen exportiert werden. Umfangreiche Vorg?ge k?nen auch als Stapel verarbeitet werden.
Qualizer besteht aus mehreren Arbeitsbereichen, die je nach Aufgabenstellung alle erforderlichen Funktionen zusammenfassen.
Qualizer/Audit kann als Auditor f? NATURAL, COBOL und JCL eingesetzt werden. Qualizer/Audit fa? wesentliche Qualit?smerkmale zusammen und weist Unter- und ?erschreitungen frei w?lbarer Qualit?sma?t?e aus. Als einige Beispiele seien hier nur die
|
|
Verwendung von FIND SORTED, |
|
|
Unbenutzte Variablen oder |
|
|
Nicht ausgef?rter Code |
genannt.
Neben der reinen Z?lfunktion wer-den alle Informationen im Detail dar-gestellt (z.B. Liste der unbenutzten Variablen) und durch Auswahl eines Ergebnisses bzw. einer Anomalie die zugeh?ige 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? referenzierte NATURAL Maps, die Ermittlung der zyklomatischen Komplexit? nach McCabe, die grafische Darstellung von Call-Graphen, Struktogrammen und Anwendungsgutachten.

Abbildung 2: Das Anwendungs-Gutachten
Die Ergebnisse k?nen sowohl auf Anwendungs- als auch auf Routinen-Ebene dargestellt bzw. zusammengefa? 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?dige Analyse des Codes gewonnen.

Abbildung 3: Das Kiviat-Diagramm
Qualizer/Info stellt alle wichtigen Qualit?s-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?rn
(Abbildung 3).
Weiter wird die gesamte Aufrufstruktur grafisch aufbereitet. Dabei kann zwischen der Darstellung verschiedener Aufrufarten und Auswertungstiefen gew?lt 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 Kontrollflu?raph repr?entiert 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? den Test und die Wartung von NATURAL-Objekten entwickelt. Qualizer/Test erm?licht den Vergleich von Source-Codes (Versionen) und analysiert die Testpfade. Dabei werden sowohl die zu testenden Bedingungen als auch die zugeh?igen Werte aufgezeigt. Wiederum kann direkt das zugeh?ige Statement im Source-Code positioniert werden.
Qualizer erm?licht Ihnen, die Sourcen aus folgenden Quellen zu extrahieren bzw. zu benutzen und ggf. auch wieder zur?k zu ?ertragen (2-Wege):
|
|
SYSTRANS-Datenbestand |
|
|
NATUNLD-Datenbestand |
|
|
NATURAL-Lightstorm FUSER |
|
|
jede beliebige PC-Datei mit einer Source |
Eine zus?zliche NATURAL-Lizenz ist nicht erforderlich! Quellcodes k?nen somit problemlos vom Host auf PC und zur?k ?ertragen werden (lediglich 1 Filetransfer f? die komplette Anwendung).
Qualizer erm?licht 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 Grafik-format 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?lichkeit 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?zeitigen Erkennung von Syntaxproblemen (ohne da?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? 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?t 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? der Module
Anwendungsgutachten
Masken-Abbildung
Liste der internen Subroutinen und ihrer Komplexit?en
Liste der verwendeten Datenbereiche und Masken
Nutzung von Files und Views
Automatische Extraktion von Programm- bzw. Funktionsbeschreibungen aus den Programmk?fen
Versionsvergleich zwischen Sourcen
Programm-Listing
"Source Object Summary Pages" (1 Seite f? jedes NATURAL2 Objekt)
"Application Summary Page" (1 Dokument f? die gesamte Anwendung)
Sowohl Aufbau als auch Inhalt der Dokumente k?nen interaktiv an die entsprechenden Bed?fnisse angepa? werden.
Kiviat-Diagramm
Call-Graph (Aufrufstruktur)
Strukturdiagramm
Kontrollflu?raph
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? nach Thomas McCabe;
Zyklomatische Komplexit? der Hauptroutine;
Halstead level of abstraction;
Halstead bug prediction (Anzahl vorhergesagte Programmfehler);
Maximale Verschachtelungstiefe in strukturierten Statements;
Backfired function points (f? 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?enden Inhalt);
Anzahl Netto-Kommentarzeilen (mit erl?terndem 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?selw?ter, 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? jedes Kriterium k?nen 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 ?er die Anzahl der ge?derten, hinzugef?ten und entfernten Zeilen und ?ersichtliche Gegen?erstellung der ?derungen;
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?ung von mindestens 800x600 Pixel bei 256 Farben und Farb-Bildschirm;
Maus oder anderes kompatibles Zeigeger?.
Es ist kaum m?lich, den gro?n Funktionsumfang von Qualizer in diesem Rahmen ausf?rlich darzustellen. Wir bieten daher ein umfangreicheres Dokument "Einf?rung in Qualizer" sowie kostenlose und unverbindliche Test-Installationen an (zeitlich limitierte Benutzung). Letztlich ist die Testinstallation die beste M?lichkeit, den vielf?tigen Funktionsumfang und die interaktive Benutzeroberfl?he 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