Suchen und Finden
Service
Infos und Kontakt
7 Typische Architekturaspekte (S. 181-182)
We shape our buildings:
thereafter they shape us. Winston Churchill
Fragen, die dieses Kapitel beantwortet:
Was ist Entwurf-durch-Routine und was bedeutet Entwurf-durch-Innovation?
Was sind Architekturmuster und Architekturbausteine?
Wie behandelt man folgende Aspekte in Software-Entwürfen:
– Persistenz
– Geschäftsregeln
– Integration, Verteilung und Kommunikation
– Technik und Ergonomie graphischer Oberflächen
– Ablaufsteuerung und Internationalisierung
– Workflow-Management
– Sicherheit
– Protokollierung
– Ausnahme- und Fehlerbehandlung
Routine und Innovation im Software Engineering
Der Ausdruck „Software Engineering" entstand 1969 im Zuge eines von der NATO veranstalteten Workshops ([NATO69]). Seither schmückt sich unsere Disziplin mit den Lorbeeren des „ingenieurmäßigen Vorgehens", wobei die Praxis sich doch erheblich von anderen Ingenieurdisziplinen unterscheidet. So ist es im Maschinenbau, der Elektrotechnik und der Gebäudearchitektur durchaus üblich, bei Neuentwicklungen auf bereits vorhandene Lösungen zurückzugreifen. Bei der Konstruktion einer Flugzeugbremse werden die beteiligten Ingenieure auf dokumentierte Erkenntnisse und Lösungen zurückgreifen und diese gegebenenfalls modifizieren. Kaum ein Maschinenbauingenieur käme beispielsweise auf die Idee, die für eine Bremse notwendigen Hydraulikpumpen, die Bremsscheiben und die Steuerelektronik von Grund auf neu zu entwerfen.
In Softwareprojekten sieht die Realität gänzlich anders aus: Dort entwickeln Softwarearchitekten oftmals sämtliche für ein System benötigten Bestandteile neu, obwohl große Teile davon in anderen, ähnlichen Systemen bereits vorhanden sind.
Die klassischen Ingenieurdisziplinen verlassen sich im Gegensatz zur Informatik darauf, dass ihr Wissen in einer für Praktiker anwendbaren Form kodifiziert wird. Sie praktizieren damit eine Form des Entwurfs, den [Shaw96a] als Entwurf- durch-Routine bezeichnet. Diese Art des Entwurfs ist charakterisiert durch die Wiederverwendung großer Teile früherer Lösungen. Mit dieser Art des Entwurfs können Ingenieure die weitaus meisten praktischen Probleme lösen!
Im Gegensatz dazu erfordert der Entwurf-durch-Innovation die Entwicklung neuartiger Lösungen für bislang unbekannte Aufgabenstellungen. Diese innovative Arbeit mag spektakulärer oder auch interessanter sein, in der Praxis tritt sie jedoch höchst selten auf. Im Bereich der praktischen Informatik entstehen die meisten Softwaresysteme in bekanntem Kontext. Dennoch arbeiten Informatiker häufig nach dem Verfahren Entwurf-durch-Innovation. Sie verzichten dadurch auf Wiederverwendung und erhöhen gleichzeitig das Projektrisiko.
Entwerfen Sie möglichst durch-Routine. Verwenden Sie erprobte Konzepte und Ansätze weiter. Pflegen Sie in Ihrer Organisation ein Wertesystem, das Wiederverwendung höher bewertet als Neuerfindung.
Zahlreiche solcher Muster finden Sie in der Literatur (etwa: [Gamma95], [Buschmann96], [Larman2001]).
Muster zu vielen Aspekten der Software-Entwicklung finden Sie im Internet unter den Tagungsberichten der Pattern-Konferenzen. Ein guter Startpunkt ist die Website www.hillside.net/~patterns
Der nachfolgende Katalog von Architekturaspekten unterstützt den Entwurfdurch- Routine und hilft Ihnen, Software ingenieurmäßig zu entwerfen, indem er Lösungsansätze für häufig wiederkehrende Architekturfragen aufführt.
Darum Architekturaspekte
In diesem Buch fasse ich unter dem Begriff Architekturaspekte einige der Dinge zusammen, die Software-Architekten bei der Entwicklung von IT-Systemen häufig und intensiv beschäftigen. Ziel dieses Kapitels ist es, Ihnen den Kontext dieser Aspekte und erste Lösungsansätze aufzuzeigen und Sie betreffend weiterführender Aspekte auf die einschlägige und vertiefende Literatur zu verweisen.
Alle Preise verstehen sich inklusive der gesetzlichen MwSt.; Ersparnis im Vergleich zur Printversion


















