Komponentenprogrammierung und Middleware, SoSe 2004

Themenkomplex Softwarebasissysteme oder Softwarekonstruktion

Softwarekomponenten sind Bausteine mit wohldefinierten Schnittstellen, die sich in binärer Form wiederverwenden lassen. Sie sind Software-Module die auf Ereignisse reagieren können und ihre Eigenschaften nach außen hin sichtbar machen.
Die Vorlesung gibt eine Überblick über die bedeutenden Komponentenarchitekturen. Anhand von Beispielen werden Namenskonventionen und Verpackungsregeln für Komponenten sowie die Unterstützung der Komponentenintegration durch Werkzeuge diskutiert.
Im Rahmen des Projektes sollen sich die Hörer mit jeweils einer Komponentenumgebung intensiv auseinandersetzen und ihre Erfahrungen in der Vorlesung vorstellen.

Ablauf

  • Vorlesung + Projekt
  • 4 SWS mit Praktikum (6 benotete Leistungspunkte)
  • Studentische Vorträge in der 2-ten Semesterhälfte
  • Themenkomplex: Softwarebasissysteme oder Softwarekonstruktion

Termine

  • Mi. 09:15-10:45, HPI HS 2
  • Do. 11:00-12:30, HPI HS 2

Dozenten

  • Prof. Dr. Andreas Polze,

Konsultationen:

  • Dipl.-Inf. Peter Tröger
  • Dipl.-Inf. Andreas Rasche

Leistungserfassung

Die Leistungserfassung erfolgt in den Präsentationen und vorangehenden Konsultationen zur Projektarbeit. Im Einzelnen gelten folgende Regeln:

  1. Im Rahmen der Projektarbeit sollen Teilnehmer auf einer von vier Middleware-Plattformen (CORBA, COM, (Enterprise) JavaBeans, C# und .NET (Compact Framework)) eine verteilte Anwendung entwerfen, implementieren und dokumentieren.
  2. Von den Teilnehmern wird in der zweiten Semesterhälfte ein 45-50 minütiger Vortrag mit Präsentation der verteilten Anwendung, anschließender Diskussion und Auswertung (25-30 Minuten) erwartet. Zwei Wochen vor dem Vortragstermin sollten in einer Vorbesprechung die Vortragsunterlagen (draft-Ausgabe der Folien) bei einem Betreuer vorgestellt werden.
  3. Am Ende der Lehrveranstaltung sollen Ausarbeitungen zu allen Projektthemen in einem technischen Report zusammengefaßt werden. In die Bewertung der Lehrveranstaltung (6 benotete Leistungspunkte) gehen Vortrag, Diskussion und Ausarbeitung ein.
  4. Die Belegungsfrist endet am 24.04.04.

Inhalte und Unterlagen

Hier finden Sie Vorlesungsunterlagen im Portable Document Format (pdf). Die Unterlagen werden im Laufe des Semesters ergänzt.

Unit 1 – Begriffe

Termin: 14.4.

Termin: 15.4.

Unit 2 – Java Programmierung

Termin: 21.4.

Termin: 22.4.

Termin: 22.4./28.4.

Unit 3 – The Common Object Request Broker Architecture (CORBA)

Termin: 29.4./5.5./6.5.

Termin: 12.5./13.5.: Termin: 19.5.

Unit 4 – The Component Object Model (COM+)

Termin: 26.5. Termin 27.5.:

Termin 2.6.:

Termin 3.6.:

Unit 5 – JavaBeans im Detail

Termin 9.6/16.6.:

Termin 10.6. Projektvorträge:

Termin 17.6. Projektvorträge:

Termin 23.6.:

Termin 24.6. Projektvorträge:

Termin 30.6.:

Unit 6 – C# und das .NET-Framework

Termin 1.7. Projektvorträge:

Termin 7.7.:

Termin 8.7. Projektvorträge:

Termin 14.7.:

Unit 7 – Aspektorientiertes Programmieren/Paradigmen für Web-Computing

Termin 15.7.

  • Autonomous Computing – Paradigmen für WebServices, EJB, CCM
  • Aspektorientierung – nichtfunktionales Komponenteneigenschaften

Projektarbeit

Ein paar Anregungen zur Projektarbeit finden Sie hier.

Die aktuelle Planung der studentischen Vorträge finden Sie hier.

Nachdem nun fast alle Vorträge zur allgemeinen Zufriedenheit gelaufen sind, steht die Abgabe der schriftlichen Ausarbeitungen - im Sekretariat bei Frau Wagner – zum 01.09.2004 an. Bitte geben Sie Ihre Ausarbeitungen in Papier-Form (!) ab.

Literatur

  • Java in a Nutshell von David Flanagan, 3rd Edition, O'Reilly, 1999, ISBN 1-56592-487-8
  • Component Software – Beyond Object-Oriented Programming von Clemens Szyperski, Addison-Wesley, 1999, ISBN 0-201-17888-5
  • Design Patterns – Elements of Reusable Object-Oriented Software von Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides,Addison-Wesley, 1995, ISBN 0-201-63361-2
  • Objektorientierte Softwareentwicklung – Analyse und Design mit der Unified Modeling Language von Bernd Oesterreich, 5-te Auflage, Oldenbourg Verlag, 2001, ISBN 3-486-25573-8
  • CORBA 3 – Fundamentals and Programming von Jon Siegel, Second Edition, Wiley Computer Publishing, 2002, ISBN 0-471-29518-3
  • Java Programming with CORBA von Gerald Brose, Andreas Vogel, Keith Duddy, Third Edition, Wiley Computer Publishing, ISBN 0-471-37681-7