WebMethods AppMesh: Eine geniale Idee

WebMethods AppMesh: Eine geniale Idee

Vor ein paar Jahren haben wir bei der Software AG sogenannte „Tech Interrupts“ eingeführt – Zeit, die unsere Produktingenieure dem kreativen Denken widmen. Im vergangenen Jahr entstanden in diesen kreativen Auszeiten neue fruchtbare Ideen und ein brandneues Konzept namens AppMesh.

Die Idee ist einfach: die Bereitstellung digitaler Produkte in einer Cloud-Umgebung erleichtern. Dies ist jedoch leichter gesagt als getan, da das Zusammenspiel von Anwendungen, APIs und einer Vielzahl von Services, Microservices und Containern in der Cloud koordiniert werden muss. Wenn die neue App also nicht rund läuft, könnte es an irgendeiner anderen Cloud-Komponente liegen. Und wenn Apps versagen, lassen Sie Ihre Kunden im Stich.

Beispielsweise kaufe ich Zugfahrkarten über eine App auf meinem Handy. Dafür werden mehrere Microservices benötigt: einer für die Suche im Fahrplan und weitere für die Sitzplatzreservierung, die Prüfung der Reisebestimmungen, die Preisermittlung und die Bezahlung.

Diese verschiedenen Services können sich unterschiedlich schnell ändern; so stehen einer meist variablen Preisgestaltung eher langfristige Bestimmungen gegenüber. Wenn die Nachfrage an Feiertagen steigt, muss der Microservice das Dreifache oder Vierfache des Datenverkehrs bewältigen. Fällt einer dieser Microservices aus, bekomme ich keine Zugfahrkarte. Ich komme nicht zu meiner Familie nach Hause und bin genervt!

Woher weiß der App-Anbieter nun, welcher der vielen beteiligten Services nicht funktioniert? Dies ist nur eine von vielen neuen Herausforderungen im Zusammenhang mit Cloud-Anwendungen auf der Basis von Microservices. Die Microservices können nur als Einheit funktionieren, wenn sie sich gegenseitig finden – aber Netzwerkadressen können sich in der Cloud ändern. Mit der Sicherheit verhält es sich ebenfalls anders: Das Sicherheitskonzept zentralisierter Tools ist für die Cloud ungeeignet. Und funktioniert Ihre App noch, wenn ein Cloud-Container ausfällt?

Um dieses Problem zu lösen, haben einige Unternehmen ein Service Mesh eingeführt, also eine separate Netzwerkschicht zur Steuerung der Kommunikation zwischen den Services, der Sicherheit und der Fehlertoleranz. Service Meshes lassen sich aber nicht ohne Weiteres einrichten und haben ihre Grenzen. Sie können nicht bieten, was Anwendungsverantwortliche für erfolgreiche Apps brauchen.

Anwendungsverantwortliche müssen ihr Produkt für bestimmte Verbrauchergruppen attraktiv und persönlich gestalten. Sie möchten die Nutzung verfolgen und optimieren. Außerdem benötigen sie eine moderne Zugriffskontrolle und erweiterten Schutz der privaten Nutzerdaten.

Das „Aha“-Erlebnis – AppMesh

Aus diesem Grund hat unser Team den nächsten logischen Schritt getan und AppMesh entwickelt, eine leistungsstarke Steuerungsschicht für cloudnative Geschäftsanwendungen.

Mit AppMesh können Sie Regeln zur Steuerung des App-Verhaltens erstellen, ohne einzelne Microservices zu ändern. Über diese Regeln ist es allein durch Konfiguration (nicht durch Codierung) möglich, eingehende und ausgehende Daten zu modifizieren, Benutzer intelligent an verschiedene Services weiterzuleiten, Antworten zu personalisieren und das Benutzerverhalten zu verfolgen, unbefugten Benutzern den Zugriff zu verweigern und die Sicherheit der Daten zu gewährleisten. Sie können sogar alte Services Ihrer Anwendung durch neue ersetzen, ohne dass Ihre Benutzer dies bemerken.

Mit AppMesh kann der Anbieter meiner Bahn-App beispielsweise feststellen, dass es sich bei dem ausgefallenen Service um die Preisermittlung gehandelt hat. Somit kann er sicherstellen, dass ich dynamisch an einen Backup-Service umgeleitet werde und keinen Anlass zu Beschwerden habe. Ich kann ohne Probleme meinen Zug auswählen, meinen Sitzplatz reservieren und meine Fahrkarte bezahlen.

AppMesh als Schaltzentrale der Microservices ergänzt Anwendungskontext. Dank tiefer Einblicke und der Kontrolle über die Services können Unternehmen das Kundenerlebnis nachvollziehen und verbessern. Die dynamisch austauschbare Mesh-Architektur ist zuverlässig und skalierbar. Zudem werden Geschäftsrisiken durch Sicherheits- und Governance-Richtlinien verringert.

Das Produktteam der Software AG hat erkannt, dass neue API-Management-Lösungen moderne Architekturen für cloudnative Apps unterstützen müssen. Das ist nur einer der Gründe, warum ich so gerne mit diesem Team arbeite.

Teilen:
10 Thesen zur digitalen Transformation – Teil 5

10 Thesen zur digitalen Transformation – Teil 5

Mit der Verfügbarkeit großer Datenmengen und neuen Verarbeitungsmöglichkeiten sind im Rahmen der digitalen Transformation viele neue Geschäftsmodelle entstanden. Sie haben das Potenzial, ganze Märkte auf den Kopf zu stellen, und bieten eine große Chance für etablierte Unternehmen, sich auf die Gewinnerseite der digitalen Transformation zu schlagen. In dieser Artikel-Serie widmen wir uns den 10 Thesen zur digitalen Transformation. Im folgenden Beitrag geht es um die Cloud als Drehscheibe für Anwendungsentwicklung, zentrale Laufzeitumgebungen und Marktplätze.

Bereits seit einigen Jahren zeichnet sich der Trend ab, dass vor Ort installierte Anwendungen (On-Premise) durch Cloud-Services ersetzt werden. Software-as-a-Service (SaaS) ist mittlerweile ein anerkanntes Software-Delivery-Modell, bei dem für die Softwarenutzer beispielsweise Ressourcenmanagement, Updates und Versionskontrolle entfallen. Allerdings kann vorhandene Software nicht eins zu eins in der Cloud bereitgestellt werden. Software muss speziell für die Cloud konzipiert werden und rund um die Uhr verfügbar, schnell und reibungslos aktualisierbar, skalierbar und mandantenfähig sein. Vor allem im IoT-Kontext gewinnt die Cloud an Bedeutung, da die von IoT-Anwendungen benötigte Skalierbarkeit und Flexibilität beim Cloud-Computing viel eher gegeben sind als bei der On-Premise-Verarbeitung.

These 6: Die Cloud als zentrales Element

Im IoT-Kontext reicht Cloud-Computing jedoch möglicherweise nicht aus. Die riesigen, im IoT generierten Datenströme enthalten oft redundante oder irrelevante Informationen. Zudem sind die unvermeidlichen Latenzen in Cloud-Umgebungen für einige Berechnungsprozesse zu hoch. Infolgedessen muss Cloud-Computing um Edge-Computing erweitert werden. So können einige Berechnungen in der Nähe der Datenquellen erfolgen, um Datenströme zu komprimieren oder schnelle Entscheidungen zu treffen. Ein prominenter Anwendungsfall ist die Car2X-Kommunikation, bei der das Fahrzeug über die Rechenleistung verfügt, aus Sensor- und Umgebungsdaten blitzschnell Entscheidungen abzuleiten. Berechnungen, die nicht zeitkritisch sind oder Daten aus vielen Quellen heranziehen, können in der Cloud durchgeführt werden. Obwohl die Cloud ein immer breiteres Anwendungsspektrum abdeckt, werden bestimmte Berechnungen auch in Zukunft lokal (On-Premise) vorgenommen, insbesondere im B2B-Bereich. Dies gilt vor allem für geschäftskritische, maßgeschneiderte Anwendungen, die aufgrund ihrer Komplexität oder aus Sicherheits- oder Latenzgründen nicht einfach in die Cloud verlagert werden können.

