Eine Softwarearchitektur bildet bekanntlich das Rückgrat jedes softwareintensiven Systems. Dementsprechend hoch sind die Qualitätsanforderungen an die Architektur, speziell an die nichtfunktionalen Eigenschaften.
Architekturentscheidungen mit strategischer Auswirkung lassen sich später nur aufwendig rückgängig machen. Daher ist ständige Qualitätskontrolle eine unabdingbare Voraussetzung für hohe architektonische Qualität und Nachhaltigkeit.
Szenariobasierte Architekturanalysen fungieren (neben erfahrungsbasierten Methoden und Testen) als probates Mittel, um diese Qualitätsüberprüfung vorzunehmen. Architekten und Entwickler benötigen dafür einen entsprechenden methodischen Werkzeugkasten. Genau diesen möchte das Tutorium in Theorie und Praxis bereitstellen.
Zielpublikum: Architekten, Entwickler, Tester
Voraussetzungen: Praxiskenntnisse im Software-Engineering
Schwierigkeitsgrad: Fortgeschritten
Extended Abstract
Eine Softwarearchitektur bildet bekanntlich das Rückgrat jedes softwareintensiven Systems. Dementsprechend hoch sind die Qualitätsanforderungen an die Architektur, speziell an die nichtfunktionalen Eigenschaften. Wie schon Foote/Yoder anmerken: "If you think good software architecture is expensive, try bad software architecture".
Architekturentscheidungen mit strategischer Auswirkung lassen sich später nur aufwendig rückgängig machen. Daher ist ständige Qualitätskontrolle eine unabdingbare Voraussetzung für hohe architektonische Qualität und Nachhaltigkeit. Allerdings sollten Architekturüberprüfungen innerhalb eines Projekts effizient und effektiv erfolgen. Andernfalls führen diese Überprüfungen unter Umständen zu Widerständen.
Szenariobasierte Architekturanalysen fungieren als probates Mittel, um Qualitätsüberprüfungen vorzunehmen. Sie lassen sich auch gut in andere Architekturanalyse-Methoden integrieren. Wegen Unkenntnis oder Befürchtungen hinsichtlich des dafür erforderlichen Aufwandes finden diese Methoden allerdings nur selten Anwendung. Dabei sind die meisten Vorurteile nicht gerechtfertigt.
Architekten und Entwickler benötigen einen entsprechenden methodischen Werkzeugkasten. Genau diesen möchte das Tutorium bereitstellen. Damit es nicht bei rein theoretischen Lerninhalten bleibt, nehmen Übungen mindestens die Hälfte der Zeit ein. Gegenstand der Übungen ist ein eigenes Projekt der Teilnehmer. Diese Vorgehensweise hat schon in den letzten OOP-Konferenzen sehr erfolgreich funktioniert. Der Teilnehmer soll motiviert werden, das Gelernte unmittelbar in seinem Projektumfeld anzuwenden.