Entwicklung service-orientierter Architekturen und Anwendungen
Wintersemester 2008/09
Dr.-Ing. Daniel Lübke
Vorlesung (2V+1Ü), 4 Leistungspunkte
| Vorlesung |
Mi, 12:30-14:00, B302, Hauptgebäude
|
| Übung |
Di, 10:00-11:00, SE-Rechnerraum, Hauptgebäude
Do, 10:00-11:00, SE-Rechnerraum, Hauptgebäude
|
| Beginn |
08.10.2008
|
| Prüfung |
Klausur, 06.03.2009, 14:15h, VII 002, VII 003, Conti-Campus
|
Vorlesung
Lernziele
Diese Vorlesung vermittelt Studenten Grundlagen der Entwicklung von Service-orientierten Architekturen und Anwendungen.
Dabei steht im Mittelpunkt der Vorlesung Methoden aus der Sicht des Software Engineerings, die durch SOA beeinflusst werden.
Neben den Methoden werden auch die Techniken, wie Webservices (SOAP, XML Schema, ...) behandelt, die in den Übungen vertieft
und angewendet werden.
Durch Bearbeitung der Übungsaufgaben können max. 5 Bonuspunkte für die Klausur erworben werden. Dazu, und für
Benachrichtigungen bei Änderungen registrieren Sie sich bitte im SE-Anmeldesystem.
Stoffplan
- Requirements in SOA: Use Cases und Geschäftsprozessmodellierung
- Services und Webservices
- Servicekompositionen und BPEL
- Oberflächengenerierung
- Testen im SOA-Kontext
- Geschäftsprozessbezogenes Benutzerfeedback
Materialien
| Kapitel | Titel | Download |
| | Organisatorisches | PDF |
| 1 | Einführung | PDF |
| 2 | Anforderungen und Geschäftsprozesse | PDF |
| 2.1 | Geschäftsprozessmodellierung | PDF |
| 2.1.1 | Ereignisgesteuerte Prozessketten (EPK) | PDF |
| 2.1.2 | Business Process Modeling Notation (BPMN) | PDF (aktualisiert) |
| 2.2 | Use Cases | PDF |
| 2.3 | Generierung von Geschäftsprozessen aus Use Cases | PDF |
| 2.4 | Extras | PDF |
| 3 | Entwurf | PDF |
| 3.1 | Allgemeine Architektur und Webservices | PDF |
| 3.2 | Webservices | PDF |
| 3.3 | Servicebeschreibungen & WSDL | PDF |
| 4 | Service-Entwicklung | PDF |
| 4.1 | SOAP | PDF |
| 4.2 | Apache Axis2 | PDF |
| 5 | Servicekompositionen | PDF |
| 5.1 | BPEL | PDF |
| 6 | Benutzeroberflächen | PDF |
| 7 | Prozessoptimierung | PDF |
| 8 | Travel-Tours-Architektur | PDF |
| 9 | Testen | PDF |
| 10 | Errata | PDF |
| 11 | Zusammenfassung & Klausur | PDF |
Weitere Informationen zum Informaticup 2008 gibt es bei der GI.
Übung
Übungsleiter: Kai Stapel
Materialien
| Übung | Thema | Hausaufgabe | Beispiele und Materialien |
| 1 |
Java Enterprise Edition (Java EE) |
Web Shop Verwaltung: Neuen Artikel eintragen |
|
| 2 |
Ereignisgesteuerte Prozessketten (EPK) |
Web-Shop-Bestellprozess und Datenverifikation |
E-Mail Verifikation |
| 3 |
Business Process Modeling Notation (BPMN) und Use Cases |
Web-Shop-Bestellprozess Use Cases und Use-Case-Transformation |
ORYX,
HeRA v1.2 |
| 4 |
Use Cases in Ereignisgesteuerte Prozessketten generieren |
Web-Shop-Bestellprozess Use-Case-Transformation |
Use-Case-2-EPK-Framework,
Testdaten: Abschlussarbeitsverwaltung (ohne Zyklen) |
| 5 |
Webservices und WSDL |
Produkt-Webservice |
Gästebuch-Beispiel,
dass ein Servlet und eine JSP benutzt, um auf den Gästebuchservice (siehe Tutorial↓) zuzugreifen. |
| 6 |
WSDL zu Java |
Kunden- und Lieferanten-Webservice |
- |
| 7 |
SOAP und Fault Handling in Webservices |
Fehlerbehandlung im Kundenservice |
HelloWorld-Beispiel mit Fault Handling |
| 8 |
Servicekompositionen und die Business Process Execution Language (BPEL) |
Lieferantenservice-Proxy |
siehe BPEL Tutorials↓ |
| 9 |
Business Process Execution Language (BPEL) und Strukturierte Aktivitäten |
Bestellprozess mit Dynamic Invoke |
BPEL-Prozess mit Dynamic Invoke,
Mehrsprachige Hello-World-Services
|
| 10 |
BPEL Fault- und Compensation-Handling |
Geldeinzugsprozess mit Fault- und Compensation-Handling |
ProductService:
WSDL,
ZIP
|
| 11 |
BPEL: Asynchrone Prozesse und Korrelation (Correlation) |
Asynchroner Nachbestell-Prozess mit Korrelation |
SupplierService:
WSDL,
WarehouseManager:
WSDL,
JSP-Client
|
| 12 |
BPEL: Servicekompositionen testen mit BPELUnit |
Bestellprozess aus Hausaufgabe 9 testen |
Bestellprozess:
WSDL,
ZIP,
BPELUnit
|
| 13 |
BPEL: Testabdeckung in BPEL-Servicekompositionen messen |
- |
Bestellprozess: PNG,
Testdurchlauf: PNG |
Tutorials