Komplexe Deployments

Die Datenverarbeitung erfolgt oft über eine Mischung aus Edge-, Cloud- und On-Premise-Computing. Daher müssen diese verschiedenen Verarbeitungsumgebungen zwecks Kommunikation und gemeinsamer Datennutzung miteinander verbunden werden. Traditionelle Batch-Ansätze für das Verschieben von Massendaten werden den aktuellen Anforderungen an die Verarbeitungsgeschwindigkeit nicht gerecht. Stattdessen sind schnelle Verbindungen in Quasi-Echtzeit erforderlich. Skalierbare und verteilte Message-Bus-Installationen sind aus derartig komplexen Verarbeitungsumgebungen nicht wegzudenken.

These 7: Verteilte Daten – in Echtzeit vernetzt

Besonders Deployments im IoT-Umfeld sind gekennzeichnet durch eine hochgradig verteilte Verarbeitung mit geringer zentraler Kontrolle und intensivem Datenaustausch. Die traditionelle Vorgehensweise, Daten in zentralisierten Data-Warehouse-Systemen zu replizieren, wird zunehmend durch lokale Analysen mit Data-Streaming-Technologie ergänzt.

Da viele Anwendungsfälle Echtzeitverarbeitung und eine umgehende Reaktion auf Analyseergebnisse erfordern, ist die Latenz eines Data-Warehouse nicht mehr angemessen. Die Integration von Daten aus verteilten Quellen in Quasi-Echtzeit ist ebenfalls eine akzeptable Alternative zur physischen Batch-Replikation. Diese Entwicklungen sind vor dem Hintergrund der neuartigen Datenquellen zu sehen, die moderne IoT-Szenarien charakterisieren.

Das war Teil 5 unserer Artikel-Serie zu den 10 Thesen zur digitalen Transformation. Lesen Sie hier alle weiteren Teile nach deren Veröffentlichung:

Teil 1:

Teil 2:

Teil 3:

Teil 4:

Teil 5:

  • These 6: Die Cloud als zentrales Element
  • These 7: Verteilte Daten – in Echtzeit vernetzt

Teil 6:

Teilen:
10 Thesen zur digitalen Transformation – Teil 4

10 Thesen zur digitalen Transformation – Teil 4

Mit der Verfügbarkeit großer Datenmengen und neuen Verarbeitungsmöglichkeiten sind im Rahmen der digitalen Transformation viele neue Geschäftsmodelle entstanden. Sie haben das Potenzial, ganze Märkte auf den Kopf zu stellen, und bieten eine große Chance für etablierte Unternehmen, sich auf die Gewinnerseite der digitalen Transformation zu schlagen. Im folgenden Beitrag geht es um API-Management und Architekturkonzepte, die auf Microservices basieren, sodass Unternehmen agil und flexibel maßgeschneiderte Lösungen entwickeln können.

Der dritte Beitrag unserer Artikel-Serie endete mit der These, dass sich auf Grundlage offener und flexibler digitaler Plattformen schnell neuartige Anwendungen entstehen können.

Diese neuen digitalen Services lassen sich nur dann schnell und flexibel entwickeln und implementieren, wenn keine Änderungen an vorhandener monolithischer Software nötig sind. Vielmehr müssen sie lose gekoppelt und modular konzipiert werden. Ein neuer Service könnte beispielsweise auf bestehende digitale Services zurückgreifen und sie den Anforderungen entsprechend miteinander kombinieren. Voraussetzung dafür sind eindeutig definierte und fokussierte Funktionen. Eine solche Servicelandschaft wird besonders gut durch ein Architekturkonzept auf der Grundlage von „Microservices“ unterstützt. Der modulare Ansatz vereinfacht Entwicklung, Test und Pflege von Anwendungen, denn die kleinen Einheiten (Microservices) können entwickelt werden, während unabhängige Teams parallel arbeiten und kontinuierlich Services zur Verfügung stellen. Daraus ergibt sich die logische Schlussfolgerung:

