|
Architekturbeschreibung
Die Architektur eines Software-Systems kann aus unterschiedlichen Standpunkten
bzw. Sichten beschrieben werden. Nach einer grundlegenden Einführung
in diese Konzepte wird in diesem Kapitel zur Konkretisierung die
standardisierte Notation der Unified Modeling Language (UML) mit Blick
auf deren Möglichkeiten zur Architekturbeschreibung erläutert. Mit der
Version 2 der UML sind mit den sogenannten Kompositionsstrukturdiagrammen
auch Möglichkeiten zur Software-Architekturbeschreibung in die
UML eingeflossen. Mit den UML-Verteilungsdiagrammen war bereits in älteren
Versionen der UML eine (beschränkte) Möglichkeit zur Beschreibung
von Systemarchitekturen gegeben. Ergänzend wird eine Übersicht über Architekturbeschreibungssprachen
gegeben.
Vorgehen bei der Architektur- und Komponentenentwicklung
Das Ziel ist die Beschreibung einer Architektur, der Prozess beschreibt den
Weg dorthin. Die Entwicklung einer Architektur ist ein sehr komplexer
Prozess, bei dem viele Tätigkeiten miteinander verwoben sind. Zahlreiche
Aspekte greifen bei der Entscheidungsfindung ineinander, eine Reihe von
Prinzipien ist gleichzeitig zu beachten. Dieses Kapitel führt in die grundlegenden
Prinzipien und Zusammenhänge der Entscheidungsfindung im Prozess
der Architekturbeschreibung ein. Dazu wird der Architekturentwicklungsprozess
modellhaft beschrieben.
Modellgetriebene Software-Entwicklung
Bei der modellgetriebenen Software-Entwicklung werden Software-Systeme
aus Modellen (weitgehend) durch Transformationen generiert. Die modellgetriebene
Entwicklung stellt somit eine Nutzung von Architekturmodellen
dar. Dieser Ansatz trägt zum Nutzen einer expliziten Architekturmodellierung
bei und beinflusst diese maßgeblich, weswegen dieses Kapitel in diesem
Teil platziert ist. Dabei kann modellgetriebene Entwicklung auch als
Wiederverwendungstechnik gesehen werden, da Metamodelle und Transformationen
projektübergreifend wiederverwendet werden.
32 Teil I: Konstruktion von Architekturen
Das vorliegende Kapitel wurde von den Mitgliedern des GI-Arbeitskreises
MDA (http://sdqweb.ipd.uka.de/akmda/) erstellt und überarbeitet. Die ursprüngliche
Version der ersten Auflage stammte von Axel Uhl.
|
|
Entwurf serviceorientierter Architekturen
Der Entwurf serviceorientierter Architekturen ist geprägt von der Nutzung
von Software-Services. Dabei verspricht die Nutzung von Software-Services
(also von Software-Systemen, die durch Dienstleister betrieben werden) eine
Verringerung der Betriebskosten und eine erhöhte Flexibilität durch einfachen
Austausch von Diensten sowie eine einfache (Neu-)Komposition von
Diensten. Dieses Kapitel gibt zunächst eine grundlegende Einführung in das
Thema SOA und motiviert seine Relevanz. Die konzeptionellen Elemente
von SOA werden im Detail erläutert, bevor der wissenschaftliche und
wirtschaftliche Hintergrund von SOA beleuchtet sowie die Einführung und
Umsetzung einer SOA in einem Unternehmen betrachtet wird.
Anwendungslandschaften serviceorientiert gestalten
Zur Gestaltung einer Anwendungslandschaft greifen Software-Architekten
auf eine Menge von Prinzipien und Methoden zurück, um die Architektur
eines Systems zu erstellen. Quasar Enterprise beschreibt solche Prinzipien
und Methoden, die sich auf das übergeordnete Konzept der Services abstützen.
Ihr Einsatz führt zu einer serviceorientierten Architektur der Anwendungslandschaft.
Bevor in diesem Kapitel die einzelnen Verfahrensbausteine
von Quasar Enterprise erläutert werden, wird der Bezug zwischen der
strukturierten Sicht auf Anwendungslandschaften und dem Thema der serviceorientierten
Architekturen hergestellt. Anhand eines fiktiven, aber realistischen
Szenarios werden die Verfahrensbausteine von Quasar Enterprise
erläutert.
|