Lesezeit: 2 Minuten

 

Architekturarbeit im Zeitalter Cloud-nativer Architekturen und DevOps Teams - Teil 2


Allgemeine Aufgaben eines Softwarearchitekten

Bevor wir uns mit den Aufgabenstellungen der Softwarearchitekten im Cloud-native-Umfeld auseinandersetzen, lohnt sich ein Blick auf die Lehrmeinung bzgl. der Aufgaben eines Softwarearchitekten.

Softwarearchitekten sind verantwortlich für die Erreichung der Qualität und der gewünschten Funktionalität eines softwarebasierten Systems. Zwar ist diese Rolle in allen Phasen des Software Lifecycles beteiligt, i.d.R. aber nicht für die Umsetzung der Funktionalität verantwortlich.

System- und Schnittstellenentwurf

Ein wichtiger Bestandteil des Aufgabenspektrums befasst sich logischerweise mit dem abstrakten high-level Entwurf der Systemkomponenten und deren Beziehungen (in Form von Schnittstellen) zueinander. Es geht darum, eine Abstraktion mit einem geeigneten Modul-Schnitt zu finden, der einerseits möglichst verständlich und fachlich getrieben sein sollte, andererseits im Sinne von 'divide et impera' die Gesamtkomplexität des Zielsystems in verdaubare Häppchen zerlegt, denen sich einzelne Entwicklungsteams parallel und möglichst unabhängig voneinander widmen können.

Qualitätsziele

Die Architektur eines Systems sollte dabei nachweislich von den für das Produkt relevanten Qualitätszielen (siehe ISO 25010) beeinflusst werden (z.B. über den Aufbau von Qualitätsbäumen bzw. CTQ Analysen).

Dabei muss der Architekt anhand der Anforderungen und Gespräche mit den Stakeholdern entscheiden, welche Qualitätsziele priorisiert werden. Es gibt durchaus komplementäre, unverträgliche Ziele, für die es einen geeigneten Trade-Off zu finden gilt.

Qualitätsszenarien & Fitness Functions

Mit Hilfe von messbaren, konkreten Qualitätsszenarien ("das System sollte performant sein" vs. "die Antwortzeit bei 100 parallel arbeitenden Benutzern sollte im Schnitt unter 100 ms liegen") kann die Systemarchitektur jederzeit hinsichtlich Tragfähigkeit überprüfbar sein. Am Ende werden diese Entscheidungen pragmatisch in einer zielgruppengerechten Architekturdokumentation erfasst.

Für die kontinuierliche Einhaltung von Architekturzielen und -vorgaben haben sich Fitness Funktionen bewährt. Dabei handelt es sich um statische Analysen, eine Menge an Regeln und Tests auf Architekt-Ebene, die idealerweise als fester Bestandteil der CI/CD Pipelines verankert sein sollten und ergo immer mitlaufen.

Arbeitsalltag eines Architekten

Einen großen Teil ihrer Arbeitszeit verbringen Softwarearchitekten allerdings in der Funktion als Ansprechpartner oder Advokat bzw. Vermittler für die unterschiedlichsten Zielgruppen. Ein Softwarearchitekt kommuniziert u.a. „das (nicht) Mögliche“ (Realitätscheck, Erwartungs-Management), macht versteckte Risiken sichtbar und verhandelt notwendige technische/architektonische Investments in das System mit Sponsoren, Projektleitern,

Auftraggebern und Fachbereichen. Zusätzlich wird durch eine enge Zusammen- und Mitarbeit mit den Entwicklungs-, Qualitätssicherungs- und Betriebsteams dafür gesorgt, dass die Architekturvision in der Realität auch die gewünschten Ziele erfüllt. Dabei wird der Sinn der Architektur vermittelt, gegen die Erosion der Architektur gekämpft, es werden technische Hypotheken dokumentiert, neue und bessere Feedbackmechanismen (Logging, Monitoring, Alerting) etabliert und vieles mehr. Und manchmal werden auch naturwissenschaftliche Gesetze ausgehebelt, wenn der Auftraggeber sich das so gewünscht hat.

Soft Skills & Verhalten

Neben den oben aufgeführten, formaleren Kriterien hat sich noch zusätzlich und ergänzend ein "Knigge" für Architekten etabliert, der aus der Praxis gute und weniger gute Verhaltensweisen von Architekten widerspiegelt und kritisch reflektiert. So ist z.B. eine dogmatische, belehrende Haltung beim Umgang mit Entwicklerteams wenig zuträglich. Der Architekt sollte für Ideen und Impulse aus den Entwicklungs-Teams ein offenes Ohr haben - Stichwort Schwarm-Intelligenz: Hive Minds kommen schließlich meistens zu besseren Ergebnissen als einzelne Personen.
 

Ausblick

Welchen Einfluss haben Cloud-native Technologien und die daher eingehenden neuen Arbeitsweisen auf das Rollenverständnis, die Aufgaben und Arbeitsweisen eines Software-Architekten? Wie gestaltet sich die Zusammenarbeit insbesondere mit DevOps Teams, die zunehmend mehr Autonomie haben und was gibt es da zu beachten?

Das nächste Kapitel "Cloud-native Technologie schafft neue Möglichkeiten" liest du im nächsten Blogbeitrag am 25. November 2022.


 

 

Blogautor

Dr. Edgar Stoffel
Software Architect ARS Computer und Consulting GmbH
Ihr Erfolg ist unser Ziel

Stehen Sie vor komplexen IT-Projekten? Mit unserer Expertise bieten wir Ihnen maßgeschneiderte Lösungen. Erfahren Sie mehr.

Werde Teil unseres Teams

Wir suchen ständig nach neuen Talenten. Für dich haben wir genau die richtige Stelle. Schau dir unsere offenen Positionen an.