These 4: Microservices und APIs sind die Grundlage für maßgeschneiderte Lösungen

Eine dynamische Umgebung, die aus einer Vielzahl sich ständig ändernder Services besteht, welche das Geschäftsmodell unterstützen, muss verwaltet und gesteuert werden. Diese Aufgaben übernimmt das API-Management. Es gibt vor, wer einen Service nutzen darf, bietet Self-Service-Portale für Serviceentwickler und stellt Backend-Services mithilfe von API-Schlüsseln sowie Eingangs- und Ausgangsfiltern sicher bereit. Darüber hinaus können über das API-Management Richtlinien festgelegt und umgesetzt werden, ohne die eigentlichen Services zu verändern. Latenz und Skalierung sowie Speicherverwaltung und Caching lassen sich an den tatsächlichen Bedarf anpassen. Zudem bietet API-Management sowohl historische als auch aktuelle Informationen über die Nutzung und Performance eines Services, sodass die Nutzer Trends ablesen und ihre Systemkonfiguration bei Bedarf anpassen können. Es deckt den gesamten Lebenszyklus eines Services ab: Planung, Test, Installation, produktiver Betrieb, Versionskontrolle und schließlich die Einstellung des Supports. Die digitale Transformation setzt eine „IT der zwei Geschwindigkeiten“ voraus. Mit der einen Geschwindigkeit werden zentralisierte Speicher- und Abfragesysteme (ERP, CRM, HR usw.) betrieben, mit der anderen die agile Entwicklung neuer Anwendungen, die die neuen „digitalen“ Geschäftsmodelle abbilden. API-Management schafft diese Möglichkeit, indem es die vergleichsweise unflexible Umgebung der Legacy-Systeme von der rasanten App-Entwicklung abkoppelt, die auf den neuen Datenströmen basiert.

Das Internet der Dinge

Eine anwendungsorientierte Sicht auf die digitale Transformation führt direkt zum Internet der Dinge (IoT). Die folgende Abbildung veranschaulicht das Zusammenspiel der physischen Dinge, einem sogenannten digitalen Zwilling und den erzeugten Daten.

In einer solchen Konstellation mit Dingen wie Fahrzeugen, Waschmaschinen, Kühlschränken oder anderen Gegenständen der realen Welt, legen die verfügbaren Daten den Grundstein für eine neue Art von Anwendungen. Die folgenden Beispielszenarien werden häufig diskutiert:

  • Predictive Maintenance: Analyse der Daten, um vorherzusagen, wann die nächste Wartungsmaßnahme ansteht
  • Bedarfsprognose: Nutzung der Daten, um die Nachfrage nach einem bestimmten Produkt zu einem bestimmten Zeitpunkt und an einem bestimmten Ort zu prognostizieren
  • Patientenfernbetreuung: Überwachung des Gesundheitszustands von Patienten in ihrer alltäglichen Umgebung
  • Vernetzte Fahrzeuge: Datenaustausch Car2Car (zwischen Fahrzeugen) und Car2X (zwischen Fahrzeugen und ihrer Umgebung) als Voraussetzung für Fahrerassistenz und autonomes Fahren

Diese Anwendungen haben gemeinsam, dass die zugrunde liegenden Daten nicht aus herkömmlichen IT-Systemen wie ERP-Umgebungen stammen. Allerdings erfordern die Anwendungsfälle die Interaktion mit traditionellen IT-Systemen im Unternehmen. Beispielsweise muss die Bedarfsprognose mit dem Auftrags- und Kundenmanagement verknüpft sein. Daraus folgt die fünfte These:

These 5: Digitalisierung findet größtenteils außerhalb der traditionellen IT-Systeme statt, aber die Integration mit diesen ist essenziell.

