Dieses Architektur-Seminar, das sich in erster Linie an Entwickler richtet, möchte zeigen, wie Architekten und Entwickler optimal zusammenarbeiten.
Das Seminar vermittelt die Verantwortung, die der Entwickler am Entstehen der Architektur trägt und welche Auswirkungen Architektur auf den Entwickleralltag hat. Die Teilnehmer lernen, dass Architektur sowohl von einem einzelnen Architekten als auch vom Team selbst entwickelt werden kann und welche Voraussetzungen und Konsequenzen die Vorgehen jeweils haben.
Die Entwickler sehen an vielen Beispielen, wie sie Architektur konstruktiv und iterativ- inkrementell mit- und weiterentwickeln können, welche Rolle Architekten und Entwickler dabei jeweils spielen und wie Softwarearchitektur ein leichtgewichtiges Werkzeug zur Sicherstellung der Qualität der Software sein kann.
Sie erleben an einem konkreten Fallbeispiel, in Rollenspielen und Übungen, was es für Entwickler konkret bedeutet nicht einfach nur zu programmieren, sondern auch eine explizite Architektur zu haben und welche Vorteile und Auswirkungen das hat.
Inhalt
- Unterscheiden zwischen Design und Architektur
- Zweck und Nutzen von expliziter Architektur - wann ist Architektur "gut"
- Agile Architektur
- Mit Szenarien arbeiten
- Betrachtung des Konfliktes "Features oder Architektur"?
- Rollen im Zusammenhang mit Architektur
- Modularisierung im Großen
- Abhängigkeitsmanagement
- Arten von Abhängigkeiten
- Querschnittliche Aspekte (cross cutting concerns)
- "Konzepte" in der Architektur
- Arbeiten mit Mustern und Prinzipien
- Quick Hacks, aber richtig (wenn die Vorgaben zur Last werden)
- Arc42 effektiv nutzen
- Qualität in Architektur und Implementierung
- Architektur und Tests
- Konsistenz zwischen Code und Architektur
- Feedback aus der Implementierung als Architekturtreiber
- Prototyping für Architektur
- Rolle von Entwicklern bei der Architekturbewertung
- Risiken kommunizieren
Voraussetzungen
- Programmierkenntnisse
- Erfahrungen aus Softwareprojekten