Die fünf wichtigsten Möglichkeiten, wie ISVs die Cloud zur Modernisierung von SaaS-Anwendungen nutzen können

by Sandeep Bhargava, Managing Director, APJ

A software developer typing code on his laptop with code displayed on two additional monitors

 

Software as a Service oder SaaS ist ein gängiger Begriff, der in vielen Branchen verwendet wird. SaaS spielt eine Rolle in den Cloud- oder Modernisierungsstrategien der meisten Unternehmen. Aber sind alle SaaS-Plattformen gleich?  Ich spreche nicht über die Produktfunktionen. Ich spreche über die SaaS-Plattform selbst.  Ich spreche von der Anwendung und der zugrundeliegenden Infrastrukturarchitektur.  Es gibt SaaS, und dann gibt es SaaS.

Als Käufer fragen Sie sich vielleicht: "Wen interessiert schon, was unter der Motorhaube steckt?" Lassen Sie mich erklären, warum Sie sich darum kümmern sollten.  Wenn ein SaaS-Anbieter eine monolithische Einzelnutzeranwendung anbietet, die vor Ort bereitgestellt werden muss, dann hat dieses Architekturmodell Nachteile. 

  1. Da es sich um eine n Einzelnutzerlösung handelt, sind die Kosten höher, da es keine gemeinsam genutzte Infrastruktur gibt.
  2. Da sie monolithisch sind, sind ihre Release-Zyklen langsamer und anfälliger für Fehler.
  3. Die Bereitstellung vor Ort bedeutet, dass sie die intelligenten Funktionen der Cloud nicht nutzen und die Verfügbarkeit nicht kontrollieren können.
  4. Sie laufen Gefahr, von „Born-in-the-Cloud“-Konkurrenten übertroffen zu werden, die keine dieser Einschränkungen haben.  Wird es sie in zwei bis drei Jahren noch geben?

Als unabhängiger Softwareanbieter (ISV) haben Sie keine Wahl. Wenn Sie noch keine vollwertige SaaS-Architektur haben, müssen Sie modernisieren, und zwar schnell.  Aus technischer Sicht sind hier meine fünf wichtigsten Bereiche, auf die Sie sich als ISV konzentrieren sollten, wenn Sie Ihre Anwendungen „SaaS-ifizieren“ möchten.

 

Setzen Sie auf Multi-Tenant-Architektur

Die Isolierung von Kunden in einer Multi-Tenant-Architektur ist einfach, wenn Sie ein serverloses Modell nutzen und den Zugriff über IAM-Kontrollen (Identity Access Management) organisieren.  Es hat keinen Sinn, selbst rollenbasierte Zugriffskontrollsysteme (RBAC) zu erstellen. Dieses Material wird standardmäßig in der Cloud angeboten. 

Durch die Nutzung einer serverlosen Architektur entfällt die Notwendigkeit, Skalierungsrichtlinien kontinuierlich zu verwalten. Machen Sie es stattdessen zur Aufgabe der Plattform.  Serverlose Dienste haben auch den Vorteil, dass sie Ihnen einen Großteil der operativen Last abnehmen und sie dem Anbieter aufbürden.

 

Erstellen Sie eine flexible, skalierbare Architektur

Durch die Verwendung von RESTful Services ist die Arbeit jedes Entwicklungsteams voneinander isoliert. Dies erleichtert eine schnelle Prototypenerstellung und Entwicklung.  Diese Aufteilung ermöglicht es Ihnen auch, Ihren Kunden unterschiedliche Servicequalitätsstufen anzubieten.

Dieser API-gesteuerte Ansatz macht es einfach, Dritten Zugang zu gewähren (oder umgekehrt), um Ihre Anwendung zu erweitern, Daten zu importieren/exportieren oder Berichte anzubieten.

 

Infrastruktur als Code übernehmen

Infrastructure as Code (IaC) ist der Best-Practice-Ansatz für die Bereitstellung von Infrastruktur. Darüber könnte man natürlich einen eigenen Artikel schreiben. Aber zunächst einmal kann eine IaC-Plattform verschiedene SaaS-Plattformen für mehrere Bereitstellungsoptionen und Cloud-Marktplätze zusammenfassen.

Weitere direkte Vorteile sind die Standardisierung, die Automatisierung der Bereitstellung (CI/CD), eine schnellere Fehlerbehebung sowie eine höhere Produktivität und Effizienz bei der Softwareentwicklung.

 

Erwägen Sie die Verwendung des „Strangler Pattern“

Der Strangler Pattern ist eine Methode zur schrittweisen Migration einer Architektur von einem Monolith zu Microservices.  Durch die Verwendung einer API-Routing-Struktur wird die Benutzeraktivität an den neuen Microservice weitergeleitet, wenn jedes Feature/jede Funktion als Microservice freigegeben wird. 

Dies hat eine Reihe von Vorteilen, da es den „Big-Bang-Ansatz“ vermeidet, der von Natur aus riskant ist. Darüber hinaus schafft es eine Möglichkeit, Failbacks schnell zu überwinden. Außerdem können Sie einen „Dark Launch“ durchführen, bei dem Sie den Benutzerverkehr duplizieren und ihn zu Testzwecken an einen neuen Mikrodienst senden.

 

Legacy-Prozess durch moderne Alternativen ersetzen

Cloud-Anbieter verfügen über eine Fülle von Services, die dabei helfen, Legacy-Prozesse wie die Stapelverarbeitung zu modernisieren.  Nutzen Sie beispielsweise Warteschlangen und Streams, um Services zu entkoppeln und eine Echtzeit-Alternative zu Batch-Prozessen anzubieten. Mit diesen serverlosen Cloud-Optionen können Sie von einem Batch-/Planparadigma zu einem ereignisbasierten Paradigma wechseln.

 

Solving Together™

Jeder ISV möchte sich in einer sich ständig ändernden und beschleunigenden Umgebung neu erfinden. Für ISVs gibt es mehrere gute Gründe, die Struktur ihres Unternehmens und ihrer Services zu ändern. Beispielsweise haben sich die Anforderungen und Wünsche Ihrer Kunden geändert, Ihr Unternehmen möchte schnell skalieren oder Sie müssen Ihrer Konkurrenz einfach einen Schritt voraus sein.

Die Chancen stehen gut, dass Ihr Unternehmen vor den gleichen Herausforderungen steht und Sie dafür verantwortlich sind, diese mit Ihrem Team zu lösen. Einige der Fragen, die wir bei der Arbeit mit ISVs häufig erhalten – und bei deren Beantwortung wir helfen, sind die Folgenden:

  • Was muss sich ändern, sowohl in technischer als auch in organisatorischer Hinsicht, damit wir für die Zukunft gerüstet sind?
  • Wie sollte mein Unternehmen mit dem Wechsel von einem Lizenz- zu einem Abonnement-Verkaufsmodell umgehen?
  • Was ist mein angestrebtes Betriebsmodell?
  • Wie stelle ich sicher, dass alle Beteiligten mit den erforderlichen Änderungen einverstanden sind?
  • Sollten wir unsere Umgebung nach dem Prinzip „Lift & Shift“ umstellen oder damit beginnen, unsere Anwendung und unsere Arbeitsweise zu ändern, um Cloud Native zu werden?

Sind Sie ein ISV und möchten Ihr Unternehmen in die Cloud verlagern? Unsere Experten können eine geeignete Roadmap erstellen, um Ihre Strategie zur Cloud-Einführung zu beschleunigen.

Integrieren Sie einen Cloud-nativen Ansatz in Ihre Anwendungsentwicklung