Organisatorisches

Hörerkreis:
Wahlpflichtvorlesung im Vertiefungsblock für alle Diplom-Informatikstudiengänge (II, MI, WI)
Wahlpflichtvorlesung für den Masterstudiengang Computer Science

Vorlesungstermin: Do 08:00 Uhr - 09:15 Uhr, HS 1

Eine praktische Übung wird zu dieser Vorlesung doch nicht angeboten. Stattdessen werden Erkenntnisse aus der laufenden Masterarbeit von Maximilian Herold vorgestellt.

Ich vergebe mit höchster Priorität Abschlussarbeiten aus dem in dieser Vorlesung vorgestellten Themenumfeld.

 

Vorlesungsinhalte

Diese Vorlesung soll einen Überblick über Ausschnitte der vielfältigen Welt der Verteilten Systeme geben. Da ich an einigen Stellen auch in die Tiefe gehen und aus meinen praktischen Erfahrungen berichten möchte, kann dieser Überblick nicht vollständig sein.

Es wird drei Schwerpunkte geben:

1. Paradigmenwechsel für Softwarelösungen durch Verteilung

Hier werden innovative Projekte vorgestellt, an denen ich bei DaimlerChrysler mitgearbeitet habe. Diese Projekte sind größtenteils aus dem Gebiet der Verkehrstelematik. Zum Teil wurden die dort benutzten Techniken von Studierenden der FH Wedel in Masterarbeiten näher untersucht bzw. auf modernere Grundlagen gestellt. Die wichtigsten Ergebnisse werden in der Vorlesung vorgestellt.

Die hier vorgestellten Aufgabenstellungen eignen sich hervorragend für weitere Abschlussarbeiten, vor allem für den Master.

2. Die Client-Server-Beziehung und daraus resultierende Techniken

Hier geht es in erster Linie um Grundlagen der Kommunikation zwischen entfernten Rechnern auf Anwendungsebene. Es werden konkrete Beispiele in der Programmiersprache Java gegeben und die Basistechnologie RMI eingehend behandelt.

Ein weiterer Aspekt ist die Technik von Softwareagenten. Über diese wird ein Überblick gegeben sowie sinnvolle Anwendungsszenarien vorgestellt.

3. Dienstevermittlung

Hier geht es um die Vorstellung von Mehrwertdiensten in verteilten Systemen.

Damit eng verknüpft ist die Technik von Serviceorinetierten Architekturen (SOA) sowie WebServices. Auch das Semantic Web wird vorgestellt. Neben einem grundlegenden Überblick wird als Beispiel die Konzeption eines Touristeninformationssystems vorgestellt.

Hierfür wird aus Erfahrungen in einem DaimlerChrysler-Projekt vor 6 - 8 Jahren berichtet und diese mit einer Reimplementierung verglichen, die im vergangenen Semester im Rahmen eines Softwareprojekts vorgenommen wurde. Dafür wurden verschiedene Dienste über das Web miteinander verbunden, die auf verschiedenen Plattformen (Java, .NET und PHP) implementiert wurden.

Auch in diesem Gebiet gibt es viele Möglichkeiten, Abschlussarbeiten zu schreiben. Diese können sowohl Bachelor-, Diplom- als auch Masterarbeiten sein.

 

Vorlesungsunterlagen

Spätestens am Vorabend der jeweiligen Vorlesung wird der in der Vorlesung präsentierte Foliensatz hier hineingestellt. Er wird im Vergleich zum Vorjahr an manchen Stellen überarbeitet werden. Zusätzlich werden in der Vorlesung Beispiele an der Tafel gegeben.

1. Paradigmenwechsel für Softwarelösungen durch Verteilung

1.1 Motivation durch Beispiele aus der Praxis (12.04., wird am 19.04. beendet)

1.2 Allgemeine Anforderungen und Techniken verteilter Systeme (19.04.)

