Wie entwickelt man ein Statistikframework in fünf Schritten?

Die Macht der Klickzahlen


Jeder, der sich mit Internetportalen auskennt, weiß, dass es viele Möglichkeiten gibt, Zugriffsstatistiken zu generieren und sie in einer grafischen Form zu präsentieren. Und jeder Entwickler steht irgendwann einmal vor der Anforderung, einem Kunden statistische Auswertungen einer (Web-)Applikation ermöglichen zu müssen. Vor einigen Jahren entstand daher die Idee, ein Statistikframework für Java-EE-Applikationen zu entwickeln. Diese Artikelserie beschreibt den steinigen Weg von dieser Idee zur heutigen Lösung, die grundlegende Anforderungen wie agile Softwareentwicklung, modularer Aufbau, modernes Caching, Datenbankunabhängigkeit und professionelle Visualisierung erfüllt.

Für Entwickler wird es dann knifflig, wenn der Kunde nicht nur Zugriffszahlen fordert, sondern diese Zahlen mit anwendungsspezifischen Businessdaten verknüpfen und diese Datenkombination auswerten möchte. Als Beispiel: Man möchte auswerten, wie oft eine Webseite von den angemeldeten Benutzern im Alter zwischen 20 und 49 Jahren besucht wurde. Mit den am Markt existierenden Open-Source-„Zugriffssammler“-Lösungen kann man weder ermitteln, welche Daten (z. B.: Alter des Benutzers) auf der Serverseite vorhanden sind, noch diese Businessdaten mit den Zugriffsdaten verknüpfen. Erschwerend kommt hinzu, dass man bei der Auswertung wesentlich komplexere Daten vorliegen hat als bei reinen Zugriffsdaten. Es liegt also nahe, ein Statistikframework für JEE-Applikationen zu entwickeln.

So entsteht ein Framework

Es war von Anfang an klar, dass man mit einfachen Zugriffsstatistiken (Hit pro Seite) nicht viel erreicht. Mit der Größe der JEE-Applikation wuchsen auch die Anforderungen an die Statistikfunktionalitäten. Also musste etwas entwickelt werden, was die folgenden Anforderungen erfüllen kann:

  • modularer Aufbau

  • agile Softwareentwicklung

  • einfache Konfiguration

  • breite Einsatzmöglichkeit

  • geringe Entwicklungszeit

  • geringe Kosten (Verwendung von Open Source, wo es möglich und sinnvoll ist)

Diese Anforderungen können – gleichzeitig – nur dann erfüllt werden, wenn man eine Art Framework entwickelt. Am Anfang des Projekts wollte ich nur ein generalisiertes Statistikmodul zu einer bestehenden JEE-Applikation erstellen. Am Ende ist es ein Framework geworden. Was ich dabei gelernt habe, ist, dass die Zeit, die man in die Planung investiert, sich später mehrfach auszahlen wird!

Artikelserie

Teil 1: Hauptaufgaben des Frameworks: Business- und Zugriffsdaten analysieren und sichern

Teil 2: Datenauswertung (...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang