TVNOW Replatforming-Umbau und Weiterentwicklung einer bestehenden Video-on-Demand-Plattform - Case Study

Die Seite wird erstellt Fritz Böhme
 
WEITER LESEN
TVNOW Replatforming-Umbau und Weiterentwicklung einer bestehenden Video-on-Demand-Plattform - Case Study
Case Study

TVNOW Replatforming–
Umbau und Weiterentwicklung
einer bestehenden
Video-on-Demand-Plattform
© inovex 2021
TVNOW Replatforming-Umbau und Weiterentwicklung einer bestehenden Video-on-Demand-Plattform - Case Study
CBC, das gemeinsame Produktions- und Tech-             Die neue Strategie sah ein Replatforming mit
nik-/IT-Unternehmen der Mediengruppe RTL               dem externen Cloud-Partner, AWS, vor. Dadurch
Deutschland, betreut unterschiedliche Formate          waren auch weitere Veränderungen der Arbeits-
der Mediengruppe, unter anderem die Sender             prozesse nötig. Die Zielvision war ein Setup mit
RTL, VOX, NITRO, n-tv, NOW! und GEO Tele-              crossfunktionalen und autonomen Teams, die
vision. Im gemeinsamen Projekt mit inovex steht        selbstständig die Entwicklung ihres Aufgabenbe-
das Produkt TVNOW im Fokus. Es soll eine               reichs vorantreiben können.
sichere und innovative Plattform für die kom-
                                                       Dieser sogenannte „DevOps“-Gedanke be-
menden Herausforderungen im TV/Entertain-
                                                       schreibt im eigentlichen Sinne eine Unter-
ment-Markt entstehen. Ziel ist es, die Plattform
                                                       nehmenskultur, die – frei von Hierarchien und
in die Cloud zu verlagern, die Themen und Teams
                                                       Silodenken – eine effektive Zusammenarbeit von
neuzustrukturieren und auf agile Arbeitsweise
                                                       Entwicklung und Betrieb im Fokus hat, mit dem
umzustellen.
                                                       Ziel, stabile, hochwertige Software schnell um-
                                                       zusetzen.
Ausgangssituation und Zielvision
Ursprünglich wurde TVNOW von RTL im eige-              Diese Änderungen haben auch ein Umdenken
nen Rechenzentrum betrieben. Die Plattform             in den Prozessen und Teams nötig gemacht: Die
sollte jedoch innovativer und ausfallsicherer          Fachlichkeiten der Teams wurden zusammen-
weiterentwickelt werden und neue Features              gefasst und anschließend die Plattform daran
schneller bereitstellen können.                        ausgerichtet. Zu Projektstart wurden unter ande-
                                                       rem technische Teams in fachliche Teams wie z.
Die »RZ only«-Strategie ermöglichte keine
                                                       B. Content, Payment oder Metadata überführt.
elastische Skalierung und eine Bereitstellung
                                                       Zudem dienen die Product Owner als Ansprech-
neuer Services war stets mit langwierigen Ab-
                                                       partner:innen, die die Expertise in ihren jeweili-
stimmung- und Freigabeprozessen verbunden.
                                                       gen Fachlichkeiten inne haben.
Es gab nur einige, wenige Know-How-Träger und
die klare Trennung von Entwicklung und Betrieb
erschwerte zusätzlich die Kommunikation.

                                                               Web-Team                  Content-Team

                                                                                            
                                                                 

                                                                              Content
                                                                                               Subscription-
                                                                                                  Team
          Web                                          Web         Sys
                        System                                                 Subscription       
            App                                          App       Sys

                                                                                 Sys X

                                                               
                                                                                            

                         Team                                   App-Team                      Team X

                                                   2
Ebenso wurden neue Programmiersprachen ein-             nements neu implementiert werden. Gleichzeitig
geführt – beispielsweise Kotlin im Backend und          muss das System für Spitzenlastzahlen ausgelegt
TypeScript im Frontend.                                 sein und problemlos funktionen, wenn pro Tag
                                                        mehrere Deployments der Entwicklungsteams in
Die neue, nachhaltige Strategie ist darauf ausge-
                                                        die Produktionsumgebung einfließen. Vorausset-
legt, auch nach mehreren Jahren noch verständ-
                                                        zung dafür ist ein starker Fokus auf die Resilienz
lich und erweiterbar zu sein.
                                                        der einzelnen Systeme und die Etablierung von
                                                        Fallback-Möglichkeiten, um dem Endkunden im
Teamstruktur und veränderte
                                                        Falle einer internen Störung weiterhin alle Funk-
Arbeitskultur
                                                        tionalität bieten zu können.
Bei der Gründung von TVNOW (früher RTL
NOW) vor 12 Jahren hat ein kleines Team mit             All das musste bei der Migrationsstrategie mit
der Entwicklung und dem Betrieb der Plattform           berücksichtigt werden.
begonnen. Im Jahr 2018, zu Beginn des Re-
                                                        Der erste Schritt bestand in der Umstellung der
platformings, ist die Anzahl der Teammitglieder
                                                        Auslieferung auf Standardmechanismen, wie
hochskaliert: heute gibt es über 10 Teams mit
                                                        Docker Container und AWS ECS-Fargate Sche-
mindestens fünf Mitarbeitern pro Team. Neben
                                                        duler. Dadurch konnten bereits während der
den Teams, welche die Schnittstellen für die
                                                        Entwicklung die Vorteile der Cloud genutzt und
