MetaDataViewer (MDV)
Ein Tool zur Visualisierung der Struktur relationaler Datenbanken
Umfangreiche Datenbankschemata werden in
Hypertext (HTML) transformiert.
Abhängigkeiten wie Referenz- oder Aufrufbeziehungen erscheinen in leicht
erfaßbarer und navigierbarer Form.
Wohlgemerkt, es werden nicht die Inhalte von Datenbanken dargestellt, dafür gibt
es schon viele leistungsfähige Reportgeneratoren.
Die Erstfassung ist in besonderer Weise auf Informix-SQL zugeschnitten.
Es werden viele Feinheiten und Aspekte des Datenbankschemas dargestellt. Insbesondere
sind Stored Procedures und
Trigger keine Black Boxes, sondern ihr Quellcode wird
vollständig analysiert.
Es unterstützt in besonderer Weise gewachsene DV-Landschaften und trägt
der Erscheinung Rechnung, daß oft die Codierung die treibende Kraft war und
die Modellierung ihr nachfolgte.
Eigenschaften
- Das Handling der Metadaten in Form des Datenbankschemas wird deutlich vereinfacht.
- MDV erstellt selbständig eine vollständige technische Dokumentation.
- Es werden die strukturellen Beziehungen der
Datenbankobjekte und von Anwendungen zu
ihnen visualisiert in einer Form, in der sie leicht nachvollziehbar und verfolgbar sind.
- Es unterstützt die Wartung bestehender Datenbankanwendungen.
- Es erleichtert das Konfigurationsmanagement in einer heterogenen Umgebung.
- Sonstige technische - oder bei Bedarf auch fachliche - Dokumentationen werden einbezogen.
Dies gelingt umso besser, je systematischer sie aufgebaut sind.
- Der komplette Quellcode
der Datenbank wird übersichtlich dargestellt.
- Leicht können spezielle Auswertungen nach technischen oder - wenn entsprechend dokumentiert -
fachlichen Kriterien erzeugt werden.
- Es dient den Entwicklern als stets aktuelles Nachschlagwerk zu Schnittstellen,
zum Heraussuchen wiederverwendbarer Funktionalität.
- Es bringt Datenbankcode und -dokumentation dichter zusammen und fördert so die Nachdokumentation.
- Es ist nicht auf die Kooperation der Entwickler angewiesen.
- Neue Entwickler finden sich leichter zurecht und arbeiten sich schneller ein.
- Fortgeschrittenen Anwendern bietet es Unterstützung bei der Formulierung ihrer
ad-hoc-Abfragen durch die Darstellung des physischen Datenmodells.
- Es kann hilfreich sein für die Visualisierung von Datenbanklast und Datenvolumen.
- Zusatzinformationen, insbesondere technische oder fachliche Dokumentationen, sind leicht integrierbar.
- Fertige HTML-Dateien aus anderen Quellen können leicht hinzugefügt werden.
- Der generierte HTML-Code verzichtet völlig auf physische Auszeichungen und überläßt
diese einem zentralen Stylesheet. Dies erleichtert ein diesbezügliches Customizing dramatisch.
- MDV bietet Unterstützung bei der Erstellung von Softwaremetriken.
- Selbst wenn andere Tools Ähnliches bieten, MDV ist eine unabhängige
Kontrollinstanz und mindestens in der Qualitätssicherung sinnvoll einzusetzen.
Anwendungsbeispiele
- Nachdokumentation des Datenmodells
- Datenquellen entsprechend kundenspezifische Dokumentationsrichtlinien können bei der
Generierung des Hypertextes ausgelesen werden. Damit steht eine ständig aktuelle
Dokumentation zur Verfügung, in der elegant gesucht werden kann. Somit steigt die
Bereitschaft der Entwickler zur aktiven Mitarbeit an der Dokumentation.
- Überwachung von Programmierrichtlinien
- Abweichungen von Namenskonventionen können leicht gefunden, angezeigt und einem
Entwickler zugeordnet werden.
- Unterstützung für die Vorbereitung und Durchführung partieller Redesigns
- Die Tragweite von Änderungen kann leicht überprüft werden.
MDV hat sich in vielerlei Hinsicht bewährt, insbesondere bei der Beantwortung von Fragen wie
"Welche Anwendungen und Prozeduren sind von dieser Schnittstellenänderung betroffen?"
- Aufdecken doppelt implementierter Funktionalität
- Es kann schnell erkannt werden, wenn z.B. 2 Prozeduren die gleichen Schreibzugriffe durchführen.
Die Entstehungsgeschichte
Im Zuge meiner Tätigkeit als Datenbankadministrator für drei Informix-Online-Systeme
stellte sich mir wiederholt die Aufgabe, Änderungen am Datenbankschema durchzuführen.
Mir persönlich war es wichtig dabei hohen Qualitätsanforderungen zu genügen. Also mußte
ich unerwartete Seiteneffekte vermeiden und Produktionsausfälle ausschließen.
Die Dokumentation der Datenbank war unvollständig und veraltet. Textuelle Suche in jedem Einzelfall
war mühsam und fehlerträchtig.
So entstand Ende 1997 der MetaDataViewer.
Die Ausgangsversion erstellte ich in meiner Freizeit. Während meiner Arbeitszeit erfolgte lediglich
ein Customizing. Dies betraf die Integration spezifischen Dokumentationen und Richtlinien.
Die Pilotphase verlief recht erfolgreich. Die Akzeptanz bei den Entwicklern ist hoch und sie
machten diverse Verbesserungs- und Erweiterungsvorschläge. Einige von diesen habe ich inzwischen
realisiert.
In der Zwischenzeit hat MDV sich auch bewährt bei der Analyse fremder Datenbanken mit den Zielen
ihrer Erweiterung und der Integration in das Gesamtsystem.
Haben sie Fragen oder Anmerkungen? Schreiben Sie mir:
technik(at)tarohloff.de
Autor: Thomas A. Rohloff, 3.10.2000, aktualisiert am 14.10.2006