Bei der Entwicklung von Software-Systemen wird oft der Qualität von
Architektur und Design der Software nicht die notwendige Aufmerksamkeit
geschenkt, obwohl sich dies nachteilig auf die Software-Qualität
auswirkt. Diese negativen Folgen zeigen sich jedoch oft erst
mittelfristig.
Hauptsache, die Requirements (aus heutiger Sicht) des Kunden sind
ungefähr umgesetzt, und (wenn vorhanden) die grafische
Benutzerschnittstelle sieht gut aus! Die Folgen zeigen sich dann später
bei Problemen im Zusammenhang mit der Anpassung (Weiterentwicklung) der
Software an neue Kundenbedürfnisse oder veränderte technische
Rahmenbedingungen.
Die Anforderungen an moderne Software-Systeme im Umfeld von e-Business
hinsichtlich ihrer Flexibilität (Erweiterbarkeit) sind jedoch
oft hoch und vielfältig. Um diesen Anforderungen gerecht zu werden ist
eine hohe Qualität von Architektur und Design der Software unabdingbar.
Versucht man nun, Architektur und Design auf dem erforderlichen Niveau
aus der hohlen Hand zu schütteln, wird man sehr viel Blut und Wasser
schwitzen. Wesentlich effizienter und damit auch weniger mühselig lässt
sich das angestrebte Ziel durch den Einsatz von Design-Patterns
erreichen.
In diesem Jour Fix wird zunächst gezeigt, was mit dem Begriff Pattern
überhaupt gemeint ist und welche Arten von Pattern in der
objektorientierten Software-Entwicklung anzutreffen sind. Anschliessend
wird erläutert, wie Design Patterns strukturiert und wie diese durch den
Benutzer zu interpretieren sind. Weiter werden die wichtigsten
Design Patterns aufgezeigt und welche typische Design-Probleme in der
objektorientierten Software-Entwicklung diese lösen helfen. Eine
Übersicht zu den Auswirkungen des Einsatzes von Design Patterns auf die
objektorientierte Software-Entwicklung und die Vorstellung einiger
konkreter Beispiele für den Einsatz von Design Patterns schliessen den
Vortragsteil ab.