ERP-Systeme sind für Transaktionen mit klar definiertem Beginn und Ende ausgelegt, während das IoT einen fortwährenden Datenfluss oder Datenstrom erzeugt.

Typischerweise wird dabei ein riesiges Datenvolumen generiert, wobei viele dieser Daten möglicherweise irrelevant sind. Beispielsweise wird der Puls eines Patienten in regelmäßigen Abständen gemessen. Wenn es keine dramatischen Abweichungen gibt, sind die einzelnen Messungen aber nicht von Bedeutung. Daher müssen angesichts der IoT-spezifischen Gegebenheiten neue Ansätze zur Datenverarbeitung entwickelt werden. Charakteristisch für das IoT-Umfeld ist eine dreifache Interoperabilität, nämlich das Zusammenwirken von:

  1. Cloud
  2. On-Premise
  3. Edge

Edge-Computing bezeichnet im Allgemeinen Geräte, Maschinen, Roboter oder Computer, die sich nicht im Rechenzentrum der Firmenzentrale, sondern in einem Werk, einer Niederlassung oder an einem anderen Standort befinden.
Um einen harmonischen Dreiklang dieser unterschiedlichen Verarbeitungsmodelle zu gewährleisten, ist eine Architektur auf der Grundlage von Microservices genauso unentbehrlich wie die Verfügbarkeit geeigneter Datenintegrationsfunktionen (Konnektoren).

Das war Teil 4 unserer Artikel-Serie zu den 10 Thesen zur digitalen Transformation. Lesen Sie hier alle weiteren Teile nach deren Veröffentlichung:

Teil 1:

Teil 2:

Teil 3:

Teil 4:

  • These 4: Microservices und APIs: Grundlage für maßgeschneiderte Lösungen
  • These 5: Digitalisierung findet größtenteils außerhalb der traditionellen IT-Systeme statt, aber die Integration mit diesen ist essenziell.

Teil 5:

Teil 6:

Teilen:
10 Thesen zur digitalen Transformation – Teil 1

10 Thesen zur digitalen Transformation – Teil 1

Mit der Verfügbarkeit großer Datenmengen und neuen Verarbeitungsmöglichkeiten sind im Rahmen der digitalen Transformation viele neue Geschäftsmodelle entstanden. Sie haben das Potenzial, ganze Märkte auf den Kopf zu stellen, und bieten eine große Chance für etablierte Unternehmen, sich auf die Gewinnerseite der digitalen Transformation zu schlagen. Worauf müssen sich Unternehmen also einstellen und wie gestalten sie ihre Softwarelandschaft um, damit sie für den digitalen Wandel gut aufgestellt sind?

Der digitale Wandel treibt die gesamte Wirtschaft um, denn es gilt, die Rahmenbedingungen für digitale Geschäftsmodelle zu schaffen. Doch viele Unternehmen haben Mühe, sich anzupassen und die neuen Chancen, die durch diesen Wandel entstehen, zu nutzen. Bei aller Verunsicherung ist der Kern der digitalen Transformation jedoch relativ simpel erklärt: Er besteht darin, dass Software zunehmend Einzug in traditionelle Geschäftsprozesse hält. Diese Entwicklung ist unumkehrbar, jedoch ist sie keineswegs negativ zu bewerten. Sie bringt Unternehmen lediglich dazu, bestehende Geschäftsmodelle weiterzudenken und weiterzuentwickeln, wovon sie selbst und zusätzlich ihre Kunden profitieren können. Ihren wohl wichtigsten Impuls erhält diese Entwicklung durch Daten: zum Beispiel von Sensoren in Produkten oder Fertigungsanlagen, von E-Commerce-Kunden oder Fahrzeugen, die an Supply-Chains oder Logistikprozessen beteiligt sind. Sie alle und viele weitere Akteure in der modernen digitalen Welt erzeugen neue Arten von Daten. Diese Daten unterscheiden sich grundlegend von herkömmlichen Transaktionsdaten (ERP-Daten), bei denen ein physischer Kunde ein physisches Produkt bestellt und damit eine sehr überschaubare Anzahl von Daten entsteht. Physische Einheiten erzeugen von Natur aus keine wirklich großen Datenvolumen, kein „Big Data“. Digitale Datengeneratoren dagegen unterliegen diesen Beschränkungen nicht. Sensoren sammeln ununterbrochen Daten. Daher muss das batchbasierte ETL-Verfahren (Extract, Transform, Load), mit dem bisher etwas mühsam Daten aus mehreren unterschiedlichen Datenquellen verarbeitet wurden, durch eine integrierte Streaming-Technologie abgelöst werden.