Noch Fragen? Wir helfen Ihnen gerne!

Blog 10.11.22

Architekturarbeit im Zeitalter Cloud-nativer Architekturen 2

Aufgaben von Softwarearchitekten im Cloud-native-Umfeld, benötigte Skills und ihr Arbeitsalltag zwischen Kundenanforderungen, Zieldefinition und Deadlines.

Blog 24.11.22

Architekturarbeit im Zeitalter Cloud-nativer Architekturen 3

Gedanken zu Möglichkeiten von Cloud-native-Architekturen und Kriterien zur Auswahl der Technologie: Standard nehmen oder sich dem Cloud-Anbieter ergeben?

Blog 24.11.22

Architekturarbeit im Zeitalter Cloud-nativer Architekturen 3

Gedanken zu Möglichkeiten von Cloud-native-Architekturen und Kriterien zur Auswahl der Technologie: Standard nehmen oder sich dem Cloud-Anbieter ergeben?

Blog 27.10.22

Architekturarbeit im Zeitalter Cloud-nativer Architekturen 1

Die beschleunigte Digitalisierung und ihr Einfluss auf Softwarearchitekturen und IT-Teams beschreibt der Autor. Sind Cloud-native-Strategien sinnvoll?

Blog 27.10.22

Architekturarbeit im Zeitalter Cloud-nativer Architekturen 1

Die beschleunigte Digitalisierung und ihr Einfluss auf Softwarearchitekturen und IT-Teams beschreibt der Autor. Sind Cloud-native-Strategien sinnvoll?

Blog 22.12.22

Teil 5 - Einfluss von Cloud-native auf die Architekturarbeit

Wir beleuchten technische Aspekte von cloud-native Architekturen, die Vorteile verteilter Systeme und wie wichtig API-Management-System ist.

Blog 22.12.22

Teil 5 - Einfluss von Cloud-native auf die Architekturarbeit

Wir beleuchten technische Aspekte von cloud-native Architekturen, die Vorteile verteilter Systeme und wie wichtig API-Management-System ist.

Blog 08.12.22

Teil 4: Eigenschaften einer Cloud-native Architektur

Beitrag zu Cloud-native Architekturen, ihre Möglichkeiten und Zielsetzungen sowie die Philosophie und Arbeitsweise, die daraus folgt.

Blog 08.12.22

Teil 4: Eigenschaften einer Cloud-native Architektur

Beitrag zu Cloud-native Architekturen, ihre Möglichkeiten und Zielsetzungen sowie die Philosophie und Arbeitsweise, die daraus folgt.

Kompetenz 26.02.25

Cloud-native Architektur

Digitale Services erfordern einen hohen Reifegrad in der Architekturarbeit! Service-Qualität, Verfügbarkeit, Stabilität und Vernetzung mit angrenzenden Ökosystemen sind die Spitze des Eisbergs, der von Ihren Kunden in der Verwendung Ihrer Services maßgeblich wahrgenommen wird.

Blog 05.01.23

Teil 6 - Die Architektenrolle in DevOps-Teams/Organisationen

Erfahren Sie in diesem Blogbeitrag mehr über die Rolle der Architekten in DevOps-Teams und wie sich die Architekturarbeit im cloud-native Umfeld verändert hat.

Blog 05.01.23

Teil 6 - Die Architektenrolle in DevOps-Teams/Organisationen

Erfahren Sie in diesem Blogbeitrag mehr über die Rolle der Architekten in DevOps-Teams und wie sich die Architekturarbeit im cloud-native Umfeld verändert hat.

Blog 14.12.20

Cloud-Native Architektur

Cloud Technologien haben auch in der Welt der Anwendungsentwicklung Änderungen mit sich gebracht - aber was steckt hinter dem Begriff "Cloud-Native"?

Blog 19.01.23

Digitalisierung und das richtige Mindset

Digitalisierung erfordert Umdenken weg von Projekten hin zu Produkten. DevOps und offene Fehlerkultur bestimmen moderne IT-Organisationen - auch bei Ihnen?

Blog 19.01.23

Digitalisierung und das richtige Mindset

Digitalisierung erfordert Umdenken weg von Projekten hin zu Produkten. DevOps und offene Fehlerkultur bestimmen moderne IT-Organisationen - auch bei Ihnen?

Blog 16.02.23

Keine Angst vor Komplexität

Wie kann man die Komplexität der Organisation u. Technologie, die neue Plattformen, Architekturen und neue Entwicklerkultur mit sich bringen, beherrschen?

Blog 16.02.23

Keine Angst vor Komplexität

Wie kann man die Komplexität der Organisation u. Technologie, die neue Plattformen, Architekturen und neue Entwicklerkultur mit sich bringen, beherrschen?

Blog 19.09.24

Die Zukunft datenbankzentrierter IT-Architekturen

Datenbankzentrierte IT-Architekturen prägen viele Unternehmen. Doch ist dieser Ansatz noch zukunftsfähig? Dieser Artikel beleuchtet die Herausforderungen und Alternativen.

Blog 19.09.24

Die Zukunft datenbankzentrierter IT-Architekturen

Datenbankzentrierte IT-Architekturen prägen viele Unternehmen. Doch ist dieser Ansatz noch zukunftsfähig? Dieser Artikel beleuchtet die Herausforderungen und Alternativen.

Blog 18.04.24

Cloud-Native Netzwerksouveränität mit Cilium und Kubernetes

Erfahren Sie alles über die revolutionäre Cloud-Native Netzwerksouveränität mit Cilium und Kubernetes. Optimieren Sie Ihre Netzwerkinfrastruktur für mehr Sicherheit und Leistung.