Vom Modelljahr zum Software-Update

Wie Software den Lebenszyklus moderner Fahrzeuge neu definiert

Aber diese Logik ändert sich gerade. Mit der richtigen Softwarearchitektur kann das Auto zu einer Plattform für kontinuierliche Verbesserungen werden – zu einem Produkt, das sich im Laufe der Zeit weiterentwickelt, verfeinert und optimiert, selbst nachdem es das Werk verlassen hat.

Dieser Wandel erfordert eine neue Denkweise: in Bezug auf Produkte, Organisationen und Geschäftsmodelle.

Entkopplung, die das Spiel verändert

Im Zentrum dieser Veränderung steht die Entkopplung von Software und Hardware. In herkömmlichen Fahrzeugplattformen sind Funktionen oft eng mit bestimmten Steuergeräten, Sensoren und Elektronikkomponenten verknüpft. Dies macht jeden Austausch von Komponenten kostspielig in Bezug auf die Entwicklungszeit und erfordert oft das mehrfache Neuschreiben derselben Funktion.

Die Möglichkeit, Software unabhängig vom Produktzyklus der Hardware zu entwickeln, ermöglicht einen Wechsel von sequenzieller zu kontinuierlicher Entwicklung. Dies führt zu kürzeren Entwicklungszyklen, größerer Skalierbarkeit und einer besseren Nutzung von Ressourcen.

Aber es geht nicht immer darum, später neue Funktionen hinzuzufügen – es geht darum, bestehende Funktionen nicht neu erstellen zu müssen. Ein großer Teil der Entwicklungszeit wird heute für die Portierung bestehender Funktionen auf neue Hardware aufgewendet, oft aufgrund von auslaufenden oder ersetzten Komponenten. Mit der richtigen Architektur kann die Anwendungslogik von der Hardware entkoppelt werden, was den Nachbearbeitungsaufwand drastisch reduziert und eine robustere Entwicklungskette ermöglicht. Außerdem ermöglicht dies häufigere Modellneuvorstellungen und kürzere Zyklen – was die traditionelle Denkweise in Bezug auf Modelljahre in Frage stellt.

Von verteilter zu zentraler Elektronik

Herkömmliche Fahrzeugarchitekturen bestehen aus einer Vielzahl verteilter Steuergeräte, wobei jedes Steuergerät eine bestimmte Funktion verwaltet. Dies hat zu fragmentierten Systemen, komplexer Fehlerbehebung und eingeschränkter Wiederverwendbarkeit geführt.

Moderne Software-Defined Vehicle (SDV)-Architekturen tendieren zunehmend zur Zentralisierung – sie konsolidieren Funktionen in weniger, aber leistungsstärkeren Recheneinheiten, die mehrere Systeme parallel verwalten können. Dies kann die Verkabelung vereinfachen, physische Redundanzen reduzieren und die Bedingungen für die gemeinsame Nutzung von Ressourcen zwischen Funktionen verbessern.

Zentralisierung reduziert jedoch nicht unbedingt die Komplexität – sie verteilt sie neu und verlagert sie oft von der Hardware- auf die Software- und Architekturebene. Mit weniger, aber leistungsfähigeren Knoten steigt der Bedarf an einer klaren Architektur für Isolation, Echtzeitleistung, Redundanz und sicherheitskritische Funktionen. Beispielsweise sind neue Muster für die Partitionierung, die Fallback-Behandlung und die Qualitätssicherung von Software erforderlich, die auf gemeinsam genutzter Hardware ausgeführt wird.

Das Design von Zonenarchitekturen und der Übergang vom klassischen AUTOSAR zu beispielsweise Adaptive AUTOSAR ist in diesem Wandel von entscheidender Bedeutung – insbesondere, um eine dynamische Softwarebereitstellung und zukünftige OTA-Updates ganzer Subsysteme zu ermöglichen.

Was braucht es, um dorthin zu gelangen?

Die Entkopplung ist nicht nur ein technisches Detail – sie ist eine strategische Entscheidung, die sich auf das gesamte Entwicklungsmodell auswirkt. Eine gut konzipierte Basissoftware in Kombination mit klar definierten Schnittstellen und einer durchdachten Komponentenarchitektur ermöglicht eine hohe Wiederverwendbarkeit von Code über verschiedene Modelle und Generationen hinweg.

