Column #col2

Schulungsbeschreibung: Softwarearchitektur und Patterns

1. Grundlagen der Objekttechnologie
Sie rekapitulieren die wichtigsten Konzepte von Analyse und Design objektorientierter Systeme, welche Rolle diese Konzepte in den verschiedenen Phasen eines iterativen inkrementellen Softwareentwicklungsprozesses spielen und wie die Konzepte mit der UML visualisiert werden.

2. Grundlagen der Softwarearchitektur
Nach einer Begriffsdefinition lernen Sie verschiedene Aspekte der Softwarearchitektur kennen. Sie erfahren, wie eine Softwarearchitektur durch architektonische Stile geprägt wird, und lernen die wichtigsten Stile kennen. Sie lernen, welchen Stellenwert die Strukturierung, der Einsatz gemeinsamer Mechanismen, Werkzeuge, Dokumentation und Teamaufbau für den Projekterfolg haben.

3. Softwarearchitekturen für Teilsysteme
In diesem Kapitel lernen Sie Softwarearchitekturen verschiedener Teilsysteme wie Klassenbibliotheken, Frameworks und Komponenten kennen, indem die Merkmale sowie die Vor- und Nachteile der verschiedenen Stile gezeigt werden. Darüber hinaus erfahren Sie, wie man die verschiedenen architektonischen Stile kombinieren kann.

4. Typische Softwarearchitekturen
Hier lernen Sie die Merkmale typischer Softwarearchitekturen kennen. Sie erfahren, wie unterschiedliche Anforderungen eine Softwarearchitektur prägen. Sie lernen, welche Vorzüge Klassenbibliotheken, Frameworks, 3-Tier- und n-Tier-Architekturen haben, und sehen, wie diese für Web-Anwendungen und komponentenbasierte Systeme erweitert werden können.

5. Modellierung von Softwarearchitekturen
Sie lernen, wie Sie eine Softwarearchitektur mittels mehrerer Sichten und mit Hilfe der UML beschreiben können. Sie erfahren, wie Sie die Architektur durch Finden, Verwalten und Kontrollieren von Abhängigkeiten optimieren können. Sie lernen, wie Sie Systeme, Mechanismen und Muster mit Hilfe von Paketen und Kollaborationen modellieren und strukturieren können.

6. Management von Abhängigkeiten
In diesem Kapitel erfahren Sie, wie wichtig das Management von Abhängigkeiten zwischen Paketen ist, um eine tragfähige Architektur zu erhalten, die besser wartbar, erweiterbar und wieder verwendbar ist. Dazu stellen wir Ihnen die unterschiedlichen Formen von Abhängigkeiten vor und wie diese minimiert werden können. Sie erfahren außerdem, warum das Management von Abhängigkeiten ein kontinuierlicher Prozess während der gesamten Projektlaufzeit ist.

7. Erweiterbare Anwendungen
Es gibt immer Gründe, Anwendungen zu erweitern. In diesem Kapitel lernen Sie, wie Sie mit Hilfe von Plugins Ihre Anwendung erweitern können. Je nach Aufgabenstellung stehen Ihnen dabei verschiedene Arten von Plugins zur Verfügung, die wir Ihnen vorstellen. Außerdem lernen Sie, wie Plugins zur Anwendung dazugeladen werden und welche Ladestrategien es gibt.

8. Patterns (Muster)
Hier lernen Sie die Grundlagen über Muster. Sie erfahren, was Sie beim Einsatz von Mustern beachten müssen und welche Arten von Mustern es gibt. Sie lernen, wie Sie Muster finden, anpassen und dokumentieren. Sie lernen die Probleme kennen, die durch den falschen Einsatz von Mustern auftreten können.

9. Entwurfsmuster
Hier lernen Sie einige wichtige grundlegende Entwurfsmuster wie z. B. „Abstract Factory“, „Prototype“, „Composite“, „Decorator“ und „Builder“ kennen. Anhand von Beispielen wird gezeigt, wie diese Muster kombiniert und an unterschiedliche Situationen angepasst werden können. Sie erfahren, wie der systematische Einsatz von Mustern die Qualität Ihres Entwurfs entscheidend verbessern kann. Anschließend stellen wir Ihnen flexible Erzeugungsmuster (wie „Pluggable Factory“ und „Facade“) vor, und Sie erfahren anhand von Beispielen, wie Sie diese verwenden können.

10. JUNIT – ein Testframework mit Patterns
In diesem Kapitel lernen Sie, wie man durch konsequente Anwendung von Patterns ein Testframework robust und einfach entwerfen und seine Funktionalität schrittweise erweitern kann.

11. Druckarchitektur für .NET mit Patterns
Am Beispiel von .NET zeigen wir Ihnen in diesem Kapitel, wie Sie die existierende Druckarchitektur mit Patterns so erweitern können, dass auch sehr große und anspruchsvolle Dokumente gedruckt werden können.

12. Architekturmuster
Sie lernen, wie Sie durch den Einsatz von Architekturmustern zu einer konkreten Softwarearchitektur kommen. Am Beispiel des „Broker"-Pattern lernen Sie ein wichtiges Architekturmuster kennen und erfahren, welche Probleme in der Praxis gelöst werden müssen.

In ergänzenden Kapiteln stellen wir Ihnen entsprechend dem Katalog der „Gang of Four“ weitere Entwurfs-, Erzeugungs-, Struktur- sowie Verhaltensmuster vor.