Mit Cloud-Native zu höherer Reaktionsgeschwindigkeit und Verfügbarkeit in der Softwareentwicklung

Die IT muss heute Software mit nutzbringenden Funktionalitäten nicht nur in kurzen Zyklen, sondern auch in hoher Qualität entwickeln und für den produktiven Einsatz bereitstellen. Der agile Cloud-Native-Ansatz unterstützt dabei, diesen Anforderungen gerecht zu werden. Dafür werden von Anfang an alle für die Entwicklung und den Betreib notwendigen Beteiligten eingebunden und die entsprechenden Anwendungen vollständig in der Cloud entwickelt und betrieben. Das Besondere ist somit die Konzeption der Anwendungen nur für die Cloud. Es geht hierbei darum, in welcher Form Anwendungen erstellt und bereitgestellt werden, nicht an welchem Ort. Im Rahmen dieser Methode wird zudem eine konsequente Kombination der Konzepte des DevOpsZyklus mit Continuous Delivery und der Anwendungsmodularisierung mittels in Containern gekapselten Microservices umgesetzt.

Entwicklung (Dev) und Betrieb (Ops) arbeiten von Anfang an eng zusammen und sorgen damit dafür, dass die für Kunden optimale Lösung zeitgerecht geliefert wird. Es wird eine fortlaufende Iteration der Entwicklungspipeline einschließlich vollautomatisierter QA-Tests und Inbetriebnahmen von neuen Releases, sowie einer lastabhängigen Skalierung der Services ohne die Notwendigkeit manueller Eingriffe ermöglicht. Im Ergebnis können die Entwickler*innen schneller neue Features und Produkte deployen und mit geringem Aufwand flexibel und schnell auf Änderungen reagieren.

Anwendungen im Cloud-Native-Kontext werden als voneinander unabhängige und für eine Skalierung in der Cloud optimierte Microservices entwickelt. Hierdurch können komplexe Aufgaben in beherrschbare funktionale Einheiten aufgeteilt werden. Der Vorteil besteht darin, dass ein Microservice jederzeit unter Beibehaltung der Anwendungsintegrität verändert oder ausgetauscht werden kann. Eine kontinuierliche Bereitstellung ist damit gesichert. Die technische Auslieferung der Microservices erfolgt mittels Containerisierung, beispielsweise in Docker-Containern. Dabei werden alle Komponenten, die zur autarken Lauffähigkeit notwendig sind, in einem Anwendungscontainer zusammengefasst und in der gemanagten Container-Serviceumgebungen eines Cloudanbieters vollautomatisch bereitgestellt. Mittels Kubernetes werden die einzelnen Container orchestriert.

Konsequenterweise werden schon bei der Entwicklung von Cloud-Native-Anwendungen cloudbasierte Entwicklungsumgebungen eingesetzt, die eine zyklische Arbeitsweise nach DevOps-Strategien und ein Continuous Delivery unterstützt. 

Unser Weg zur Cloud-Native-Architektur

Mit Hilfe des Cloud-Native-Ansatzes führen wir bei unseren Kunden bewährte Strategien der agilen Anwendungsentwicklung zur Erhöhung der Geschwindigkeit und der Qualität effizient zusammen. Unsere Software-Architekt*innen prüfen bei der Beratung von Softwareprojekten immer die Option des Cloud-Native-Ansatzes und sind in der Lage, eine Entscheidungsvorlage für deren Einsatz zu liefern.

Unsere Erfahrung zeigt, dass sich der Cloud-Native-Ansatz insbesondere bei Greenfield- und Replatforming-Projekten anbietet, da er die Bindung an eine bestimmte Infrastruktur aufhebt und damit die Flexibilität ermöglicht. Services sind jederzeit zwischen unterschiedlichen Plattformen verschiebbar, solange die Kommunikation zueinander möglich ist. Die von uns bevorzugt eingesetzte Softwaremodellierungsmethode Domain-Driven Design eignet sich hervorragend, um die Komplexität von Geschäftsanforderungen in beherrschbare Teile zu trennen, Kontextgrenzen zu definieren und geeignete Microservices und Schnittstellen zu entwickeln.

Unsere erfahrenen Berater*innen unterstützen Sie gerne bei der Beratung und Realisierung von Cloud-Native-Anwendungen!

Die Vorteile von Cloud-Native im Überblick

Cloud-Native bietet für die Entwicklung, den Betrieb und die Bereitstellung von Anwendungen viele Vorteile. Es gestattet Unternehmen eine hohe Flexibilität und Agilität. Die Applikationen sind von spezifischer Hardware und von bestimmten Betriebssystemen entkoppelt und lassen sich auf beliebige Cloud-Plattformen portieren. Dank einer schnelleren Reaktion auf Markt- und Kundenanforderungen ergeben sich erhebliche Wettbewerbsvorteile. Auch die Verfügbarkeit der Anwendungen und Services steigt durch den Cloud-Native-Ansatz. Unabhängig davon, ob eine spezifische Hardware oder eine lokale IT-Infrastruktur zur Verfügung stehen, ist die Cloud-Native-Applikation an beliebigen Orten bereitstellbar.

Dank des Cloud-Native-Ansatzes laufen die Applikationen ohne größere Anpassungen auf unterschiedlichen Privaten oder Public-Cloud-Umgebungen verschiedener Serviceanbieter. Dies versetzt die Organisationen in die Lage, Cloud-Umgebung und -Anbieter so auszuwählen, dass das beste Preis-Leistungsverhältnis erzielt wird. Gleichzeitig binden sich Unternehmen nicht an einen bestimmten Provider und bleiben bei der Wahl ihrer zukünftigen Partner und Dienstleister frei. Ein weiterer Vorteil ergibt sich durch den hohen Grad der Automatisierung in der Bereitstellung von Cloud-Native-Applikationen. Das Risiko von menschlichen Bedien- und Konfigurationsfehlern lässt sich senken und die Verfügbarkeit der Services oder Anwendungen steigt.

Zusammenfassend profitieren Sie durch den Einsatz von Cloud-Native also von:

Der Kombination der modernsten und effektivsten Methoden der Softwareentwicklung

Einem bestmöglichen Automatisierungsgrad

Der Reduktion von Komplexität durch die Fokussierung auf einzelne Microservices

gezielteren Vertriebs- und Marketingkampagnen

Einer maximalen Verfügbarkeit durch die gemanagten Containerservices der Cloud-Anbieter

Einer nahezu unbegrenzt möglichen flexiblen Skalierung einer Anwendung

Einer sehr schnellen Bereitstellung neuer Versionen eines Microservice durch die Automatisierung

Leistungspakete

  • Machbarkeitsstudie für Vorhaben
  • Healthcheck für bestehende Cloud-Native-Anwendungen
  • Architekturberatung für neue Cloud-Native-Anwendungen
  • Implementierung Cloud-Infrastruktur
  • Implementierung DevOps-Pipeline
  • Replatforming bestehender Anwendungen
  • Full-Stack: Von Event Storming bis zur fertigen Anwendung

Ansprechpartner

Thomas Pröpper

Thomas Pröpper

Bereichsleiter Application Development