Dies erfordert:

  • Eine klare Softwarearchitektur, die Verantwortlichkeiten, Abhängigkeiten und die Isolation zwischen Funktionen definiert
  • CI/CD-Pipelines, die sowohl fahrzeugspezifische Verifizierungsanforderungen als auch kontinuierliche Integration unterstützen
  • Funktionsübergreifende Teams, die in der Lage sind, ganze Funktionen zu übernehmen – von der Entwicklung bis zum Einsatz vor Ort

Middleware spielt hier eine Schlüsselrolle. Sie fungiert als Drehscheibe zwischen Hardware und Anwendung und abstrahiert die Komplexität unterschiedlicher Hardwareplattformen. Durch die Verwaltung von Ressourcen, die Bereitstellung standardisierter APIs und die Ermöglichung von Virtualisierung bildet Middleware ein technisches Rückgrat für Portabilität und Wiederverwendbarkeit in einem bisher schwer zu erreichenden Umfang.

Mit zunehmender Konnektivität, OTA-Updates und externen APIs steigt auch die Verantwortung. Cybersicherheit und Datenschutz können nicht mehr am Ende der Entwicklung hinzugefügt werden – sie müssen von Anfang an in die Architektur eingebettet werden.

Sicherheitskritische Funktionen müssen isoliert, Updates signiert und validiert werden, und die gesamte Datenverarbeitung muss strengen Vorschriften entsprechen – einschließlich der DSGVO und branchenspezifischer Standards wie UNECE R155 und ISO/SAE 21.

Organisatorische Transformation in der Praxis

Technische Transformation muss durch organisatorische Strukturen unterstützt werden. OEMs, die funktionsbasierte Silos aufbrechen und Teams mit durchgängiger Verantwortung – von der Idee bis zum OTA-Update – bilden, berichten von einer verbesserten Entwicklungsgeschwindigkeit und Produktqualität.

Gleichzeitig verändert sich die Beziehung zu den Zulieferern. Anstelle linearer Ketten entstehen plattformbasierte Kooperationen, in denen OEMs, Tier-1-Zulieferer und Technologieunternehmen gemeinsam an gemeinsamen APIs, Datenmodellen und Lebenszyklusstrategien arbeiten. Dies erfordert ein neues Maß an technischer Führungskompetenz und Offenheit im gesamten Ökosystem.

Das Auto der Zukunft ist immer uptodate

Die strategischen Geschäftsvorteile liegen auf der Hand: schnellere Markteinführung, kürzere Aktualisierungszyklen und bessere Skalierbarkeit von Innovationen über Produktlinien hinweg. Gleichzeitig entstehen neue Umsatzmodelle durch servicebasierte Angebote, Abonnementfunktionen und verlängerte Fahrzeuglebensdauern.

Mit längeren Fahrzeuglebensdauern gehen jedoch auch neue Anforderungen einher. Die Verwaltung des gesamten Software-Lebenszyklus – von der ersten Entwicklung über den Support und Updates bis hin zur Außerbetriebnahme – wird zu einer neuen Herausforderung für die Branche.

OEMs benötigen Strategien, um die Kompatibilität mit älterer Hardware aufrechtzuerhalten, die Veralterung von Komponenten zu bewältigen und sicherzustellen, dass auch Fahrzeuge, die seit zehn bis fünfzehn Jahren auf der Straße sind, weiterhin wichtige Updates und Sicherheitspatches erhalten können.

Letztendlich wird der Wert des Fahrzeugs von morgen nicht nur in dem liegen, was in ihm eingebaut ist, sondern in seiner Fähigkeit, sich nach der Auslieferung kontinuierlich zu verbessern.
Daten werden zu einem Vermögenswert. APIs werden zu Geschäftsschnittstellen. Das Produkt wird zu einer Plattform.

Abschließende Gedanken

Bei der Umstellung auf softwaredefinierte Fahrzeuge geht es nicht nur um Technologie, sondern auch um Architektur, Systemdenken und Zusammenarbeit. Um erfolgreich zu sein, müssen Unternehmen in der Lage sein, sowohl mit hoher technischer Komplexität als auch mit weitreichenden geschäftlichen Auswirkungen umzugehen.

Und genau an dieser Schnittstelle – zwischen Systemarchitektur, agiler Entwicklung und strategischen Technologiekompetenzen – machen starke Entwicklungspartner den Unterschied.

Möchten Sie wissen, wie HiQ Sie auf diesem Weg unterstützen kann?
Lassen Sie uns darüber sprechen – wir erzählen Ihnen gerne mehr.

