RTL +
Referenz - 14.08.2023

Wie die Modernisierung der Software-Architektur bei RTL+ Abhängigkeiten reduziert.

Als tarent maximieren wir die Wertschöpfung unserer Kunden durch modernste Enterprise- und Software-Architektur. Seit 2021 haben wir RTL dabei unterstützt, ihren Streamingdienst RTL+ in einer Weise zu modernisieren, die nicht nur technologisch innovativ, sondern auch strategisch wertvoll ist.

In diesem Artikel zeigen wir, wie die Implementierung von GraphQL die Abhängigkeiten zwischen Teams reduziert, was zu verbesserten Time-to-Market-Zeiten, Kosteneinsparungen und einer gesteigerten Agilität führt.

tarent hat sich darauf spezialisiert, Softwareplattformen zu entwickeln, die den Anforderungen digitaler Geschäftsmodelle gerecht werden. Mit einer Kombination aus Produktmanagement, Softwareentwicklung und agilen Arbeitsmethoden helfen wir Unternehmen dabei, die Potenziale der Digitalisierung zu nutzen.

Wie die Modernisierung der Software-Architektur bei RTL+ Abhängigkeiten reduziert.

Die sich ständig weiterentwickelnde Medienwelt stellt eine dynamische Herausforderung dar, der sich auch RTL+ stellt. Die mutige Entscheidung, die bestehende Software-Architektur von einem Backend-for-Frontend (BFF)-Muster auf GraphQL mit Federation umzustellen, hat nicht nur die technische Effizienz verbessert, sondern auch erhebliche betriebswirtschaftliche Vorteile gebracht.

In modernen digitalen Plattformen ist die Verwendung von Microservices State-of-the-Art. Häufig wird der MACH-Ansatz (Microservice, API-first, Cloud-Native, Headless) verfolgt. Eine konsolidierte und harmonisierte API, die für Mobile-Apps und Web-Frontends oder Partner bereitgestellt wird, bleibt oft als begehrter Wunsch zurück. In solchen Fällen wird eine durchgehende Authentifizierung oder eine API über viele Services realisiert, was oft mittels des Backend-for-Frontend (BFF) Pattern, mit einer API für jedes Frontend, anstatt einer API für alle Frontends gelöst wurde. So auch bei unserem Kunden.

Kommunikation Microservices mit Backend-for-Frontends Pattern.

BFF birgt Abhängigkeiten und Code-Duplizierung

Hierbei stößt man jedoch auf eine Herausforderung: Die eigentlich unabhängigen Domänen-Teams können nicht mehr unabhängig agieren, da jede Änderung im API Gateway reflektiert, integriert und getestet werden muss, um weitere Fehler zu vermeiden. Selbst wenn Frontend- und Backend-Teams getrennt sind, ergeben sich dadurch zusätzliche Abhängigkeiten und Aufwände, die sich negativ auf die Durchlaufzeit, wie Time-to-Market und From-Concept-to-Cash, auswirken. So wird redundanter Code für jedes BFF geschrieben und die Umsetzung der jeweiligen User Stories konkurrieren mit weiteren Anforderungen, und werden so nicht synchron umgesetzt.

Wie kann nun das Ziel erreicht werden, ohne dabei die negativen Konsequenzen in Kauf nehmen zu müssen?

GraphQL Federation ersetzt die Notwendigkeit von BFFs

Für RTL+ lag die Lösung in einer Umstellung des API-Konzeptes von REST auf GraphQL. Mit dieser Strategie konnten sie die BFFs abschaffen, die wegen redundantem Code und unterschiedlichen Umsetzungszeiten in den Teams als problematisch galten. GraphQL ermöglicht Client-spezifische Anfragen, die individuell gestellt und verarbeitet werden können. Dies löst nebenbei auch das Over-/Under-fetching Problem von REST.

Kommunikation Microservices mit GraphQL Federation.

Das Kernstück dieser Strategie ist, dass die Schema-basierten APIs der einzelnen Komponenten automatisiert zu einem übergeordneten Schema zusammengeführt werden können. Durch den Ansatz der GraphQL Federation entsteht aus vielen kleineren APIs von einzelnen Microservices eine gesamte API. Eine automatisierte Schema-Registry kann überprüfen, ob Änderungen einer Partei funktionieren oder nicht, wodurch die Teams ihre Komponenten weiterentwickeln können – ohne neue Abhängigkeiten zu erzeugen.

Ein Faktor, der allerdings beachtet werden sollte: Ein wenig Governance ist nötig, um sicherzustellen, dass die API einheitlich bleibt. In unserem Fall hat eine Community of Practice dafür gesorgt, die Entwickler zu involvieren und in die Erstellung und Pflege der Regeln einzubeziehen. Ein solcher partizipativer Ansatz, der auf Augenhöhe mit den Teams arbeitet wird, ist ein zentraler Wert bei tarent und hat sich als ein entscheidender Erfolgsfaktor für den erfolgreichen Einsatz eines Dienstleisters erwiesen.

Interdisziplinäre Domain Teams können unabhängig voneinander entwickeln.

Fazit: Ist GraphQL die bessere Lösung?

Der Erfolg spricht für sich: Durch die Einführung von GraphQL konnten viele Teams gemeinsam an einer globalen API arbeiten, was eine Zeitersparnis von bis zu 30 % ermöglichte und die autonome Arbeit der Teams förderte. Diese Effizienzsteigerung hatte einen direkten Einfluss auf die Time-to-Market und die Kosten und stellte damit einen erheblichen betriebswirtschaftlichen Vorteil dar.

Darüber hinaus ermöglichte die Implementierung von GraphQL Federation eine schnellere Einführung von API-Funktionen und reduzierte die Anzahl der Backend-Anfragen, was wiederum zu Kosteneinsparungen führte. Schlüsselfaktoren für den Erfolg der Implementierung von GraphQL Federation waren neben dem Tooling und Schema-Management auch die Fehleranalyse und das Community Building.

Insgesamt hat sich Federated GraphQL für RTL+ als eine rentable und praktikable Lösung erwiesen, die das Unternehmen technologisch voranbringt und gleichzeitig einen starken Business-Nutzen bietet.

Was sagt unser Kunde?

Steffen Führes,
VP Product Technology RTL+

Für die erfolgreiche Weiterentwicklung von RTL+ arbeiten wir mit dem SAFe Framework in vielen Teams zusammen. Die Kolleginnen und Kollegen von tarent passen hervorragend zu uns. Einerseits sind sie fachlich exzellent, andererseits können wir sie in verschiedenen Rollen einsetzen, u. a. als Softwarearchitekt und -entwickler im Frontend- und Backendbereich sowie als Product Owner und Scrum Master.
Solche professionellen, vertrauensvollen Dienstleister sind für uns ein hervorragender Partner, mit dem wir langfristig zusammenarbeiten möchten.

Sehen Sie das Potenzial von GraphQL für Ihr Unternehmen?

Bei RTL+ haben wir gesehen, wie viel wertvolle Zeit durch GraphQL gewonnen werden kann. Wir bei tarent würden uns freuen, auch Sie auf dieser spannenden Reise zu begleiten. Lassen Sie uns gemeinsam herausfinden, wie wir Ihr Geschäft mit GraphQL auf die nächste Stufe heben können. Melden Sie sich noch heute bei uns – wir freuen uns auf den Austausch mit Ihnen.

Mehr Insights in Ihre Inbox!

Mit der kostenlosen Anmeldung erhalten Sie regelmäßig spannende Impulse zu realen Projekten. So bleiben Sie auf dem neusten Stand, wie moderne Softwareentwicklung auch Ihr Unternehmen voran bringen kann.

 Ich akzeptiere die Datenschutzbestimmungen.