Endkunden betreuen (Apps und Web), gibt es
                                                        ein stabiler Parallelbetrieb gewährleistet werden.
auch domänenspezifische Teams, wie z. B. Data,
Content und Customer.                                   Die Strategie sieht vor, Teilaspekte des Be-
                                                        standssysteme in separaten Services abzubilden
Durch die Umstrukturierung der Entwicklung
                                                        und somit den bestehenden Monolithen Stück
in eine Großzahl crossfunktionaler Teams mit
                                                        für Stück zu »entkernen«. Neben der Abbildung
dedizierten Themenbereichen haben sich die
                                                        der bestehenden Funktionalität muss auch eine
Arbeitsweise und die Kultur verändert. Dies hat
                                                        Entwicklung neuer Funktionalität gewährleistet
zu einer einschneidenden Veränderung inner-
                                                        sein, damit die Weiterentwicklung des Produkts
halb des gesamten Produktes geführt. Zu diesem
                                                        immer möglich ist. Migration und Weiterent-
Prozess, der ungefähr ein Jahr dauerte, gehörten
                                                        wicklung sollten dabei nicht sequentiell durch-
die Sensibilisierung für die neue Teamkultur, die
                                                        geführt werden, sondern so gut wie möglich
Integration des Managements und die praktische
                                                        parallelisiert.
Veränderung der Zusammenarbeit.
                                                        Technisch bedeutet das einige Neuerungen: von
Dafür wurde auf agile Methoden zurückgegrif-
                                                        PHP zu Kotlin/Spring Boot, Gitlab CI anstelle
fen: Durch skaliertes Scrum über alle Teams
                                                        von Jenkins, von den Entwicklungsteams selbst
hinweg wurde die Anpassungs- und Innovations-
                                                        verantwortete Deployments via Terraform an-
fähigkeit enorm gesteigert. Die umfangreichen
                                                        stelle von Deployments auf Umgebungen außer-
Learnings bei der Einführung von skaliertem
                                                        halb des eigenen Verantwortungsbereichs.
Scrum in diesem Projekt haben wir in einer ge-
sonderten Case Study zusammengefasst.

Die Technik dahinter –
Migrationsstrategie
Die TVNOW Apps (Android, iOS, FireTV etc.),
das dahinterliegende System, der Webplayer und
der Smart TV Client stellen verschiedene Anfor-
derungen an die zugrunde liegende Architektur:
So mussten unter anderem das Subscription Ma-
nagement und die Payment-Funktion für Abon-

                                                    3
Vorteile                                                 Technologien
inovex konnte einige Best Practices einbringen,          ›   Kotlin/Spring Boot
die nicht nur die Stabilität des Systems verbes-         ›   Terraform
sert haben, sondern auch für die Cloud Migrati-          ›   Gitlab CI
on und den Payment-Prozess von Vorteil waren.            ›   Angular (Universal)
Die Plattform bietet nun saubere Schnittstellen,         ›   TypeScript
die einzelnen Services sind skalierbar und es            ›   Docker
können leicht neue Features entwickelt werden.           ›   AWS ECS
Die Arbeitsweise hat sich ebenfalls verändert:           ›   AWS Lambda
sie ist inkrementell und erzielt dadurch schneller
Ergebnisse und Veränderungen.

So können zum Beispiel starke Lastspitzen im
TV-Betrieb, die unter anderem bei Fußball-Län-
derspielen auftreten, viel besser abgefangen
werden. Durch die Aufteilung in Services und die
Abstraktion in Docker-Container können neue
Technologien und Sprachen eingesetzt werden.

Inzwischen sind die Teams komplett für ihre Ser-
vices verantwortlich, ganz nach dem Motto: You
build it, you run it, you love it.

                                                     4
Über inovex
inovex ist ein innovations- und qualitätsgetriebenes IT-Projekthaus mit dem Leistungsschwerpunkt
„Digitale Transformation“.

Über 400 IT-Expert:innen unterstützen Unternehmen umfassend bei der Digitalisierung und Agilisie-
rung ihres Kerngeschäfts und bei der Realisierung von neuen digitalen Use Cases. Unser Lösungsan-
gebot umfasst Application Development (Web Platforms, Mobile Apps, Smart Devices und Robotics
– vom UI/UX Design bis zu den Backend Services), Data Management & Analytics (Business Intel-
ligence, Big Data, Search, Data Science & Deep Learning, Machine Perception und Artificial Intelli-
gence) und die Entwicklung von skalierbaren IT Infrastructures (IT Engineering, Cloud Services), auf
denen die digitalen Lösungen im DevOps-Modus betrieben werden. Wir modernisieren vorhandene
Lösungen (Replatforming), härten Systeme gegen Angriffe von außen (Security) und vermitteln unser
Wissen durch Trainings und Coachings (inovex Academy).

inovex ist in Karlsruhe, Pforzheim, Stuttgart, München, Köln und Hamburg ansässig und bundesweit
in Projekte involviert.

                        Nehmen Sie Kontakt auf
                        › Haben Sie Fragen zur Entwicklung oder Erweiterung
                          moderner Anwendungen?
                        › Suchen Sie einen Partner, der Sie bei der agilen
                          Projektdurchführung unterstützt?
                        › Möchten Sie mehr über inovex und unser Portfolio für die
                          digitale Transformation erfahren?

                    Ihr Ansprechpartner
                    Tobias Joch
                    Head of Application Development
                    0173 31 81 004
                    tobias.joch@inovex.de
                    www.inovex.de
Sie können auch lesen