Der digitale Zwilling physischer Dinge

Ein zentrales Element der digitalen Transformation besteht in der Überführung der physischen Welt der Dinge in die digitale Welt. Somit wird von greifbaren Dingen ein „digitaler Zwilling“ erschaffen. Diese Transformation erzeugt laufend wertvolle Daten, die von geeigneten Tools und Algorithmen analysiert werden können und neue Erkenntnisse liefern, so dass der digitale Zwilling dazu beiträgt, sein physisches Pendant erheblich zu verbessern. Zudem kann ein Eingreifen in die Supply Chain oder in technische Abläufe zuvor am digitalen Zwilling erprobt werden. Hat die Anpassung gewisser Faktoren wirklich positive Auswirkungen zur Folge? Mit welchen negativen Nebenwirkungen muss gegebenenfalls gerechnet werden und wie können diese aufgefangen werden? Das digitale Double liefert dazu belastbare Erkenntnisse.

Einzelhändler oder Software-Unternehmen?

Ein Vorbild für eine sehr erfolgreiche und äußerst disruptive digitale Transformation ist Amazon. Amazon wird oft als Einzelhändler der neuen Generation bezeichnet, doch tatsächlich handelt es sich um ein Softwareunternehmen, das gelernt hat, über das Internet Bücher und zugehörige Artikel zu verkaufen. Im Zuge seines Erfolgs bot Amazon zunächst eine Verkaufsplattform und später eine Softwareplattform mit Cloud-Diensten an. Die Frage ist nun, welche Branchen nach dem Einzelhandel als nächste den digitalen Wandel vollziehen werden. Welche anderen Märkte können Softwareunternehmen mit ihren softwarebasierten Geschäftsmodellen erobern? Beispiele für solche digitalen Eroberer sind Uber, Netflix und Airbnb sowie zahlreiche Finanzdienstleister, und alle haben eines gemeinsam: Sie sind nicht aus etablierten Marktteilnehmern hervorgegangen, sondern haben einen Keil zwischen etablierte Unternehmen und deren Kundschaft geschoben.

Disruption als Naturgesetz?

Christensens wegweisendes Werk „The Innovator’s Dilemma“ zeigt auf, dass erfolgreiche, führende Unternehmen im Grunde alles „richtig“ machen können und trotzdem ihre Marktführerschaft verlieren oder von neuen, unerwarteten Mitbewerbern vom Markt verdrängt werden. Handelt es sich hierbei um ein Naturgesetz, das für alle Branchen gilt? Wie ist es um die Automobilindustrie, die chemische und pharmazeutische Industrie, die Öl- und Gasindustrie, die Energieversorger, den Maschinen- und Anlagenbau sowie andere Branchen bestellt? Wie einfach kann ein Softwareunternehmen diese Märkte stören? Und wie finden die aktuellen Marktteilnehmer das richtige Maß an digitaler Transformation – sprich Software –, um die potenziellen Störenfriede selbst zu stören?

In zehn Thesen zur digitalen Transformation beleuchten wir diese Fragen und stellen sie in einer Artikel-Serie in den nächsten Wochen ausführlich vor:

Teil 1:

  • Die digitale Transformation

Teil 2:

Teil 3:

Teil 4:

Teil 5:

Teil 6:

Teilen: