Knigge für Softwarearchitekten

Entwurf von Softwarearchitekturen

Peter Hruschka und Gernot Starke

In den letzten Folgen haben wir begonnen, Sie mit dem Lehrplan des iSAQB e.V. [1] bekannt zu machen. In dieser Ausgabe sprechen wir eine Kernaufgabe an: den Entwurf von Softwarearchitekturen. Der iSAQB-e.V.-Lehrplan räumt dieser wichtigen Aktivität großen Raum ein – weshalb wir Ihnen im Java Magazin auch eine Doppelfolge dazu gönnen.


src=“http://entwickler.com/develop/zonen/magazine/onlineartikel/pspic/picture_file/52/iSAQB5028a6bf29d53.jpg?1344841407″ hspace=“10″ vspace=“5″ alt=““>

My Way

Sicherlich kennen Sie den Frank Sinatra der Musik – der über Individualität einen famosen Song geschrieben hat. Lernen Sie hier auch den Frank Sinatra (FS) der Softwarearchitekten kennen – und lauschen Sie seinem Gespräch mit einem Nachwuchsarchitekten (NA):

FS: „Nach Abschluss der detaillierten Systemanalyse musst du das System top-down in Subsysteme zerlegen und jedes Subsystem dann so lange verfeinern, bis die Komponenten mit all ihren Schnittstellen präzise beschrieben sind.“ (holt Atem)

FS: „Das wirfst du dann kurz der Qualitätssicherung hin, um es abgenickt zu bekommen. Dann kannst du dieses Design den Programmierern übergeben, die es in Sourcecode umsetzen. Die Details dazu findest du auf Seite 60 bis 283 in unserem firmenweit festgelegten Vorgehensmodell, und damit garantieren wir CMM-Level1-2-Konformität.“ (holt erneut Atem)

FS: „Während die Programmierer den Sourcecode erstellen, kannst du mit dem Rechenzentrum sprechen und denen die notwendigen Hardwareanschaffungen klarmachen.“

NA (in schüchternem Tonfall): „Wäre es nicht sinnvoller, das Gespräch mit den Betreibern im Rechenzentrum früher zu führen, bevor man die detaillierte Systemzerlegung vornimmt?“

FS (in aggressivem Tonfall): „Nein, die kriegen das schon hin. Hardware-Skalierung ist doch kein Problem.“

Sie merken schon: Wir sind keine Freunde von komplexen „One Size fits all“-Prozessmodellen. Denn für die wichtigen Tätigkeiten, in denen Architekten Entwurfsentscheidungen treffen, gibt es viele Wege, die zum Ziel führen. Als guter Architekt kennen Sie mehrere davon und wählen Ihre Vorgehensweise anhand der Randbedingungen und Anforderungen aus. Betrachten Sie diese unterschiedlichen Ansätze oder Wege als Optionen, die Ihnen in jeder Entwurfssituation zur Verfügung stehen. Diese unterschiedlichen Wege sind auch Kerninhalt des iSAQB-Lehrplanabschnitts zum Thema „Entwicklung von Softwarearchitekturen“. In Abbildung 1 haben wir wesentliche Vorgehensweisen zusammengefasst. Die eine, rot umrandete, ist definitiv nicht das, was Sie heute noch machen sollten (falls Sie das jemals gemacht haben): Big Design Up Front (auch BDUF genannt). Das funktioniert nach unserer Meinung nicht sonderlich zuverlässig.

Abb. 1: Verschiedene Vorgehensweisen beim Entwurf
Geschrieben von
Peter Hruschka und Gernot Starke
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.