Kontakt

Region

Sie wollen mehr erfahren? Nehmen Sie gerne Kontakt auf!

HiQ deckt jeden Aspekt der agilen Softwareentwicklung ab: von Web Application, Microservices, und Mobile Development bis IoT.

Digitale Barrierefreiheit

Das sollten Unternehmen wissen.

Digitale Barrierefreiheit bedeutet, dass alle Menschen – auch Menschen mit Behinderungen – digitale Produkte und Dienstleistungen uneingeschränkt nutzen können. Laut der UN-Behindertenrechtskonvention ist Barrierefreiheit ein grundlegendes Menschenrecht. Dennoch sind viele digitale Lösungen heute nicht barrierefrei und stellen somit Hindernisse für einen erheblichen Teil der Bevölkerung dar.

Um das zu ändern, tritt zum 28. Juni 2025 das Barrierefreiheitsstärkungsgesetz in Kraft, das die europäische Richtlinie zur Barrierefreiheit European Accessibility Act (EAA) umsetzt. Ab diesem Zeitpunkt müssen viele Unternehmen und Organisationen neue Anforderungen an die Barrierefreiheit erfüllen, um ihre Produkte und Dienstleistungen weiterhin innerhalb der EU anbieten zu dürfen.

Europäische Richtlinie zur Barrierefreiheit

Ziel des European Accessibility Act ist es, digitale Barrierefreiheitsanforderungen EU-weit zu vereinheitlichen. Er gilt für Produkte und Dienstleistungen in folgenden Bereichen:

  • E-Commerce: Online-Shops und digitale Marktplätze müssen vollständig zugänglich sein, z. B. durch Unterstützung für Screenreader, Tastaturnavigation und klar erkennbare Bedienelemente.
  • Bankdienstleistungen: Online-Banking-Plattformen und Geldautomaten müssen barrierefreie Oberflächen bieten, z. B. Screenreader-Kompatibilität, alternative Authentifizierungsmethoden und hohe Kontraste für sehbehinderte Menschen.
  • Elektronische Kommunikation: Dienste wie E-Mail und Kundenportale müssen so gestaltet sein, dass sie auch von Personen mit motorischen oder kognitiven Einschränkungen genutzt werden können.
  • E-Books: Plattformen und Lesegeräte für E-Books müssen Funktionen wie Alternativtexte, anpassbare Schriftarten und Text-to-Speech-Kompatibilität bieten.
  • Verkehrsdienste: Digitale Buchungssysteme für den öffentlichen Nah- und Fernverkehr, Flüge, Züge und Busse müssen für Menschen mit Mobilitäts- oder kognitiven Einschränkungen zugänglich sein.
  • Audiovisuelle Mediendienste: TV- und Streaming-Dienste müssen Funktionen wie Untertitel, Audiodeskriptionen und Gebärdensprache unterstützen.

Weitere betroffene Kategorien sind unter anderem: Computer und Betriebssysteme, Smartphones und andere Kommunikationsgeräte sowie Notrufe unter der EU-Notrufnummer 112.

Laptop on coffee table

Produkte und Dienstleistungen in diesen Bereichen müssen den Anforderungen der Norm EN 301 549 entsprechen, die auf den Web Content Accessibility Guidelines (WCAG) 2.1 AA basiert. In manchen Fällen ist auch WCAG 2.2 AA relevant. Zu den Anforderungen gehören unter anderem:

  • Alternativtexte für Bilder und Medien
  • Ausreichende Kontraste zwischen Text und Hintergrund
  • Bedienbarkeit und Navigation per Tastatur
  • Anpassbare Schriftgrößen und Abstände
  • Klare Sprache und logisch strukturierte Inhalte

Erfüllen Organisationen die Anforderungen nicht, drohen rechtliche Konsequenzen. Dazu zählen Bußgelder durch nationale Aufsichtsbehörden, ein Vermarktungsverbot innerhalb der EU sowie Klagen von Endnutzern. Diese können Barrieren melden und Verbesserungen oder Schadenersatz fordern.

Zentrale Anforderungen – was müssen Unternehmen tun?

Um konform zu handeln, sollten Unternehmen folgende Schritte umsetzen:

Führen Sie ein Accessibility-Audit durch, um Lücken in bestehenden digitalen Lösungen zu identifizieren. Automatisierte Tools wie axe DevTools, WAVE oder Lighthouse erkennen technische Schwachstellen – sie erfassen jedoch nicht alles. Ergänzen Sie die Analyse daher durch manuelle Prüfungen und Usability-Tests mit echten Nutzer:innen.

Setzen Sie Maßnahmen gemäß den Web Content Accessibility Guidelines 2.1 (WCAG 2.1) um – dabei gelten die vier POUR-Prinzipien:

  • Perceivable (wahrnehmbar): Informationen müssen für alle zugänglich sein, unabhängig von sensorischen Einschränkungen. Zum Beispiel durch Alternativtexte, ausreichende Kontraste und anpassbare Schriftgrößen.
  • Operable (bedienbar): Navigation und Interaktion müssen mit unterstützenden Technologien funktionieren, etwa durch Tastaturnavigation und vorhersehbare Interaktionen.
  • Understandable (verständlich): Inhalte müssen leicht lesbar und verständlich sein – z. B. durch einfache Sprache und konsistentes Design.
  • Robust (robust): Inhalte müssen mit verschiedenen technischen Lösungen kompatibel sein – z. B. mit Screenreadern oder KI-basierten Assistenten.

Schulen Sie Ihre Mitarbeitenden in digitaler Barrierefreiheit – insbesondere Designer:innen, Entwickler:innen und Content-Verantwortliche sollten wissen, wie barrierefreie Inhalte gestaltet werden.

Achten Sie auf barrierefreie Beschaffung. Wenn Sie Dienstleistungen einkaufen, müssen Barrierefreiheitsanforderungen vertraglich geregelt werden.

Dokumentieren und berichten Sie systematisch. Entwickeln Sie klare Routinen zur Umsetzung und Prüfung von Barrierefreiheit. Dazu gehören regelmäßige Audits und eine öffentlich zugängliche, regelmäßig aktualisierte Accessibility-Erklärung.

Ein inklusives digitales Erlebnis ist mehr als nur gesetzliche Pflicht – es schafft Mehrwert, stärkt die Marke eines Unternehmens und öffnet Firmenangebote für ein breiteres Publikum.

Herausforderungen – und wie Sie sie vermeiden

Viele Organisationen stoßen bei der Umsetzung digitaler Barrierefreiheit auf ähnliche Herausforderungen. Hier sind die häufigsten – und wie Sie ihnen begegnen:

Unklarheit über die Anforderungen:
Oft wird unterschätzt, wie komplex Barrierefreiheit tatsächlich ist. Die reine Einhaltung von WCAG-Grundlagen reicht nicht. Außerdem sind die Richtlinien nicht immer leicht zu interpretieren – deshalb ist es wichtig, Ihre Teams zu schulen und Fachleute einzubeziehen. Automatisierte Tools helfen beim Einstieg, doch Tests mit echten Nutzer:innen sind unerlässlich, um reale Hürden zu erkennen.

Zu späte Umsetzung:
Wer mit der Umsetzung bis kurz vor dem Stichtag wartet, riskiert teure Notlösungen. Beginnen Sie frühzeitig, priorisieren Sie Änderungen mit dem größten Nutzen für die Nutzerfreundlichkeit – und integrieren Sie Barrierefreiheit dauerhaft in Ihre Entwicklungsprozesse.

Fehlende Usability-Tests mit Betroffenen:
Auch wenn eine Website technisch WCAG-konform ist, bedeutet das nicht automatisch gute Nutzbarkeit. Nur durch Tests mit Menschen mit unterschiedlichen Bedürfnissen lassen sich echte Barrieren erkennen. Ohne diese Tests riskieren Sie Lösungen, die zwar „auf dem Papier“ gut aussehen, aber in der Praxis schwer zu bedienen sind.

Unzureichende Schulung im Unternehmen:
Barrierefreiheit ist keine einmalige Aufgabe für Entwickler:innen. Sie erfordert eine langfristige Strategie, in der alle – von Content-Erstellung bis Support – das Thema verstehen. Schulungen und klare interne Guidelines sorgen dafür, dass das Wissen aktuell bleibt und angewendet wird.

Widerstände und Ressourcenmangel:
Ein weit verbreiteter Irrglaube ist, dass Barrierefreiheit zeit- und kostenintensiv sei. Tatsächlich verursachen nicht-barrierefreie Lösungen langfristig höhere Kosten – etwa durch rechtliche Risiken, Imageverluste oder Nutzerabwanderung. Machen Sie die Vorteile sichtbar und zeigen Sie: Barrierefreiheit ist eine Investition, kein Kostenfaktor.

