Frontend as a Service – einfach erklärt

Um zu erklären was ein Frontend as a Service ist oder macht muss man einen Schritt zurücktreten und sich zunächst der Serviceorientierten Architektur (SOA) zuwenden. SOA ist die Antwort auf die zunehmende Innovationsgeschwindigkeit in der IT. Der gute alte Monolith – also ein Softwareprogramm, das versucht einen möglichst großen Anwendungsbereich abzudecken – ist heute nicht mehr in der Lage, eine ausreichende Flexibilität und Geschwindigkeit zu bieten.

Monolith vs Service Oriented Architectur

Everything as a Service

Es geht zum einen um die Atomisierung der Funktionen und zum anderen darum, Software nicht mehr kompliziert installieren und betreiben zu müssen, sondern sie einfach als Service konsumieren zu können.

Auf diese Weise können neue Dienste flexibel hinzugefügt oder auch bestehende Dienste ersetzt werden.

Bekannte Anbieter von API-First beziehungsweise Headless E-Commerce-Lösungen sind commercetools, SAP YaaS und im Bereich Headless CMS contentful oder Kentico Cloud.

Kopflose Dienste – Headless CMS und Headless Shops

Im Zuge dieser Spezialisierung verlieren viele Systeme ihren Kopf: das Frontend. So können sich die Hersteller voll auf die fachliche Funktionalität konzentrieren und bieten eine maximale Flexibilität in der Darstellung. Das Frontend kann aber nicht ersatzlos wegfallen, denn die bereitgestellten Inhalten müssen ja dargestellt und durch den Benutzer konsumiert werden. Hier wird der Pfad der Tugend – also der Service-Orientierung – in der Regel verlassen:

Üblicherweise wird hier eine individuelle Software auf Basis von Entwicklungsframeworks wie Symfony oder AngularJS entwickelt. Das hat einen einfachen Grund: es gibt noch kein Frontend as a Service. Während es also für jeden Part einer Micro-Service-orientierten Architektur eine Vielzahl von Anbietern zur Auswahl gibt, müssen Unternehmen im Frontend mit einer »handmade« Lösung vorlieb nehmen.

Frontend as a Service

Frontend as a Service

Frontastic hat das erste cloud-first und mobile-first Frontend as a Service angekündigt. Ein Frontend as a Service kommt mit den gleichen Nutzenversprechen für die oberste Applikationsschicht einher, wie die anderen Services:

  • Einfache Konsumierbarkeit, ohne aufwändige Installation oder Programmierung
  • Einfache Skalierbarkeit
  • Kein Know-how für Betrieb etc. erforderlich, da diese Teil des Services sind
  • Flexible Abrechnung

Funktionsweise des Frontend Services

Der Frontend Service ist der Dienst, der dafür verantwortlich ist, die richtigen Inhalte in den unterschiedlichen Zielsystemen (Smartphone, Desktop-Browser, Display am Point-of-Sales, Wearable wie zum Beispiel Smartwatch, …) schnell und für das jeweilige Display optimal darzustellen.

Die Inhalte können dabei aus unterschiedlichsten Quellsystemen kommen: klassisch aus einem Content Management System (CMS), aus einer E-Commerce-Lösung, aber auch aus Quellen wie Enterprise Ressource Planning (ERP) Systeme oder CRMs (Customer Relationship Management) sowie viele weitere (siehe Tabelle »Everything as a Service«) sind denkbar.

Im Frontend as a Service werden diese Quellen zu Atomic Design Bausteinen zusammengefügt. Diese Bausteine können aus unterschiedlichen Quellsystemen kommen, zum Beispiel ein bestimmter Artikel aus dem E-Commerce und ein ergänzender Text aus dem CMS. In einem Partner-Portal beispielsweise könnten es bestimmte Informationen zum Partner und seinen Leads aus dem CRM und weitere Informationen, zum Beispiel zum Umsatz des Partners, aus dem ERP-System sein.

Diese Bausteine sind zunächst vollkommen layout-unabhängige Beschreibungen, die in der nächsten Ebene von Redakteuren zu device-spezifischen Layouts zusammengefasst werden. So gibt es für den klassischen Shop unterschiedliche Layouts für das Smartphone, den Desktop und die TV-App.

Der große Vorteil von Frontastic liegt darin, dass der Redakteur keine Unterstützung eines Dienstleisters benötigt, um diese Layouts zu erstellen. Der Dienstleister / Entwickler hingegen kann sich auf die Weiterentwicklung der Integrationen, auf grundsätzliche Funktionalitäten und Erweiterung des Baukastens fokussieren.