Kolumne: Knigge für Softwarearchitekten

Der Zehnkämpfer


hruschka_knigge_isaqb.tif_fmt1.jpg

In der letzten Folge haben wir Sie mit dem Lehrplan des iSAQB e.V. [1] bekannt gemacht. Einer der wichtigsten Punkte auf Ihrem Weg zum Zertifikat „CPSA-F“ (Certified Professional for Software Architecture, Foundation Level) ist ein solides Verständnis des Berufsbilds eines Softwarearchitekten.

Softwarearchitekten – die Zehnkämpfer der IT

Wir teilen die (verbreitete) Meinung, dass Softwarearchitekten Technologie gut kennen müssen, um die wesentlichen technischen Entscheidungen für ein System treffen und verantworten zu können. Softwarearchitekten müssen darüber hinaus über eine Vielzahl weiterer Fähigkeiten verfügen und entsprechende Aufgaben erledigen können. Die verantwortungsbewussten Über-den-Tellerrand-Gucker bilden in Projekten ein wichtiges Bindeglied zwischen unterschiedlichen Stakeholder-Gruppen wie Managern, Requirements Engineers, Entwicklungsteams, Testern und Administratoren oder Hardwareingenieuren.

Aufgaben von Softwarearchitekten

Unserer Ansicht nach müssen Softwarearchitekten sechs wichtige Aufgaben lösen, um eine angemessene, qualitativ hochwertige Lösung zu gegebenen Anforderungen entwickeln zu können. Das erscheint Ihnen zuviel, weil „System entwerfen“ sich nach nur einer einzigen Aufgabe anhört? Softwarearchitekten müssen aber in der Tat etwas mehr leisten (Abb. 1):

  • Anforderungen klären: Machen Sie sich ein Bild von Qualität und Stabilität der Anforderungen. Bessern Sie nach, was Sie für sinnvoll halten. Fordern Sie insbesondere explizite, konkrete und operationalisierte Qualitätsziele von Ihren Kunden oder Auftraggebern ein. Grenzen Sie Ihr System fachlich und technisch sauber von allen bekannten Nachbarsystemen ab.

  • Strukturen entwerfen: Dies gilt oft als die Hauptaufgabe von Softwarearchitekten. Sie müssen die grundlegenden Bausteine des Systems festlegen und für alle Projektbeteiligten nachvollziehbar dokumentieren. Das Ergebnis dieser Tätigkeit – die Strukturen des Systems – ist vor allem für die Entwickler die maßgebliche Vorgabe, denn sie müssen gemäß dieser Strukturen und den Architektenentscheidungen das System implementieren. Ähnlich wie Sie sich als Hauskäufer wahrscheinlich für mehrere Strukturen interessieren (etwa: Grundriss, Elektro-, Heizungs- und Wasserleitungsplan), stehen Ihnen für die Architektur mehrere relevante Strukturen oder Sichten auf das System zur Verfügung [2].

  • Technische Konzepte entwerfen: Manche Entwurfsentscheidungen gelten über einzelne Bausteine hinweg und schlagen sich an vielen Stellen im Quel...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang