
Möchtest du sehen, wie GitLab Ultimate dein Team unterstützen kann?
Die ESA führt neue Technologien stets mit Bedacht ein. Ohne ein zentrales Versionierungssystem blieben Möglichkeiten zur Zusammenarbeit, zur Nutzung von Synergien und zur Wiederverwendung von Ergebnissen jedoch oft unsichtbar.
Mit GitLab können Teams in der gesamten Europäische Weltraumorganisation (ESA) nun sowohl innerhalb ihrer eigenen Teams als auch teamübergreifend zusammenarbeiten und Code sowie Erkenntnisse teilen. GitLab ermöglicht es den Teams, Grenzen zu überwinden, die Kooperation zu stärken und die Arbeitskultur weiterzuentwickeln.
Zusammenarbeit zu sehen ist ansteckend. Die Leute sagen: „Ich möchte auch so ein Projekt haben!" oder „Ich möchte mitmachen." Diese Dinge passieren, weil alle Zugang haben.
Die Europäische Weltraumorganisation (ESA) koordiniert das europäische Raumfahrtprogramm. Die Programme der ESA sind darauf ausgerichtet, mehr über die Erde, ihre unmittelbare Weltraumumgebung, unser Sonnensystem und das Universum zu erfahren, satellitengestützte Technologien und Dienste zu entwickeln sowie europäische Industrien zu fördern. Die ESA arbeitet eng mit Raumfahrtorganisationen außerhalb Europas zusammen.
Die ESA koordiniert die finanziellen und intellektuellen Ressourcen ihrer 22 Mitgliedstaaten, um sicherzustellen, dass Investitionen in die Raumfahrt weiterhin den Bürgerinnen und Bürgern Europas und der Welt zugutekommen. Die Organisation konzentriert sich auf eine Vielzahl von Missionen zur Weltraumforschung. Zu den jüngsten Missionen gehören das Entsenden von Orbitern zum Merkur und die Erforschung hyperschneller Sterne in der Milchstraße.
Die ESA hat neue Technologien stets mit großer Sorgfalt eingeführt. Validierung und Sicherheit standen dabei im Vordergrund; neuere Praktiken oder Technologien wurden nur dann eingesetzt, wenn sie einen klaren Mehrwert für das Kerngeschäft der ESA brachten. Dies führte mitunter dazu, dass bewährte, ältere Werkzeuge zur gemeinsamen Nutzung von Code verwendet wurden – zulasten der Aktualität.
Im Jahr 2015 setzten verschiedene Teams innerhalb der ESA unterschiedliche Ansätze zur Versionskontrolle ein, etwa Subversion oder CVS. Die Verbreitung von Git und seine anschließende Einführung durch die ESA-IT-Abteilung entsprach dem Bedarf der Nutzenden und bot gleichzeitig eine bewährte, sichere Technologie. GitLab wurde 2016 von der ESA als Code-Repository-Plattform validiert und eingeführt. Die Nutzung war anfangs auf eine ausgewählte Gruppe von Erstanwendern beschränkt, doch die Nachfrage stieg schnell.
Innerhalb von zwei Jahren hatten mehr als 140 Gruppen GitLab als Versionierungswerkzeug übernommen. In der gesamten ESA wurden mehr als 1.500 Softwareprojekte angelegt – von Missionskontrollsystemen und bordeigener Software für Raumfahrzeuge bis hin zu Bildverarbeitungs- und Überwachungswerkzeugen für Labore. Die ESA-IT-Abteilung nutzt GitLab außerdem, um Code-Werkzeuge und die Konfigurationsinfrastruktur zu hosten.
Unser Anwendungsfall bei der ESA ist durchaus besonders. Unser Team entwickelt Software – und fliegt gleichzeitig Raumfahrzeuge. Die Softwareentwicklung kommt also zu unserer eigentlichen Tätigkeit hinzu. Wir benötigen viele Werkzeuge, die uns bei unserer eigentlichen Arbeit unterstützen. Deshalb wollen wir den Aufwand für die Entwicklung dieser Werkzeuge so gering wie möglich halten. GitLab hat sich außerdem als sehr effektiv erwiesen, um unsere Werkzeuge mit anderen Teams zu teilen.
GitLab wurde der ESA-Belegschaft im Jahr 2016 vorgestellt. Teams an allen ESA-Standorten in Europa nahmen das Werkzeug an. Sie können nun sowohl innerhalb ihrer eigenen Teams als auch teamübergreifend zusammenarbeiten und Code sowie Erkenntnisse teilen. Die Prozesse sind schneller, laufen in Echtzeit ab und liefern zuverlässige, stabile Ergebnisse. Nutzende können mehr Zeit für ihre eigentlichen Aufgaben aufwenden und weniger Zeit damit verbringen, Werkzeuge am Laufen zu halten.
Die Akzeptanz war hoch: Innerhalb einer Woche liefen 40 Projekte in GitLab. „Derzeit nutzen 15 % unserer Nutzenden GitLab", kommentierte ein Vertreter des ESA-IT-Projekts für GitLab.
Für die ESA bedeutet dies einen Wandel gegenüber der bisherigen Softwareentwicklungskultur. In der Vergangenheit wurde davon ausgegangen, dass es weniger nutzbare Synergien gab. Versionskontrollsysteme waren auf einzelne Teams beschränkt oder gar nicht vorhanden. Da die Technologie nun den Anforderungen der ESA entspricht, ermöglicht GitLab einen höheren Grad an Standardisierung und Effizienz.
Zunächst führte die ESA GitLab ein, um die Versionskontrollfunktionen zu nutzen. Die Nutzenden profitierten jedoch auch von den CI/CD-Funktionen. Die ESA begann im November 2017 mit der Nutzung von CI/CD; seitdem wurden 60.000 Jobs in GitLab ausgeführt. Das Feedback der Nutzenden an die ESA-IT-Abteilung spiegelt die Zufriedenheit mit dieser Entwicklung wider. Eine Nutzerin berichtete: „Wir haben zunächst mit Versionskontrolle begonnen, aber dann entdeckt, dass wir CI in unserem Projekt nutzen können. Wir haben es ausprobiert und waren sehr beeindruckt, wie gut alles zusammenarbeitet."
Die Vielfalt der Teams und Aufgaben bei der ESA stellt besondere Anforderungen. Bruno Sousa erläutert, warum CI/CD für seine Arbeit unverzichtbar ist: „Für unseren Anwendungsfall sind die CI/CD-Funktionen besonders wichtig. In meiner Rolle bin ich gleichzeitig für den Betrieb eines Raumfahrzeugs und die Entwicklung eines Werkzeugs verantwortlich – potenziell auch für andere Missionen. Ich habe nicht die Zeit, die Software immer wieder manuell bereitzustellen. GitLab erleichtert den gesamten Prozess erheblich, sodass ich mich auf meine eigentliche Aufgabe konzentrieren kann: den Betrieb des Raumfahrzeugs."
GitLab ermöglicht der ESA eine Geschwindigkeit bei der Softwareentwicklung, die zuvor nicht erreichbar war. Code wird jetzt kontinuierlich innerhalb von Minuten bereitgestellt – früher konnte das Wochen dauern.
GitLab adressiert Herausforderungen in vielen Phasen des Softwareentwicklungsprozesses. In der Vergangenheit setzten verschiedene ESA-Teams unterschiedliche CI/CD-Systeme ein. Diese werden nun durch GitLab CI ersetzt, da GitLab benutzerfreundlicher ist. Je mehr Nutzende zu GitLab wechseln, desto weniger andere Werkzeuge muss die ESA pflegen. GitLab CI wird dabei in weitere Versionskontrollsysteme integriert.
Die Automatisierung in GitLab entlastet auch die Ressourcen der ESA-IT-Abteilung. Da Betrieb und Backup vollständig automatisiert sind, können IT-Spezialistinnen und -Spezialisten sich auf die Überwachung des Werkzeugs konzentrieren und sich wichtigeren IT-Herausforderungen für die Organisation widmen.
Alle Informationen und Personen, die an der Fallstudie beteiligt waren, waren zum Zeitpunkt der Veröffentlichung aktuell.