Zurück

Microservices

ÖFIT-Trendschau

 

Öffentliche Informationstechnologie in der digitalisierten Gesellschaft

Trendthema 36:

Microservices

Stand: Juli 2016



 
Herausgeber:
Jens Fromm und Mike Weber
Kompetenzzentrum Öffentliche IT
Fraunhofer-Institut FOKUS
Kaiserin-Augusta-Allee 31, D-10589 Berlin
Telefon: +49 30 3463 - 7173
Telefax: + 49 30 3463 - 99 - 7173
info@oeffentliche-it.de
www.oeffentliche-it.de
www.fokus.fraunhofer.de


Autorinnen und Autoren der Gesamtausgabe:
Mike Weber, Stephan Gauch, Faruch Amini, Tristan Kaiser, Jens Tiemann, Carsten Schmoll, Lutz Henckel, Gabriele Goldacker, Petra Hoepner, Nadja Menz, Maximilian Schmidt, Michael Stemmer, Florian Weigand, Christian Welzel, Jonas Pattberg, Nicole Opiela, Florian Friederici, Jan Gottschick, Jens Fromm


Autorinnen und Autoren einzelner Trendthemen:
Michael Rothe, Oliver Schmidt

ISBN: 978-3-9816025-2-4

Juli 2016

Autorinnen/Autoren:
Jan Gottschick et al.

Bibliographische Angabe:
Jan Gottschick et al. 2017, Microservices, In: Jens Fromm und Mike Weber, Hg., 2016: ÖFIT-Trendschau: Öffentliche Informationstechnologie in der digitalisierten Gesellschaft. Berlin: Kompetenzzentrum Öffentliche IT, http://www.oeffentliche-it.de/-/microservices


Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung 3.0 Deutschland Lizenz (CC BY 3.0 DE) http://creativecommons.org/licenses/by/3.0 de/legalcode. Bedingung für die Nutzung des Werkes ist die Angabe der Namen der Autoren und Herausgeber.

Microservices

 

Veränderungs- und Innovationszyklen in der IT verlaufen immer schneller. Die Anpassung monolithischer Systeme an diese Dynamik ist mit einem hohen Aufwand und einem erheblichen Entwicklungsrisiko verbunden. Eine mögliche Lösung bieten flexible, skalierbare Microservices. Diese realisieren einzelne, in sich abgeschlossene Geschäftsaktivitäten, die zu einem Gesamtsystem kombiniert werden. Liegt darin die Lösung für aktuelle und zukünftige Herausforderungen an die IT – oder wird die Komplexität nur auf eine andere Ebene verlagert?

Erleichterte Umsetzung innovativer Lösungen

Microservices (µServices) sind funktional stark fokussierte Software-Bausteine, die von kleinen Teams entwickelt werden können und zu einem Gesamtsystem flexibel kombiniert werden. Sie dienen der effizienten, digitalen Unterstützung von Geschäftsprozessen. µServices sollen dabei helfen, Änderungen von Geschäftsmodellen und -prozessen sowie die Änderungen von gesetzlichen Normen und gesellschaftlichen Erwartungen zeitnah umzusetzen - etwa auch im E-Government (siehe Verwaltung x.0). Die Grundidee, ein IT-System in kleine, wiederverwendbare Komponenten zu zerlegen und diese zu vernetzen, gibt es bereits seit Jahren unter dem IT-Paradigma der Modularisierung etwa durch Service-Oriented Architecture (SOA) und der zugehörigen technischen Lösung mit einem Enterprise Service Bus (ESB). µServices sind eine alternative Interpretation dieser Ideen von verteilten Systemen mit neuen Schwerpunkten.
Einzelne µServices werden stark auf einen inhaltlichen Kontext fokussiert, wie beispielsweise auf einen digitalen Bezahlvorgang, und technisch streng voneinander abgegrenzt und gekapselt. Über offene Kommunikationsschnittstellen (APIs) sind sie nur lose miteinander gekoppelt. Auf diese Weise können µServices unabhängig voneinander mit unterschiedlichen Technologien entwickelt, installiert, bereitgestellt und gewartet werden. Dies erleichtert die Umsetzung innovativer Ansätze und Lösungen. Sie können zudem unabhängig voneinander skaliert werden, um Anforderungen an Performanz und Verfügbarkeit differenziert gerecht zu werden. Der Schwerpunkt der Herangehensweise liegt weniger auf der einfachen Wiederverwendung von Komponenten, als vielmehr auf Praktiken mit dem Ziel, Änderungen an den IT-Lösungen flexibel und insbesondere schnell umsetzen zu können.

Begriffliche Verortung

Netzwerkartige Verortung des Themenfeldes

Netzwerkartige Verortung des Themenfeldes

Gesellschaftliche und wissenschaftliche Verortung

Gesellschaftliche und wissenschaftliche Verortung

Microservices wecken hohe Erwartungen