Checkliste: So gelingt der Einstieg

Ein strukturierter Plan ist entscheidend für den Erfolg. Hier ist Ihre praktische Checkliste für den Start in die barrierefreie Zukunft:

  1. Accessibility-Audit durchführen: Technische und nutzungsbezogene Lücken identifizieren
  2. Teams schulen: Entwickler:innen, Designer:innen und Autor:innen mit WCAG 2.1 AA vertraut machen
  3. Websites und digitale Services anpassen: Verbesserungen priorisieren und umsetzen
  4. Mit echten Nutzer:innen testen: Verschiedene Anforderungen einbeziehen
  5. Führungskräfte und Mitarbeitende sensibilisieren: Verständnis und Unterstützung sichern
  6. Externe Dienstleister prüfen: Vertraglich sicherstellen, dass Standards eingehalten werden
  7. Dokumentieren und berichten: Accessibility-Plan erstellen und öffentlich kommunizieren

Indem Sie diese Schritte umsetzen, schaffen Sie ein inklusives digitales Umfeld, senken rechtliche Risiken und stärken Ihre Wettbewerbsfähigkeit.

Denn Barrierefreiheit verbessert die Nutzererfahrung für alle – nicht nur für Menschen mit Behinderungen. Unternehmen, die barrierefreie Lösungen implementieren, profitieren häufig von positiven Effekten auf SEO, Kundenbindung und Conversion Rates. Zudem lassen sich rechtliche Risiken und spätere Kosten für nachträgliche Anpassungen reduzieren.

Und denken Sie daran: Barrierefreiheit beginnt nicht am Ende eines Projekts, sondern mit der Art und Weise, wie Sie Ihre digitalen Produkte von Anfang an gestalten. Unsere agilen Softwareentwicklungs-Services bei HiQ helfen Ihnen dabei. Jetzt starten – Juli 2025 steht vor der Tür.

Kontakt

Region

Sie möchten mehr erfahren? Kontaktieren Sie uns gerne.

HiQ deckt jeden Aspekt der agilen Softwareentwicklung ab: von Web Application, Microservices, und Mobile Development bis IoT.

Vibe Coding vs DevOps

Die Zukunft der Softwareentwicklung im KI-Zeitalter?

Der Begriff Vibe Coding, kürzlich vom ehemaligen OpenAI-CTO Andrej Karpathy geprägt, beschreibt einen extrem KI-gesteuerten Coding-Stil, bei dem Entwickler:innen die meiste Arbeit der KI überlassen und in natürlicher Sprache mit ihr interagieren. Statt manuell nach der Stelle zu suchen, an welcher der Abstand einer Seitenleiste angepasst werden muss, sagt man einfach: „Mach das Padding halb so groß“ – und die KI (künstliche Intelligenz) übernimmt den Rest. Änderungen am Code werden ohne Review übernommen, Fehler durch Trial-and-Error beseitigt, und der Code wächst in einer Geschwindigkeit, die das menschliche Verständnis zunehmend überholt.

Das wirft eine zentrale Frage auf: Ist Vibe Coding ein disruptiver Ansatz, der die Art zu entwickeln grundlegend verändern kann, oder doch nur ein cleverer Shortcut für Prototyping-Szenarien? Und wie verhält es sich zum etablierten DevOps-Prinzip?

Ist Vibe Coding ein disruptiver Ansatz, der die Art zu entwickeln grundlegend verändern kann, oder doch nur ein cleverer Shortcut fürs Prototyping?

Was ist Vibe Coding?

Vibe Coding beschreibt eine KI-getriebene Art der Softwareentwicklung, die auf intuitive Interaktion statt strikter Codekontrolle setzt. Anstatt Codezeile für Codezeile manuell zu schreiben und zu debuggen, überlässt man diese Aufgaben der KI. Dadurch entsteht ein direkter, dialogbasierter Entwicklungsprozess, bei dem Entwickler:innen beschreiben, was sie wollen – nicht wie es umgesetzt werden soll. Dieser Ansatz ermöglicht einen schnellen, kreativen Development-Prozess und eignet sich besonders für Prototyping und experimentelles Entwickeln.

Gleichzeitig führt die hohe Geschwindigkeit der Codegenerierung jedoch zu einem mangelnden Verständnis der Codestruktur und einem erhöhten Risiko technischer Schulden – ein Begriff, der mögliche Konsequenzen schlechter technischer Umsetzung von Software beschreibt. Da die KI den Code frei erstellt und verändert, wird es zudem immer schwieriger, große Systeme langfristig zu skalieren und zu warten.

Warum DevOps unverzichtbar bleibt

DevOps hat sich seit Jahren als Standard etabliert. Wesentliche Bestandteile von DevOps-Methoden sind CI/CD (Continuous Integration / Continuous Delivery) – zu deutsch kontinuierliche Integration und kontinuierliche Auslieferung – sowie Versionierung und automatisiertes Testen. Kurzum: DevOps stellt sicher, dass der Code reproduzierbar, skalierbar und stabil ist.

Während Vibecoding auf Geschwindigkeit und kreativen Flow setzt, geht es bei DevOps um Struktur, Nachvollziehbarkeit und Qualitätssicherung. Code-Reviews und Versionierung sorgen dafür, dass Teams ihre Codebasis verstehen, während automatisiertes Testing und Sicherheitsanalysen das Risiko von Betriebsproblemen und Sicherheitslücken minimieren. Infrastructure as Code (IaC) und CI/CD-Pipelines ermöglichen zudem die kontrollierte Skalierung und Aktualisierung von Systemen.

Gleichzeitig hat KI das Potenzial, DevOps zu verbessern. Anstatt DevOps vollständig zu ersetzen, kann KI dazu beitragen, Pipeline-Konfigurationen zu automatisieren, Protokolle zu analysieren, die Codequalität zu verbessern und Systeme schneller als jede:r menschliche:r Entwickler:in zu debuggen.

Können Vibe Coding und DevOps koexistieren? 

Statt Vibe Coding und DevOps als Gegensätze zu betrachten, lassen sie sich als sich ergänzende Ansätze verstehen. Ein möglicher Anwendungsfall: Vibe Coding dient der schnellen Innovation, während DevOps beim Übergang in die produktive Skalierung übernimmt. Ein weiteres Szenario ist DevOps mit KI-Unterstützung, wobei KI zur Rationalisierung und Automatisierung weiterer Phasen der Entwicklungspipeline beiträgt.

Anstatt nur Code zu generieren, kann KI dabei helfen, CI/CD-Pipelines aufzubauen, Prozesse zu überwachen und Optimierungsvorschläge zu machen. Denkbar ist auch, dass Vibe Coding vor allem im Frontend- und UI-Bereich an Bedeutung gewinnt, wo Änderungen iterativ und schnell erfolgen, während Backend und Infrastruktur weiterhin auf klassische DevOps-Praktiken setzen.

Was bedeutet das für Unternehmen und Developer? 

Die Softwareentwicklung steht an einem Wendepunkt – Unternehmen müssen Geschwindigkeit und Struktur geschickt ausbalancieren. KI senkt die Development-Einstiegshürden und erleichtert die Schaffung digitaler Lösungen. Das birgt große Chancen – erfordert aber auch strategisches Vorgehen, um technische Schulden (technical debt) zu vermeiden und langfristigen Erfolg sicherzustellen:

  • Sollten Unternehmen interne Leitlinien für KI-gestützte Entwicklung schaffen?
  • Wie lässt sich Codequalität gewährleisten, wenn der Code nicht mehr von Menschen stammt?
  • Und wie verändert sich das Developer-Berufsbild – wird Prompt Engineering genauso wichtig wie Programmierkenntnisse?

Dies sind nur einige der Fragen, mit denen sich Unternehmen auseinandersetzen werden.

Zukünftig müssen Entwickler:innen zwischen KI-gesteuerter Geschwindigkeit und DevOps-Präzision navigieren können – und dabei die richtige Balance zwischen Intuition und Kontrolle finden.

Fazit

KI-getriebene Methoden wie Vibe Coding sind sehr spannend und haben das Potenzial, schnelle Innovation zu revolutionieren. Aber sie ersetzen nicht die Notwendigkeit strukturierter Prozesse für Produktion und Skalierbarkeit. Zukünftig müssen Entwickler:innen zwischen KI-gesteuerter Geschwindigkeit und DevOps-Präzision navigieren können – und dabei die richtige Balance zwischen Intuition und Kontrolle finden. KI verändert, wie wir Software entwickeln, aber nicht, warum wir sie entwickeln!

Sie wollen Software entwickeln – smart, schnell und bereit für die Zukunft?

