CT-Codeview & Analyzer …

 In Zukunft wird die Analyse und Recherche im ABAP®-Sourcecode leichter, einfacher, effektiver …
==> Aufwendiges Suchen, Ermitteln und Dokumentieren – das war gestern … 

Die Programmiersprache ABAP® ist besonders gut geignet für Visualisierungen, weil  durch Verwendung bekannter Sprachelemente ein hoher Modularisierungsgrad mit spezifischer Ausprägung im Sourcecode erreicht wird (z.B. FORM, FUNCTION, METHOD, CLASS, DYNPRO, MODULE, CALL SCREEN, IF, LOOP, CASE, WHILE, DO, TABLE,  usw.).

Die grafische Darstellung von ABAP®-Programmen führt zu einem transparenten Überblick des Codings und unterstützt dadurch wesentlich den Arbeitsablauf in folgenden IT-Bereichen:

  • Qualitätskontrolle,
  • Produktionsübergabe,
  • Programmdokumentation,
  • Prozessdokumentation,
  • EDV-Revision,
  • Wartung, Maintenance
  • 2nd Level Support,
  • Training, Ausbildung

Der Einsatz zertifizierter Software =  Applikationssicherheit für Ihr Unternehmen…

Basis für die substantielle Analyse und Dokumentation von ABAP-Coding ist das Wissen über die systemtechnischen Zusammenhänge z.B. im Repository, Data-Dictionary, Programm-/Klassenbibliothek sowie der Basisprogramme und der System-Schnittstellen. Das langjährige Know-how unseres Entwicklungsteams (mehr als 30 Jahre) ist die Voraussetzung für die Realisierung unserer CT-Produkte.

Die Applikationssicherheit in Ihrem Unternehmen wird unterstützt durch die Zertifizierung des CT-AddOn vom Hersteller der ERP-Software. Damit wird  die ordnungsgemäße Verwendung von Schnittstellen, die ablaufrelevanten AddOn-Funktionen  und die einwandfreie systemtechnische Implementierung bestätigt.

Sie erhalten  ein AddOn-Produkt mit geprüfter Systemintegration innerhalb einer ERP-Umgebung. Zertifizierte Softwareprodukte erhöhen signifikant Ihre IT-Sicherheit.

Zertifizierte Software ist zunehmend als Anforderung  innerhalb der unternehmensweiten Compliance-Regeln enthalten,  darüber hinaus vereinfacht sie turnusmäßige Systemprüfungen von externen oder internen Audit-Instanzen z.B. WP,  Betriebsprüfung, Interne Revision.

Die SAP SE hat den CT-Codeview & Analyzer zertifiziert am 29.03.2011 [mehr…]

Anwendungsbereiche für den CT-Codeview & Analyzer

1. Die Visualisierung von ABAP®-Programmcode …
1.1 Source-Diagramm …
1.2 Flow-Logic-Diagramm …
1.3 ER-Diagramm …
1.4 UML-Diagramm …
2. Prozess-Dokumentation von ABAP-Programmen …
3. Analyseergebnisse in einer formulargesteuerten Prozess-Dokumentation sichern …
4. Diagramm-Übersicht …
5. Einige weitere Features des CT-Codeview & Analyzer …
6. SAP®-Integration …
7. SAP-Zertifizierung …
8. Softwarevoraussetzungen …
9. Hardwarevoraussetzungen …


1. Die Visualisierung von ABAP®-Programmcode

Umfangreicher Sourcecode ist naturgemäß auf den ersten Blick schwer zu durchschauen …
 … die grafische Darstellung eines ABAP®-Programms … sagt mehr als 1000 Worte … 

Durch die spezifische Ausprägung der ABAP Programme in abgrenzbare Coding-Bereiche, kann durch grafische Aufbereitung des Source Codings eine effiziente Analyse erfolgen und das Verständnis für fremdes ABAP Coding signifikant unterstützt werden.