1.3 Pheromonbasierte Verkehrssteuerung als Beispiel für einen verteilten Ansatz (26.04., 03.05.)
(ppt-Version für die unvollständigen pdf-Bilder, Kommentare von Thomas Walther, passen nicht immer zu den von mir geänderten Folien)

2. Die Client-Server-Beziehung und daraus resultierende Techniken

2.1 Grundlagen der Client-Server-Beziehung (10.05.)

2.2 Nebenläufigkeitstechniken (24.05.)

2.3 Entfernte Aufrufe (31.05.)

2.4 Objektmigration (07.06.)

2.5 Kommunikation mit dem WebService-Standard (14.06.)
          Beispiel-WSDL für TourSchedulingServer
          Beispiel-WSDL für TripServer

3. Dienstevermittlung

3.1 Aufgabenstellungen und Lösungsansätze (21.06.)
          Hintergrundmaterial zu Touristeninformationssystem
          auf Handout-Server (nur Studierenden der FH Wedel zugänglich)

3.2 Serviceorientierte Architektur: Einführung (28.06.)

3.3 SOA for Business (05.07.)

Klausurabgrenzung

 

 

Literatur

Gustavo Alonso / Fabio Casati / Harumi Kuno / Vijaj Machiraju: Web Services: Concepts, Architectures, and Applications
Springer 2004, ISBN 3-540-44008-9

Grigoris Antoniou / Frank von Hermelen: A Semantic Web Primer, MIT Press 2004, ISBN 0-26-201210-3

Marko Boger: Java in verteilten Systemen, Nebenläufigkeit, Verteilung, Persistenz,
dpunkt-Verlag 1999, ISBN 3-932588-32-0

David Chappell / Tyler Jewell: Java Web Services,
O'Really 2002, ISBN 0-596-00269-6

Marco Dorigo / Thomas Stützle: Ant Colony Optimization,
MIT Press 2004, ISBN 0-262-04219-3

Wolfgang Dostal / Mario Jeckle / Ingo Melzer / Barbara Zengler: Service-orientierte Architekturen mit Web-Services, Konzepte - Standards - Praxis,
Spektrum 2005, ISBN 3-8274-1457-1

George Coulouris / Jean Dollimore / Tim Kindberg: Distributed Systems, Concepts and Design,
Addison-Wesley 2001, ISBN 0201-61918-0
Deutsche Übersetzung auch erhältlich: Pearson Studium 2002, ISBN 3-8273-7022-1

Thomas Erl: Service-Oriented Architecture, A Field Guide to Integrating XML and Web Services,
Prentice Hall 2004, ISBN 0-13-142898-5

Thomas Erl: Service-Oriented Architecture, Concepts, Technology, and Design,
Prentice Hall 2005, ISBN 0-13-185858-0

Ulrike Hammerschall: Verteilte Systeme und Anwendungen, Architekturkonzepte, Standards und Middleware-Technologien,
Pearson Studium 2005, ISBN 3-8273-7096-5

Manfred Hein / Henner Zeller: Java Web Services, Entwicklung plattformübergreifender Dienste mit J2EE, XML und SOAP,
Addison-Wesley 2005, ISBN 3-8273-2231-6

Jochen Schiller: Mobilkommunikation, Pearson Studium 2003, ISBN 3-8273-7060-4

Thomas Stark: J2EE, Einstieg für Anspruchsvolle,
Pearson Studium 2005, ISBN 3-8273-2184-0

Andrew Tanenbaum / Marten van Steen: Verteilte Systeme, Grundlagen und Paradigmen,
Pearson 2003, ISBN 3-8273-7057-4

Michael Wooldridge: An Introduction to MultiAgent Systems,
Wiley 2002, ISBN 0-471-49691-X

Olaf Zimmermann / Mark Tomlinson / Stefan Peuser: Perspectives on Web Services, Springer 2003, ISBN 3-5400-0914-0