Erleben Sie, wie wir aus starken Ideen skalierbare Lösungen schaffen – mit agiler Softwareentwicklung, die wirklich funktioniert. Zu den HiQ Development-Services!

Kontakt

Region

Sie haben Fragen zu KI und DevOps? Melden Sie sich gern bei uns!

HiQ deckt jeden Aspekt der agilen Softwareentwicklung ab: von Web Application, Microservices, und Mobile Development bis IoT.

Querschnitts-konzepte für Microservice-Architekturen

Teil 2

Cloud-Infrastruktur

Damit Microservices klein genug bleiben, um diesen Namen zu verdienen, muss es einfach sein, neue Microservices zu erstellen. Zusätzlich zu der Code-Basis ist dafür einige Infrastruktur notwendig, die sich über verschiedene Services hinweg im Prinzip wenig unterscheidet.

Es ist daher sinnvoll, diese wiederkehrenden Elemente von einem dedizierten Infrastruktur-Team verwalten und warten zu lassen. Dazu gehören folgende Elemente:

Bereitstellung von Rechenressourcen

Um Ressourcen gut nutzen zu können, hat sich im letzten Jahrzehnt Container-Technologie als gewinnbringendes Konzept herausgestellt. Hierbei werden einzelne Prozesse durch Linux-Kernel-Features voneinander abgekapselt, was eine gemeinsame Nutzung von Rechenressourcen durch voneinander unabhängige Prozesse erleichtert. Wesentlich für die Nutzung von Container-Technologie ist, dass einzelne Container jederzeit (etwa auf einem anderen Rechner) neu gestartet werden können, da so eine orchestrierte hohe Auslastung der verfügbaren Rechenzeit erreicht wird. Der de-facto-Standard für die Orchestrierung von Containern ist das Open-Source-System Kubernetes, das bei guter Konfiguration eine Schnittstelle für Entwickler zum einfachen Deployment von Containern (und anderen Ressourcen) bereitstellt.

Da eine gute Konfiguration eines Kubernetes-Clusters eine relativ komplexe Aufgabe ist, sollte hierfür ein spezialisiertes Team etabliert werden, dass sich unter anderem mit der Netzwerkarchitektur, Kommunikation zwischen Containern, Secret Management und grundlegendem Logging und Monitoring in Zusammenhang mit Kubernetes beschäftigt.

Netzwerk-Konnektivität

Die innere Einfachheit von Microservices wird dadurch erkauft, dass viel Komplexität in die Kommunikation zwischen Services verlagert wird. Dafür ist es wichtig, dass Microservices eine Netzwerkverbindung zueinander und in Richtung Internet aufbauen können. Die Verbindung sollte automatisch durch mTLS abgesichert werden. Diese Automatisierung kann am besten auch durch ein zentrales Infrastruktur-Team gewährleistet werden.

Auch grundlegende Allow-Lists für den Zugriff auf Services sollten durch die Microservice-Teams einfach eingerichtet werden können, und gegebenenfalls sollten aus Compliance-Gründen manche Netzwerkregeln durch das Infrastruktur-Team verbindlich festgesetzt werden. Die Kommunikation zwischen Microservices ist erheblich leichter zu erreichen, wenn die Infrastruktur bei einem einzelnen Cloud-Provider gehostet wird.

Persistenz

Microservice-Container sollten jederzeit neu gestartet werden können, ohne Daten zu verlieren. Das impliziert, dass persistente Datenhaltung außerhalb der Microservices stattfinden muss, typischerweise in Datenbanken oder in persistenten Volumes. Neben allgemeinen Schwierigkeiten wie Authentifizierung und Autorisierung, sowie der Konnektivität zu den Datenhaltungssystemen bestehen hier spezialisierte Herausforderungen wie die Erstellung von Daten-Backups und Snapshots, um die Wiederherstellbarkeit persistenter Daten gewährleisten zu können.

Für verschiedene Bedürfnisse sollten verschiedene Typen von Datenbanken zur Verfügung gestellt werden, aus denen Microservice-Teams auswählen können: etwa eine SQL-Datenbank, eine Dokumentendatenbank und ein Cache-System. Das ist wichtig, um die Technologieoffenheit bei der Umsetzung von Microservices zu gewährleisten, sodass die Microservice-Teams die beste Technologie für ihren Anwendungsfall auswählen können.

