Das vom BMBF geförderte Projekt (Laufzeit: 1. September 2009 - 30. November 2012) zielt auf die Bereitstellung von Technologie- und Werkzeugunterstützung für die Erstellung von SOA-Diensten mit Servicequalitäten und deren Nutzung im industriellen Umfeld. Grundlage hierfür sind aktuelle Spezifikationen, Standards und Applikationsserver. Als Applikationsserver, die die technische Infrastruktur zum Betrieb der SOA-Dienste bereitstellen, kommen aktuelle und industrierelevante Produkte wie JBoss, Glassfish, Axis2 und .NET/WCF zum Einsatz.

Eine Hauptaufgabe des Projekts besteht darin, diese Technologien so einzusetzen, zu kombinieren und zu ergänzen, dass eine durchgängige, leicht zu bedienende und robuste Werkzeugkette geschaffen wird. Hierzu werden die folgenden Schwerpunktthemen untersucht:

  • Spezifikation einer Sprache zur Beschreibung von QoS-Anforderungen für SOA-Dienste ("QoS/SOA-Policy") basierend auf Standards wie WS-Policy
  • Werkzeugunterstützung für die Modellierung und Validierung von QoS/SOA-Beschreibungen
  • Konzeption und Umsetzung eines Frameworks für die automatisierte Umsetzung von QoS/SOA-Beschreibungen auf Applikationsservern
  • Praxistest der Werkzeugkette in ausgewählten industriellen Anwendungen
  • Bewertung der Standardkonformität und Interoperabilität der eingesetzten Implementierungen und Applikationsserver.

Schwerpunkte

Das Projekt zielt auf eine Produktivitätssteigerung der Softwareentwicklung von SOA-Diensten mit Servicequalitäten. Hierzu werden im Projekt drei Schwerpunkte gesetzt:

  1. Modellbildung und technologische Grundlagen
  2. Werkzeugunterstützung
  3. Praxistest.

Modellbildung und technologische Grundlagen: Die im Projekt verwendete Terminologie, insbesondere zur Semantik von QoS-Anforderungen, wird auf Basis aktueller Definitionen, Ansätze und Spezifikationen aufgebaut. Hierbei werden u.a. relevante WS-* Spezifikationen berücksichtigt. Es werden Formalismen untersucht, die eine kohärente Beschreibung von Servicequalitäten im Kontext der Service-Orientierung ermöglichen. Die Bewertung aktueller Applikationsserver und WS-* Implementierungen bildet eine Grundlage für die Konzeption einer optimalen Werkzeugunterstützung.

Werkzeugunterstützung: Eine Werkzeugkette integriert verschiedene Komponenten, Tools und Laufzeitumgebungen, die jeweils spezielle Aufgaben übernehmen. Standardkomponenten (IDEs, UML-Werkzeuge etc.) werden angepasst und um Bausteine ergänzt, die im Projekt konzipiert und realisiert werden. Letztere werden benötigt, um existierende Lücken zu schließen und die Durchgängigkeit zu garantieren.

Praxistest: Die Durchführung von industriellen Fallstudien während des Projekts soll die Praktikabilität der Werkzeugkette sicherstellen.

Die folgende Abbildung gibt einen Überblick über die geplante Werkzeugkette:

In der linken Spalte ist das grobe Entwicklungsmodell dargestellt. Ausgangspunkt ist der Entwurf eines SOA-Dienstes. Neben der Implementierung der eigentlichen Fachlogik (beispielsweise in Java oder C#) werden die erforderlichen Servicequalitäten in Form einer QoS/SOA-Beschreibung spezifiziert. Beide Teile werden herangezogen, um deploybare Komponenten abzuleiten. Je nach Applikationsserver handelt es sich hier um Enterprise-/Web-Archive (Java EE Umgebung) oder Assemblies (.NET Umgebung).

Im Rahmen eines Installationsvorgangs (d.h. dem Deployment) werden die Komponenten im Applikationsserver eingespielt, so dass anschließend die Nutzung der SOA-Dienste erfolgen kann. Wichtige für dieses Vorgehen erforderliche Werkzeuge sind in der rechten Spalte zu sehen. Für die Implementierung der eigentlichen Fachlogik der SOA-Dienste kommen etablierte Entwicklungswerkzeuge, wie z.B. Eclipse und Visual Studio, zum Einsatz. Die Modellierung und Validierung der QoS-Anforderungen erfolgt mit einem weiteren Werkzeug. Da derzeit hierfür keine adäquaten Formalismen und Editoren verfügbar sind, wird ein solcher Baustein ("Erstellung und Modellierung von QoS-Beschreibungen") im Projekt QoS/SOA erstellt.

Durch Einsatz der MDA-Technologie wird für den Programmcode und die QoS-Anforderungen eine vollständige Artefaktmenge für deploybare SOA-Komponenten generiert; hierzu wird der Baustein "Generierung von deploybaren SOA-Komponenten" realisiert. Durch eine angepasste Deploymentumgebung erfolgt deren Installation in einem Applikationsserver. Um während der Laufzeit Änderungen an den QoS-Einstellungen vornehmen zu können, ist wiederum ein im Projekt zu erstellendes Werkzeug erforderlich (Baustein "Monitoring, Überprüfung und Anpassung"). Basis hierfür sind standardisierte Managementfunktionalitäten der Applikationsserver.

Zusammenhang zum Masterstudiengang

Wichtige, dem Projekt zu Grunde liegende Technologien, Techniken und Vorgehensweisen werden in den folgenden Modulen näher beleuchtet:

  • Advanced Middleware
  • Modellbasierte Entwicklung in Software-Produktlinien
  • Wahlmodul: Serviceorientierte Architekturen (SOA)

Weitere Informationen finden Sie auf unserer Projekt-Homepage:
qossoa.hs-furtwangen.de

Publikationen

Die aktuelle Liste der Publikationen findet sich unter:
qossoa.hs-furtwangen.de/publikationen

Ansprechpartner

Prof. Dr. Bernhard Hollunder
Fakultät Informatik
Prodekan
07723 920-2407
07723 920-1109
Campus Furtwangen, Raum C 2.06
mehr...