Die Vorteile der maschinellen Visualisierung von ABAP-Coding sind offensichtlich:
  • durch die maschinelle Analyse, das Routing der Programm-Objekte und Visualisierung der Graph-Elemente, erhalten Sie sofort den jeweils kompletten aktuellen Stand als Programmübersicht,
  • nach jeder Programmänderung (Maintenance, Modifikation, Entwicklung, …) können Sie sich in der transparenten Zusammenfassung schnell informieren,
  • die gesamte Visualisierung eines ABAP-Programms können Sie nach Ihren Anforderungen zur besseren Übersicht qualifiziert aufbereiten  ( z.B. Tree = Stückliste, Symetrisch = große Diagramme, Hierachie = links/rechts,  Pyramide = Top/Down),
  • die für Sie aktuell nicht relevanten Strukturen sind temporär komprimierbar, damit wird die Komplexität verringert,
  • große umfangreiche Programmteile lagern Sie zur Vereinfachung in Sub-Graphen aus, dort können Sie leichter analysiert werden,
  • bereits während der Entwicklung eines ABAP-Programmes ist eine  mehrmalige Code-Visualisierung zu beliebigen Zeitpunkten aufschlussreich.
  • der ständige grafische Überblick führt zu einem besseren Verständniss der Programmlogik, des Programmaufbaus und der Beziehungen der Programmelemnte untereinander. Temporäre ABAP-Syntaxfehler werden bei der Generierung  ignoriert.
  • durch komfortable Druckfunktionen können Sie auch größere Diagramme in hoher Auflösung auf mehreren Seiten (z.B. als Präsentation) zusammenhängend darstellen.

Screenshot: Das Beispiel zeigt eine ABAP-Programmlogik mit 2 Prozess-Pfaden …

Visualisierung von ABAP®-Programmcode …

1.1 Source-Diagramm

Die Programmobjekte eines ABAP™ Programms werden zunächst analysiert und anschließend durch verschiedene Algorithmen geroutet. Danach erfolgt die visuelle Darstellung der Graph-Elemente. Die Analyse, das Routing und die visuelle Darstellung werden relativ schnell prozessiert, weil das ausführende Coding in C++ realisiert ist.

Das Source-Diagramm wird generiert aus CALL-Hierarchien (z.B. FORM, FUNCTION, METHOD …) und Programmzeitpunkten (z.B. TOP-OF-PAGE, MODULE, AT …) des namentlich ausgewählten ABAP-Programmes. Für die Analyse von z.B. externen Programmaufrufen können Sie je nach Bedarf weitere Source-Diagramme jederzeit in gesonderten Karteikarten generieren.

Durch Doppelklick können Sie bidirektional (wechselweise) zwischen der Grafik und dem Sourcecode an die jeweilige konkrete Position navigieren und sich dort über den betreffenden Kontext informieren.

ABAP-Source-Diagramm – 1

ABAP-Source-Diagramm – 1

ABAP-Source-Diagramm - 2

ABAP-Source-Diagramm – 2


1.2 Flow-Logic-Diagramm

Für die grafische Darstellung von Entscheidungs- und Bearbeitungsstrukturen z.B. IF, CASE, WHILE, LOOP innerhalb von ABAP® Sourcen steht die Flow-Logic Analyse zur Verfügung. Diese Flow-Grafik zeigt mit grafischen Mitteln, unter welchen Bedingungen welche Befehle prozessiert werden.

Das Ergebnis einer Befehlssequenz ist in der graphischen Darstellung besser erkennbar, die Programmlogik ist schneller zu erfassen. Die Einarbeitungszeiten in fremde ABAP® Programme werden reduziert (z.B. externe Programmerstellung – kundeneigene Maintenance, Urlaubsvertretung, IT-Qualitätssicherung, …).

Durch Doppelklick können Sie bidirektional zwischen der Grafik und dem Source Code navigieren und den jeweiligen Kontext erfassen.

ABAP Flow-Logic Diagramm

ABAP Flow-Logic Diagramm

1.3 ER-Diagramm

Für die grafische Darstellung von Primär-Datenbanktabellen sowie der Beziehung zu anderen Datenbanktabellen steht im CT-Assist das ER-Diagramm (Entity-Relationship-Modell) zur Verfügung.
Die jeweilige einstellbare Auflösungsstufe (Detailtiefe) der Tabellenbeziehungen ist hilfreich für die leichtere Erfassung der Zusammenhänge.

Die grundlegende Transparenz der Tabellenbeziehungen ist Voraussetzung für die meisten Entwicklungsarbeiten (Neuprogrammierung und Maintenance) im Umfeld der SAP® Technologie…

Durch Doppelklick können Sie in den Struktur-Browser und von hier in das DDIC navigieren.

Screenshot: ER-Diagramm (Auszug)

1.4.UML-Diagramm

Von der jeweils angegebenen aktuellen Klasse werden abhängige weitere Klassen ermittelt und als UML-Klassendiagramm dargestellt.

Die einzelnen ABAP-OO-Klassen werden dabei in der UML-Notation als Kästen dargestellt (mit Klassennamen, Methoden und Attributten). ABAP-OO-Interfaces werden ebenfalls als Kästchen dargestellt, sie sind an der IF – Namenskennung zu erkennen.

Durch Doppelklick können Sie direkt zu dem betreffenen Source Code navigieren. Der in der Grafik jeweils ausgewählte Source Code der Klasse wird als zusammenhängendes Coding angezeigt, damt Sie sich über den Kontext der angrenzenden Bereiche informieren können.