Die Bereitstellung von Datenbanken oder Volumes sollte möglichst automatisiert erfolgen, wofür eine enge Zusammenarbeit mit dem Kubernetes-Team notwendig ist.

Wir planen Ihre Microservice-Architektur. Und bieten noch so viel mehr im Bereich agile Softwareentwicklung. Überzeugen Sie sich selbst.

Software Development mit HiQ!

Logging und Monitoring

Um Fehlerfälle reproduzieren und beheben zu können, ist es entscheidend, dass es einen einfachen Weg gibt, um auf die produzierten Logs der einzelnen Microservices zugreifen zu können. Hierfür ist der Industriestandard ein Elastic Stack, der bestenfalls von einem zentralen Team gehosted und gemanaged wird, damit die Microservice-Teams sich nicht um das Setup von Logging-Infrastruktur kümmern müssen. Auch andere Lösungen als ein Elastic Stack sind hier denkbar, doch eine Standardlösung sollte zentral vorgegeben werden, und auch das Log-Format (beispielsweise JSON mit bestimmten vorgegebenen Feldern) sollte über Microservices hinweg standardisiert sein.

Logs müssen auch über mehrere Services hinweg miteinander verknüpft werden können, insbesondere auch über REST-Requests oder asynchrones Messaging hinweg. Hierfür ist Request Tracing via OpenTelemetry geeignet, indem die Traces über Requests hinweg propagiert werden, beispielsweise mit Hilfe der B3-Spezifikation. Zusätzlich können die so entstehenden Traces natürlich dafür genutzt werden, Bottlenecks bei Requests zu erkennen und zu beheben.

Auch ein Monitoring-/Alerting-Stack (typischerweise mit Hilfe von Prometheus und Grafana) sollte zentral maintained sein und mit standardisierten Metriken sowie individuell konfigurierbaren Metriken gefüllt werden können. Alerts sollten individuell durch die Microservice-Teams einstellbar sein.

API-Design

Je nach Microservice können die Anforderungen an die APIs zur Kommunikation mit dem Microservice sehr unterschiedlich sein. Dennoch kann es sinnvoll sein, gemeinsame Anforderungen an die API-Struktur (beispielsweise HATEOAS oder gRPC) zu stellen, die nur in begründeten Ausnahmefällen nicht berücksichtigt werden. Für HTTP-APIs kann OpenAPI eine gute Lösung für die Dokumentation darstellen.

Gegebenenfalls kann man sich dafür entscheiden, die Bereitstellung von OpenAPI-Spezifikationen für Microservices verpflichtend zu gestalten, sodass sich die Entwickler von Clients auf die Existenz dieser Spezifikationen verlassen können. In jedem Fall sollte ein gemeinsames Schema für die Dokumentation von APIs (inklusive Fehlerfällen) geschaffen werden, damit es einfacher wird, relevante Dokumentation zu finden.

Messaging

Asynchrone Kommunikation über Messaging-Systeme kann wesentlich dabei helfen, das Gesamtsystem resilient zu gestalten. Die durch die Asynchronität entstehende temporäre Inkonsistenz bei der Datenhaltung wird bewusst in Kauf genommen („Eventual Consistency“), um schnellere Requests und eine Entkopplung verschiedener Microservices zu erreichen.

Damit Kommunikation über Messaging zwischen verschiedenen Microservices funktioniert, sollte das Messaging-System selbst von einem zentralen Team bereitgestellt und verwaltet werden. Das Format der Messages sollte wie bei den APIs mithilfe eines gemeinsamen Schemas dokumentiert werden.

Authentifizierung und Autorisierung

Authentifizierung und Autorisierung sind zentrale Aufgaben, die nicht von einzelnen Microservice-Teams erledigt werden können. Hierfür sollte eine zentrale Lösung, beispielsweise basierend auf OpenID, bereitgestellt werden.

Zusammenfassung

Eine Microservice-Architektur kann gerade für komplexe Systeme eine gute Lösung sein, um schnell Verbesserungen am System sowie neue Features zu implementieren. Dadurch entstehen allerdings Abhängigkeiten zwischen Microservices und somit auch zwischen den Microservice-Teams.

Die hier beschriebenen Querschnittskonzepte helfen dabei, Konsistenz, Sicherheit und Effizienz in einem Microservice-Umfeld sicherzustellen.

Kontakt

Region

Sie möchten mehr erfahren oder haben Sie eine Frage? Dann treten Sie mit uns in Kontakt!