Search:
  • research
  • teaching
  • events
  • services
  • people
  • wiki
  • home
  • sitemap
  • contact
  • teaching
    • Vorlesungen
      • WS'08 SE
      • SS'08: AOSD
      • SS'08: OOSE
      • SS'08: OOSC
      • WS'07: SWT
      • WS'07: ORE
      • SS'07: SWT
      • WS'06: AOSD
      • SS'06: SWT
      • SS'05: SWT
      • SS'05: OOSC
      • WS'04: AOSD
        • Folien
        • Literatur
        • Prüfung
      • SS'04: SWT
      • SS'02: Patterns
      • SS'02: Refactoring
    • Seminare
    • Praktika
    • AGs
    • Diplomarbeiten
Aspect-Oriented Software Development 2004
___________________________________
Dr. Günter Kniesel
Daniel Speicher


Beschreibung Aspekte sind ein neues Modularisierungskonzept. Sie kapseln systemübergreifende Anforderungen („crosscutting concerns“), deren Umsetzung sonst, trotz bestmöglicher Anwendung objektorientierter Modellierungsprinzipien, über viele Komponenten eines Programms verstreut wäre. Ihre Umsetzung in einem einzelnen Modul verbessert die Wartbarkeit von Anwendungen nachhaltig, da sie Lokalität von Änderungen ermöglicht.

Die aspektorientierte Programmierung (AOP) geht auf Arbeiten an der Northeastern University Mitte der 90-er Jahre zurück. Der Begriff wurde 1996 bei XEROX PARC geprägt. Anfang 2001 wurde AOP von den Herausgebern des MIT Technology Review bereits als eine der 10 wichtigsten Zukunftstechnologien eingestuft. Heutzutage gibt es zahlreiche AOP-Systeme, wobei die Bezugssprache aber zweifellos immer noch AspectJ ist, die bei XEROX PARC entwickelte aspektorientierte Erweiterung von Java.

Der Einzug der AOP im die Industrie zeigt sich unter anderem daran, dass IBM verschiedene Entwicklungsumgebungen für AOP baut (AJDT, CME), die Hersteller von Applikationsservern AOP-Erweiterungen in Ihre Produkte integrieren (Bea Weblogic und JBoss) und sich in Anwendungsbereichen wie der Entwicklung von Middleware ein starkes Interesse an AOP Technologien zeigt.

Die Vorlesung bietet die Möglichkeit, sich frühzeitig in ein neues Paradigma mit absehbar weitreichenden Auswirkungen auf die Softwaretechnologie der Zukunft einzuarbeiten. In der Vorlesung werden verschiedene AOP-Sprachen und -Middleware-Systeme zusammen mit den dazugehörenden Entwicklungswerkzeugen vorgestellt. Interessante Anwendungen der Konzepte und Systeme werden diskutiert, um die praktischen Auswirkungen der neuen Technologien zu verdeutlichen. Der Schritt von AOP zu AOSD besteht in der Verallgemeinerung der besprochenen Programmierkonzepte auf frühere Phasen des Entwicklungsprozesses (Analyse, Entwurf). Die Integration von Aspekten in die UML ist hier zum Beispiel ein Thema.

Schliesslich werden die Gemeinsamkeiten und Unterschiede der besprochenen Systeme herausgearbeitet. Dazu gehört auch die Betrachtung von noch offenen Problemen, die Gegenstand aktueller Forschungs sind und somit auch mögliche Diplom- / Master-Arbeitsthemen eröffnen.
Weitere Informationen DAS Portal zum Thema "Aspektorientierte Software-Entwiklung / AOSD" ist aosd.net .
Voraussetzungen Grundkenntnisse in objektorientierter Programmierung und Softwaretechnologie, z.B. im Umfang der Vorlesung Softwaretechnologie im Sommersemester 2004.
Leistungspunkte 3 LP bzw. 2 SWS Vorlesung ohne Übungen
Prüfungsmöglichkeiten Neue DPO: Mündliche Modulprüfung.
Alte DPO: Prüfung als Vertiefungsgebiet zusammen mit Design Patterns, Refactoring sowie weiterem Stoff im Umfang von 2SWS nach Vereinbarung (mögliche Themen z.B. Komponententechnologien, Extreme Programming - siehe Seminare und Praktika / Projektgruppen zu diesen Themen).
Ort und Zeit HS A207
Termine Donnerstag, 13-15 Uhr (ct), vom 14.10.2004 bis 27.1.2005.
Keine Vorlesung am 23.12.2004, 30.12.2004 und 6.1.2005.
Übungen Keine bzw. als Teil der Vorlesung
Mailing-Liste swt-vorlesung@iai.uni-bonn.de dient uns dazu euch kurzfristige Infos zukommen zu lassen und euch um untereinander Absprachen zu treffen, Hilfe von Kollegen zu erfragen, etc. Ihr könnt und solltet euch selbst via MailMan an- und abmelden .
Veranstalter Dr. Günter Kniesel
Übungsleiter Daniel Speicher