Basiswissen Softwarearchitektur
eBook - ePub

Basiswissen Softwarearchitektur

Verstehen, entwerfen, wiederverwenden

Torsten Posch, Klaus Birken, Michael Gerdom

Share book
  1. 380 pages
  2. German
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Basiswissen Softwarearchitektur

Verstehen, entwerfen, wiederverwenden

Torsten Posch, Klaus Birken, Michael Gerdom

Book details
Book preview
Table of contents
Citations

About This Book

Dieses Buch vermittelt das grundlegende Wissen, um Softwarearchitekturen zu entwerfen und richtig einzusetzen. Es beantwortet u.a. die Fragen: Was ist Softwarearchitektur? Was ist eine gute Softwarearchitektur? Wie wird sie entwickelt? Ausführlich werden Aufgaben und Werkzeuge des Softwarearchitekten, wie Dokumentation mit UML 2, Architekturstile und -muster, behandelt. Ein weiterer Schwerpunkt ist Software im industriellen Maßstab: Produktlinienansätze, MDA und - neu in der 3. Auflage - domänenspezifische Sprachen. Das Buch richtet sich an Softwareentwickler und Projektleiter.

Frequently asked questions

How do I cancel my subscription?
Simply head over to the account section in settings and click on “Cancel Subscription” - it’s as simple as that. After you cancel, your membership will stay active for the remainder of the time you’ve paid for. Learn more here.
Can/how do I download books?
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
What is the difference between the pricing plans?
Both plans give you full access to the library and all of Perlego’s features. The only differences are the price and subscription period: With the annual plan you’ll save around 30% compared to 12 months on the monthly plan.
What is Perlego?
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Do you support text-to-speech?
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Is Basiswissen Softwarearchitektur an online PDF/ePUB?
Yes, you can access Basiswissen Softwarearchitektur by Torsten Posch, Klaus Birken, Michael Gerdom in PDF and/or ePUB format, as well as other popular books in Informatik & Systemarchitektur. We have over one million books available in our catalogue for you to explore.

Information

Publisher
dpunkt
Year
2012
ISBN
9783864910432
Edition
3

Teil II

Erstellung der
Softwarearchitektur

3 Vorgehen

Der künstlerische Arbeitsprozess kommt mir vor wie eine Transsubstantiation, wie eine Verwandlung, wobei das Ich sich wie ein Beobachter fühlt und das Werk ihr Zeuge zu sein scheint.
Sofia Kouldakidou, Herdecke/Ruhr
Können Sie sich vorstellen, dass der Potsdamer Platz in Berlin entstanden ist, indem sich alle Handwerker und Bauarbeiter am Tag des Projektbeginns treffen, ein paar grobe Absprachen treffen, wie z. B. wir wollen eine herausragende Architektur, Platz für 1000 Büros, drei Kinos, fünf Hotels und ein Theater? Zudem müssen wir in einem Jahr fertig sein, und es darf nicht mehr als 30 Millionen Euro kosten. Darauf beginnt jeder mit seinen Arbeiten. Während die Gebäude errichtet werden, sprechen sich die Beteiligten immer wieder ab, sobald irgendwelche Fragen aufkommen. Malen Sie sich aus, wie und ob überhaupt das Bauvorhaben in diesem Fall abgeschlossen worden wäre!
Die letzten beiden Kapitel haben behandelt, was Softwarearchitektur ist, welche Aufgaben sie hat und wie sie im organisatorischen Umfeld eingebunden ist. Im zweiten Teil dieses Buches wollen wir Ihnen aufzeigen, wie Softwarearchitektur erstellt wird. Der eigentliche Entwurf der Architektur ist dabei nur ein Schritt. Wichtig ist es auch, die Architektur auf den richtigen Annahmen aufzubauen und sie angemessen zu dokumentieren. Ebenso müssen Sie bewerten können, ob Sie auf die richtige Architektur setzen, bevor in die Implementierung übergegangen wird.
Dieses Kapitel gibt einen Überblick über das gesamte Vorgehen der Architekturerstellung. Die einzelnen Schritte und Bausteine werden in den anschließenden Kapiteln dann noch ausführlicher beschrieben.

3.1 Überblick