Screenshot: UML-Diagramm [Klassen] – Auszug


2. Prozess-Dokumentation von ABAP-Programmen …

Der Nutzen einer  Prozessdokumentation eines ABAP-Programms wird häufig unterschätzt.

In der betrieblichen IT-Praxis zeigt sich, dass nicht wenige ABAP-Programme mehrmals von verschiedenen Entwicklern/Beratern analysiert und ausgewertet werden (Maintenance, Fehleranalyse, Performance-Optimierungen, …). Die jeweiligen Analyseergebnisse sollten zum frühesten Zeitpunkt in geeigneter Weise innerhalb einer Prozess-Beschreibung dokumentiert werden, damit Doppelarbeiten vermieden werden.

Fazit:
Durch die Prozess-Dokumentation erfolgt die Umsetzung vom temporären Erfahrungswissen in konkrete dauerhafte Informations-Objekte.

 ==> Die Prozessdokumentation kann als Basiswissen später auch von Anderen genutzt werden und führt zu einer erheblichen Zeitersparnis. 

Beispiel: Markieren einer Prozesskette (Formulargenerierung = Ziffer 3 …)

Mit der Menüfunktion ‘Prozesskette markieren’ kennzeichnen Sie die zusammenhängenden Arbeitsschritte im ABAP-Diagramm und …

3. Analyseergebnisse in einer formulargesteuerten Prozess-Dokumentation sichern …

Einige Vorteile der  formulargesteuerten Prozess-Dokumentation:

  • die durch den CT-Codeview  formulargesteuerte Prozess-Dokumentation sorgt dafür, das die Analyseergebnisse in einer normierten Darstellung erfasst werden,
  • der Prozessablauf  im ABAP Source-Diagramm wird vom IT-Analytiker durch entsprechende Markierungen der einzelnen konkreten Programm-Objekte (z.B. FORM, METHOD, FUNCTION CALL, …) festgelegt,
  • aus dieser Prozesskette wird das Dokumentationsformular generiert, die zu dokumentierenden Prozess-Elemente erzeugt und die Doku-Objekte vorgegeben,
  • die vollständige Dokumentation einer Prozesskette mit den beteiligten Objekten wird damit weitgehend sichergestellt.

Fazit:
Das methodische Vorgehen bei der Analyse  und Dokumentation von Prozessketten verringert den Entwicklungs- und Maintenanceaufwand,
 … jede weitere Programmanalyse zu einem späteren Zeitpunkt kann bereits von der vorhandenen Prozess-Dokumentation profitieren. 

Beispiel:  Formulargenerierung (durch markierte Prozesskette)

… durch das PopUp ‘Prozess-Docu’ generieren Sie das Prozess-Formular. Hier sind bereits die Namen der markierten Prozess-Elemente zur weiteren Dokumentation komplett vorgegebenen.

4. Diagramm-Übersicht …

Bereits bei mittlerer Komplexität eines ABAP-Programms können mehr als 300 bis 500
Programm-Objekte
(z.B. DYNPRO, TABLE, FORM, FUNCTION, METHOD,  MODULE, …) beteiligt sein.

Neben dem Hauptdiagramm steht Ihnen ein Übersichtsfenster als freies PopUp zur Verfügung.  Hier können Sie, wie mit einer Lupe, die gesamte Programm-Visualisierung  in beliebiger Richtung
frei bewegen.

 … sich besser im Source-Diagramm zurecht finden und die Programmlogik schneller erfassen. 

ABAP-Source Diagramm mit Navigationsfenster

Die Visualisierung von ABAP Coding ist gerade zur Unterstützung von folgenden IT-Aufgaben sinnvoll:
  • Maintenance
  • Kundeneigene ABAP Entwicklungen,
  • Reengineering,
  • Urlaubsvertretung, Arbeitsplatz-Wechsel,
  • schnelle Fehlerklärung,
  • zur besseren Unterstützung von Teamarbeit