Die gewonnene Flexibilität, die geringeren Entwicklungsrisiken der einzelnen Services und die klare Abgrenzung einzelner Funktionen, bei der jeder µService ein quasi-unabhängiges Produkt darstellt, haben wesentlich zu ihrem Einsatz bei großen Unternehmen der Digitalbranche geführt. In einem rasanten Tempo werden derzeit auch die Technologien für Enterprise-Lösungen optimiert und bestehende Middleware-Plattformen transformiert, um auf µServices vorbereitet zu sein. Das Thema geht mit hohen kurz- und mittelfristigen Erwartungen von Branchenkennern einher.
µServices können nur dann die an sie gerichteten Erwartungen erfüllen, wenn sie in eine übergreifende Cloud-Lösung eingebettet sind. Die Anforderungen an die Orchestrierung dutzender oder hunderter µServices sind beträchtlich. So ist eine höhere Automatisierung des IT-Betriebs notwendig. Der Aufbau der erforderlichen IT-Infrastruktur stellt eine beträchtliche Hürde dar, deren Überwindung massive Investitionen erfordert. Die konkrete Umsetzung geht mit neuen, in vielerlei Hinsicht höheren Anforderungen einher: die verteilten Systeme sollen hoch skalieren und müssen in Fehlersituationen ausreichend widerstandsfähig sein.

Gesamtstrategie erforderlich

Um zu technisch nachhaltigen Lösungen zu kommen, sollten gerade angesichts der gewünschten Flexibilität im Rahmen einer gemeinsamen IT Governance einheitliche Grundsätze und Vorgehensweisen vereinbart und Best-Practices berücksichtigt werden. Damit viele kleine µServices am Ende zu einer sinnvollen Gesamtlösung aggregiert werden können, ist eine gut durchdachte Makroarchitektur notwendig, die den technischen Rahmen vorgibt. Dies betrifft insbesondere die Schnittstellen, die definiert, gepflegt und veröffentlicht werden müssen. Um µServices zu identifizieren und deren Umfang sowie die abgrenzenden Kontexte zu bestimmen, stehen Methoden wie Domain-Driven Development zur Verfügung. Die Umstellung auf eine µService Architektur erfordert daher eine längerfristige Migration, bei der auf Basis einer Gesamtstrategie Schnittstellen geschaffen werden. µServices können dann zunächst neue Funktionen realisieren und später schrittweise vorhandene Funktionalitäten übernehmen.
Was bedeutet dies für den öffentlichen Sektor? Eine entscheidende Voraussetzung für die Umsetzung von µServices sind effektive, effiziente und direkte Kommunikationsstrukturen bei IT-Anbietern und Verwaltungen, um notwendige technische, geschäftliche und administrative Abstimmungen zwischen den für die einzelnen Services verantwortlichen Teams zu gewährleisten. Wird zudem externer IT-Sachverstand benötigt, lässt sich dieser dementsprechend nur schwierig mit gegenwärtigen Vorgangsmodellen und klassischen Vergabeverfahren hinzuziehen. Erst wenn diese rechtlichen und organisationskulturellen Fragen geklärt sind, könnten sich µServices als durchaus vorteilhaft für die Behörden-IT erweisen. Die funktionale Differenzierung öffentlicher Verwaltungen mit klar definierten Zuständigkeiten für einzelne Verwaltungsleistungen fügt sich nahtlos in das neue Entwicklungsparadigma.

Themenkonjunkturen

Suchanfragen und Zugriffe auf Wikipedia-Artikel

Suchanfragen und Zugriffe auf Wikipedia-Artikel

Wissenschaftliche Publikationen und Patentanmeldungen

Wissenschaftliche Publikationen und Patentanmeldungen

Folgenabschätzung

Möglichkeiten

  • Entwicklung neuer Services mit überschaubarem Risiko
  • Differenzierte Skalierbarkeit und Elastizität der Systeme
  • Flexibilität und Innovationsoffenheit der Systeme
  • Kontinuierliche Aktualisierungen
  • Ausschöpfung aller Cloud-Vorteile (siehe Cloud Computing)

Wagnisse

  • Anpassung der Innovations- und Kommunikationskultur der Organisation
  • Schaffen der technischen und organisatorischen Voraussetzungen für eine automatisierte Cloud-Infrastruktur
  • Aufwand der Migration
  • Überwindung der technologischen und organisatorischen Pfadabhängigkeiten (Legacy-, Heritage- bzw. Vintage-Systeme)
  • Akzeptanz und Annahme des neuen Entwicklungsparadigmas
  • Gewährleistung der Qualität einzelner µServices
  • Komplexität der Systeme mit Hunderten oder Tausenden µServices
  • Gewährleistung des angemessenen Antwortverhaltens des Systems

Handlungsräume

Strategie und Vision

Um die Voraussetzungen für die Nutzung der Vorzüge von µServices zu schaffen, bedarf es gleichermaßen einer Vision und einer Umsetzungsstrategie. Sie helfen bei der Vermeidung von Fehlinvestitionen durch das alleinige Festhalten an monolithischen Lösungen.

Pragmatische Umsetzung

Die Umstellungsrisiken sind beträchtlich. Um diese zu managen ist Pragmatismus gefragt, etwa die Öffnung bestehender Systeme für neue µServices, deren Entwicklung mit innovationsorientierten Vergabeverfahren ausgeschrieben wird.

Kommunikationskultur

Mit wachsender technischer Komplexität nimmt die Bedeutung der Kommunikationskultur zu, um mehr eigenständige Verantwortungsbereiche und deren Koordinierung zu ermöglichen und zu fördern.