Das WPF Architektur großer Systeme habe ich im SS15 angeboten. Da größere Teile der Veranstaltung in den Pflichtveranstaltungen Softwaretechnik 1 und Softwaretechnik 2 aufgegangen sind, werde ich diese Veranstaltung nicht weiter anbieten.

Inhalt

Zwischen Softwarekomponenten und ganzen IT-Landschaften liegen – aus Sicht der Komplexität – die großen Softwaresysteme.

Softwarekomponenten spezifiert und implementiert man mit Methoden der Softwaretechnik. Dazu zählen Anforderungserhebung, Projektmanagement, Grob- und Feinspezifikation, QS etc. Beim Architekturentwurf gibt es eine Reihe von erprobten Werkzeugen, Modellierungssprachen (UML) und Methoden wie die Verwendung von Architekturmustern. Es herrscht eine relativ klare Vorstellung, wann eine Architektur „gut“ ist.

Auf der Ebene von IT-Landschaften mit 3000 und mehr IT-Systemen, wie sie das Enterprise-Architektur-Management (EAM) für ganze Unternehmen betrachtet, gibt es wieder eigene Methoden und Ansätze. Diese abstrahieren vom einzelnen IT-System und versuchen statt dessen, die Qualität und Passung der Landschaft, also der Gesamtheit aller IT-Systeme, zu bewerten. Hier liegt der Fokus eher auf Kosten, Abdeckung von Geschäftsfähigkeiten und strategischer Passung.

Große IT-Systeme – Konglomerate von einzelnen IT-Komponenten, aber noch klar einem einzelnen geschäftlichen Zweck zuzuordnen – liegen zwischen den beiden oben genannten Kategorien. Die Veranstaltung wird auch für diese Art von Systemen Entwurfs- und Bewertungsansätze vorstellen und untersuchen. Sie folgt dabei dem Ansatz der Problem Frames nach Jackson sowie dem Domain-Driven Design. Auf diese Weise kann das sehr mächtige Werkzeug des Architekturmusters auf die entsprechend größeren Systeme ausgedehnt werden.

Struktur der Veranstaltung

Die Veranstaltung wird zu etwa gleichen Teilen aus Vorlesung und Seminar bestehen. Die Vorlesung wird den Rahmen und den Kontext definieren, und die Studierenden werden einzelne Ansätze im Detail als Seminarvortrag vertiefen.

Ziele

Die Studierenden sollen

  • die grundsätzliche Problemstellungen bei Entwurf und Weiterentwicklung großer IT-Systeme erkennen und verstehen
  • in der Lage sein, mit Hilfe von Problem Frames und Entwurfsmustern (Patterns) die wesentlichen Architekturparadigmen eines IT-Systems festzulegen
  • Architekturen verschiedener Systeme vergleichen, verstehen und einordnen können
  • ein Verständnis der Granularitätsebenen „Komponente / IT-System / IT-Landschaft“ entwickeln