Das Erstellen einer Softwarearchitektur ist mehr als der alleinige Entwurf eines Architekten im stillen Kämmerlein. Gerade ein solches Vorgehen ist bei komplexeren Projekten zum Scheitern verurteilt. Die Kommunikation zwischen allen Beteiligten ist ein wesentliches Element, das ein Vorgehen berücksichtigen muss. Abbildung 3–1 gibt einen Überblick über die wichtigsten Schritte während der Architekturerstellung.
image
Abb. 3–1 Überblick des Vorgehens zur Erstellung einer Softwarearchitektur
Das Vorgehen kann in drei Bereiche eingeteilt werden:
image
Vorbereitungen für den Entwurf
image
Entwurf, Dokumentation und Bewertung
image
Umsetzung der Architektur
Jeder der drei Bereiche wird im Folgenden kurz angerissen. Im weiteren Verlauf des Kapitels werden wir dann auf jeden Bereich aus der Perspektive des Vorgehens noch genauer eingehen. Darauf aufbauend werden einzelne Aspekte wie Entwurf, Dokumentation und Bewertung in späteren Kapiteln detaillierter ausgeführt.
Vorbereitungen für den Entwurf
Bevor mit der Erstellung der Architektur begonnen wird, findet die Anforderungsanalyse statt. Diese liefert wichtige Eingangsinformationen für die Architektur. Insbesondere ist dies die Anforderungsspezifikation, bestehend aus funktionalen Anforderungen mit Use Cases, nichtfunktionalen Anforderungen sowie technischen Anforderungen und ein zu den Anforderungen passendes fachliches Modell. Der Anforderungsanalyse schließt sich die Spezifikation der Einflussfaktoren als weiterer Vorbereitungsschritt an. Die wichtigsten Ergebnisse dieses Schrittes sind die Einflussfaktoren spezifiziert über Profile und Szenarien sowie Risiken und dazu passende Strategien. Nun sind die wichtigsten Vorbereitungen für den Entwurf der Architektur getroffen.
Entwurf, Dokumentation und Bewertung
Der nächste Schritt ist der eigentliche Entwurf der Architektur durch den Architekten oder das Architekturteam. Gleichzeitig mit dem Entwurf wird die Softwarearchitektur angemessen dokumentiert. Einfluss auf den Entwurf nehmen, neben den Ergebnissen aus der Vorbereitung, verschiedene Formen des Wissens. Dazu zählen ein gewisses Basiswissen, Domänenwissen, Firmen-Know-how, die Erfahrung des Architekten sowie Heuristiken für den Entwurf. Die entworfene Architektur wird immer wieder bewertet. Hierfür kommen verschiedene Bewertungsmethoden, wie z. B. die Ad-hoc-Bewertung, das Early Discovery Review oder ein umfangreiches Assessment zum Einsatz. Auf Basis des Ergebnisses einer jeden Bewertung wird iterativ mit dem Entwurf der Architektur fortgefahren.
Umsetzung der Architektur
Wir haben nun eine dokumentierte und bewertete Softwarearchitektur. Auf Basis dieser kann mit der Umsetzung begonnen werden. Das bedeutet, die Software wird auf Grundlage der Architektur implementiert. Im Rahmen der Umsetzung ist die Architektur jedoch nicht eingefroren, sondern wird weiter reifen und muss gepflegt werden: Eine ständige Überarbeitung der Architektur ist notwendig.
Tailoring, Agilität, iterativ und inkrementell
Es gibt keinen Prozess, der für jede Art von Projekt passend ist. Deshalb müssen Prozesse den gegebenen Umständen angepasst werden. Man spricht dann von Prozess-Tailoring. Jedoch gibt es grundlegende Konzepte bei der Erstellung einer Softwarearchitektur, die, wenn einmal verstanden, die Basis für einen solchen Prozess legen können. Das im Folgenden noch genauer vorgestellte Vorgehen soll deshalb als Sammlung solcher grundlegenden Konzepte verstanden werden. Sie sind in einer logischen, aufeinander aufbauenden Reihenfolge beschrieben. Anfangs hilft Ihnen das, die Konzepte im Zusammenhang zu verstehen. Haben Sie deren Bedeutung erst einmal verinnerlicht, können Sie daraus jeweils Ihren angepassten und der Situation angemessenen Prozess im Sinne eines agilen Vorgehens gestalten. Sehen Sie den Ablauf der einzelnen Schritte auch nicht zu streng. Die Erstellung einer Softwarearchitektur ist ein inkrementeller und iterativer Prozess. Sie werden deshalb viele kleine Schleifen innerhalb des Vorgehens drehen, um die Architektur Stück für Stück wachsen und reifen zu lassen.
Projektarten und Fallstudie
Die vorgestellten Konzepte eignen sich nicht nur für die Entwicklung komplett neuer Systeme. Die meisten der heutigen Entwicklungsprojekte zielen darauf ab, bestehende Produkte zu erweitern. Auch werden zum großen Teil fertige Komponenten, wie Betriebssysteme oder Datenbanken, hinzugekauft. Am Ende des zweiten Teils dieses Buches finden Sie zudem eine Fallstudie. Diese stellt sozusagen eine Instanz des Vorgehensmodells dar und veranschaulicht die wichtigsten Schritte und Aspekte nochmals an einem konkreten Beispiel.

3.2 Vorbereitungen für den Entwurf

Vorbereitend für den Entwurf finden die Anforderungsanalyse sowie die Spezifikation der Einflussfaktoren statt. Die Anforderungsanalyse ist ein sehr umfassendes Gebiet für sich und als solches nicht Bestandteil dieses Buches. Hier sol...

Table of contents