5. Einige weitere Features des CT-Codeview & Analyzer

    • Visualisierung von abgeschlossenen ABAP-Modularisierungseinheiten in Graph-Elemente (Programm, Transaktion, Funktionsbaustein, Funktionsgruppe, Klasse).
    • Graphische Darstellung von mehr als 20 unterschiedlichen Visualisierungsobjekten (FORM, PERFORM, CALL FUNCTION, CALL METHOD, DYNPRO, MODULE, TABLE, CALL SCREEN, AT, TOP-OF-PAGE, END-OF-PAGE, INITIALIZATION, GET …)
    • Geroutete Abbildung der statischen Beziehungen von Visualisierungsobjekten (z.B. ‘wer wurde von wem wie oft gerufen ..’)
    • Interaktive, wechselseitige Zuordnung von Graph-Elementen zum jeweiligen Sourcecode (durch Doppelklick erfolgt die Navigation von einem Visualisierungsobjekt zum aktuellen Coding und umgekehrt)
    • Segmentierung von umfangreichen, komplexen Programmen (z.B. mehr als 1000 Visualisierungsobjekten …) durch ‘Hide-and-New-Subgraph’
    • Mehr als 30 Visualisierungs-Templates zeigen Ihnen in verschiedenen graphischen Ausprägungen den jeweiligen ABAP®-Sourcecode.
    • Hide von markierten Elementen (Ausblenden von Objekten)
    • Mehrere Layouts zur Darstellung unterschiedlicher Elemente (Baumstruktur, hierarisches Layout, symetrische Darstellung, Kreis-Layout)
    • Objekt-Tree im gesonderten Window mit Doppelklickfunktion
    • Export der graphischen Darstellung in das Enhanced Meta Format (emf) (zu Dokumentationszwecken oder weiteren Bearbeitung in Microsoft® Word®)
    • Graph Übersichtswindow, Zoom der Gesamtdarstellung, Suchfunktionen, Steuerung der Visualisierungsobjekte, Parametereinstellung zur Darstellung der Objekte, weitere …

6. SAP®-Integration

Die Kommunikation zwischen dem ‘CT-Codeview & Analyzer’ und dem Applikationsserver wird ausschließlich durch zertifizierte Standardschnittstellen der Firma SAP SE, Walldorf, realisiert. Der CT-Codeview & Analyzer ist für folgende SAP®-Systeme geeignet: R/3® von Release 3.x bis einschließlich 4.7 (Enterprise), mySAP™ ERP, mySAP™ CRM, SAP® BW, sowie alle weiteren Komponenten, die auf SAP® Netweaver® (bis 7.1) Systemen basieren.

Das Add-On zeichnet sich durch eine zeitgemäße, ergonomische Oberfläche und effektive Arbeitsunterstützung aus. Die Installation dauert nur ca. 5 Minuten.

SAP Integration

7. SAP-Zertifizierung

Zertifikat: CT-Codeview&Analyzer

Die Softwarelösung CT-Codeview&Analyzer wurde von der SAP SE zertifiziert:

Certified Functions:

  • Generate diagrams for ABAP programs, Classes, Function Modules
  • Generate flowcharts for ABAP Code
  • Generate UML diagrams for ABAP Classes
  • Generate relationship diagram between different ABAP objects
  • Documentation of diagram elements
  • View ABAP Code
  • SAP Solution Manager Ready


8. Softwarevoraussetzungen

  • Betriebssystem, Front-End PC: Windows® NT 4.0 / 2000 / XP® / Vista® / Windows® 7
  • SAP®-System, Applikationsserver: SAP® R/3® 3.x bis 4.7 (R/3® Enterprise), mySAP™ ERP, SAP Netweaver™ 6.10 bis 7.10, SAP® APO, SAP® BW, mySAP™ CRM, sowie alle weiteren Komponenten, die auf SAP Netweaver™ Systemen basieren.
  • Aktivierter Profilparameter ‘sapgui/user_scripting’ unter Berücksichtigung des jeweiligen Release und den erforderlichen Supportpackages (siehe SAP® Service Marketplace: SAP note 480149).
  • Im SAP® GUI Scripting Security Guide (Release 6.20/6.40) ist die korrekte Installation der Schnittstelle beschrieben. Zusätzlich wird auch über allgemeine Sicherheitsaspekte informiert (z.B. Ziffer 7 ‘Security Q&A’).
  • SAP® GUI für Windows®: aktuelles Release ab 6.203 (Nov.2002).
  • Standardschnittstellen: ‘BC-MID-RFC’ und ‘ BC-FES-SCR’ (SAP® GUI Scripting, aktivierter Profilparameter ‘sapgui/user_scripting’) enthalten in der Standardauslieferung der SAP®-Software.
  • Der Berechtigungsschlüssel für die CT-Softwarekomponenten ist im Rahmen der Installation einzugeben.
  • Das Programm wurde konzipiert als ‘Single Session Programm’ und unter dieser Voraussetzung erfolgreich getestet.


9. Hardwarevoraussetzungen

  • Prozessor : 500 Mhz oder höher
  • Hauptspeicher : 256 MB – Minimum
  • Grafikkarte : 65.000 Farben oder höher
  • Monitor : 17 Zoll, 1024 x 768 oder höher
  • Festplattenplatz : ca. 62 MB