10.05.2008

WTS - Web Tree Scanner

In den letzten Jahren hat das Internet und im Speziellen des World-Wide-Web (WWW) einen gigantischen Boom erfahren. Innerhalb eines kurzen Zeitraums schossen geradezu immer neue WWW-Server, also Anbieter von WWW-Seiten, aus dem Boden. Andererseits wuchsen bestehende Sites immer stärker und wurden so aktuellen Bedürfnissen und Änderungen angepasst. Dabei entstanden mit der Zeit relativ unüberschaubare, »gewachsene« Strukturen.

Die Aufgabenstellung:

  • Der Dateibaum eines WWW-Servers sollte auf Dateisystemebene eingelesen und grafisch als Baum für den Ausdruck dargestellt werden. Dabei sollten Hyperlinks innerhalb der HTML-Dateien im Baum auf Korrektheit überprüft werden, sowohl innerhalb als auch außerhalb (»Externe Links«). Schließlich sollten Dateien erkennbar sein, die »tot« sind, d.h. die über eine spezifizierte Startdatei aus nicht erreichbar sind, selbst wenn man dazu über mehrere andere Seiten gehen muß.

  • Das Projekt wurde zur besseren Entwicklung in drei Phasen eingeteilt:

    • Phase 1 - simples Programm, das die Daten erschließt und den späteren Teilprogrammen bereitstellt

    • Phase 2 - Erzeugung einer druckbare Datei, dabei handelte es sich um die Hauptaufgabe

    • Phase 3 - Grafische Benutzeroberfläche zur Bedienung und Konfiguration sowie zur Ausgabe der Daten in der GUI

Da das endgültige Programm sowieso nur unter Unix lauffähig ist, konnte als objektorientierte Programmiersprache C++ verwendet werden. Zwar hatte eine Realisierung in Java durch seine vielen fertigen Klassen zur Verarbeitung von Netzverbindungen und HTML-Interpretierung die Arbeit vermutlich einfacher gemacht, jedoch ist Java, durch seine Plattformunabhängigkeit nicht in der Lage, die besonderen Unix-Eigenschaften zu unterstützen.

Das Programm »Web-Tree-Scanner« (kurz »WTS«) ermöglicht es nun dem Verwalter von WWW-Seiten, diese zu überprüfen und zu warten. Dazu kann WTS alle auf den Seiten vorhandenen Hyperlinks überprüfen und fehlerhafte melden. Außerdem kann die Navigation durch die Struktur getestet werden, so dass Seiten, auf die ein Besucher nicht gelangt (sog. »tote Seiten«), herausgefunden werden können. Schließlich bietet das Programm die Möglichkeit, die gesamte Baum-Struktur der Seiten oder auch nur Teile daraus auf Papier auszudrucken.

Das Programm wurde mit Xclasses realisiert.

Quellcodes