Entwurf eines Architekturmodells zur Integration heterogener Systeme in MeDIC

Dokumente

Ausarbeitung

Folien: Zwischenvortrag

Hintergrund

Viele Erfahrungen gezeigt, dass der Prozess der Softwareentwicklung komplex und unübersichtliche sein kann. Daher wurden in den letzten Jahren Anstrengungen unternommen, diesen Prozess transparent und verständlich zu gestalten; insbesondere in Hinsicht auf die betriebswirtschaftlichen Rahmenbedingungen unter denen Softwareentwicklungsprozesse ablaufen. Hauptverantwortlich und federführend bei der Steuerung eines solchen Prozesses ist der Projektleiter. Da es sich bei Softwareprodukten um keine materiellen Güter handelt, ist die Bewertung des Pro-zesses für den Projektleiter immens schwierig.

Projekt-Dashboards wie MeDIC sind ein relativ neues Mittel zur quantitativen und qualitativen Bewertung eines Softwareentwicklungsprozesses. MeDIC nutzt dazu bekannte Metriken und visualisiert diese in einer ansprechenden graphischen Form.

Grundvoraussetzung für die Anwendung der Metriken sind ?gute? zur Verfügung stehende Daten. Der Softwareentwicklungsprozess basiert und operiert auf einer Vielzahl technischer Systeme, dazu gehören Sourcecode Repositories, Analsysesysteme (Sonar), Kommunikations- und Kollaborationsplattformen (Wiki, Issue Tracker) und Deploymentsysteme (CI Server Hudson). Diese dienen alle als potenzielle Datenquellen für MeDIC.

Damit unterscheidet sich ein Softwareentwicklungsprozess grundlegend von sonstigen Geschäftsprozessen, die z.B. mit Data Warehousing erfasst und bewertet werden (Bsp.: Finanztransaktio-nen). Insbesondere die Heterogenität der Daten und Datentypen ist eine Herausforderung für die Integration.

Forschungslücke

Bisherige Projekt-Dashboards basieren auf z.B. klassischen Datawarehouse-Architekturen, wo die Datenaus zur Verfügung stehenden Quellen extrahiert, entsprechend dem Datenmodell transformiert und dann in das Datawarehouse integriert werden (ETL Mechanismus). Dies wird aber der heterogenen Struktur des Softwareentwicklungsprozesses nicht unbedingt gerecht und es kommt zu einem Informationsverlust.

Daher soll in dieser Arbeit eine andere Form der Abstraktion der zur Verfügung stehenden Systeme erforscht werden. Die grundlegenden Faktoren, die die größte Herausforderung darstellen, sind ?Heterogenität? und ?Interpretation?. In der Informatik gibt es seit Jahren Ansätze zur Lösung solcher heterogenen Integrationsprobleme. Mit Konzepten wie Enterprise Application Integration oder Service Orientierte Architekturen verbindet sich das Bedürfnis der Integration und Interaktion verschiedener Applikation einer IT Systemlandschaft.

Das Problem der Interpretation der Daten bündelt alle Logik und Wissen in einer zentralen Stelle, nämlich innerhalb des Projekt-Dashboards. MeDIC fügt zwischen Dashboard, Metrik und Daten das Konzept der Informationsbedürfnisse ein. Dieses Konzept abstrahiert von den Daten und ermöglicht eine flexiblere Struktur. Innerhalb von MeDIC wäre es möglich, dass Interpretationslogik nicht gebündelt vorliegt, sondern verteilt, ganz im Sinne z.B. der Service-Orientierten Architekturen.

Als letzten Forschungsschwerpunkt kann die bidirektionale Kommunikation zwischen externem System und Projektdashboard angesehen werden. Diese ist notwendig, damit der Projektleiter nicht nur passiv Daten konsumiert und auswertet, sondern auch aktiv Entscheidungen direkt übermitteln kann.

Aufgabe

Ziel der Arbeit ist die Evaluation und Entwicklung eines Architekturmodells für die einfache und flexible Integration heterogener Systeme in das Dashboard System MeDIC. Es werden zunächst die bestehenden Ansätze analysiert und auf Ihre Anwendbarkeit auf die Projektmanagementplattform MeDIC untersucht.

In den nächsten Schritten soll ein grundlegendes Framework für eine Integrationsarchitektur entwickelt und als Prototyp implementiert werden. Zur Evaluation soll dieser Prototyp in die Plattform SSELab integriert werden. SSELab bietet einem Anwender folgende grundlegenden Services an:

  • Wiki (Media-Wiki)
  • Issue Tracker (Trac)
  • Sourcecode Repository (Subversion)
  • Mailinglist (Mailman)

Die Inhalte dieser Services sollen über MeDIC visualisiert und ausgewertet werden.

Technologisch soll das Framework auf der bestehenden J2EE-Anwendung MeDIC fußen.