Eine zentrale DevOps-Plattform ist ein unverzichtbarer Bestandteil moderner Softwareentwicklung. Sie hilft Unternehmen, Software schnell, kosteneffizient und automatisiert zu entwickeln. Der erste Schritt beim Aufbau einer zentralen Plattform besteht darin, die Robustheit eures internen Systems insgesamt zu verbessern.
Tuomas Keränen
Tuomas, Eficode's Cloud Product Manager, has a 15 years of work experience in project, program & product management positions. He is a rapid and enthusiastic learner and always ready for new challenges.
Systemrobustheit wird erreicht, indem Single Points of Failure im System eliminiert werden, die einen erfolgreichen Übergang verhindern würden. Häufig hängen diese Fehlerquellen mit Personen, Technologien, Tools oder Dokumentation zusammen. In diesem Blogbeitrag zeige ich euch den ersten Schritt, mit dem euer Unternehmen eine zentrale Plattform wie Eficode ROOT aufbauen kann.
Warum ist „Robustheit“ Schritt 1 im Prozess?
Wenn ich sage, dass Robustheit der Ausgangspunkt für den Aufbau einer DevOps-Plattform ist, meine ich damit: Es gibt einige grundlegende Elemente, die in eurer Kultur und euren Prozessen vorhanden sein müssen, damit ihr eine tragfähige Infrastruktur für eure Plattform aufbauen könnt. Dabei betrachten wir Kommunikationskanäle, teilautomatisierte Dokumentation und die umfassende Nutzung von Versionskontrolle.
Schnelle, inklusive Kommunikationskanäle nutzen
Traditionelle Kanäle wie E-Mail sind exklusiv. Der Absender wählt die Empfängergruppe aus, und wer nicht dazugehört, erhält diese Informationen nicht – auch wenn sie für ihn relevant sein könnten. In diesem Sinne schafft E-Mail zwangsläufig Silos und macht das System weniger robust.
Ohne diese Grundlage der Robustheit bauen alle weiteren Maßnahmen auf Sand.
Ein robustes System erfordert Transparenz und reibungslose Kommunikation. Es ist ironisch, dass viele Unternehmen, die moderne und schnelle Softwareentwicklung anstreben, noch immer langsame und veraltete Kommunikationskanäle nutzen.
Inklusive Kommunikationskanäle wie Slack oder Flowdock ermöglichen eine schnelle Informationsverteilung in Echtzeit und bieten Funktionen, die in klassischen E-Mail-Ketten nicht möglich sind. Ihr könnt alle Beteiligten zu Kanälen hinzufügen, etwa Teammitglieder, Kunden und Partner. Eine der wichtigsten Funktionen ist, dass Personen Kanälen bei Bedarf beitreten und sie wieder verlassen können. Der Wechsel zu inklusiven Kommunikationskanälen sorgt für Transparenz im Unternehmen und hält alle auf dem Laufenden.
Alle Projektinformationen dokumentieren
Projektbezogene Informationen müssen dokumentiert und auf der Plattform abgelegt werden, denn sie gehören dem gesamten Team. Alle wichtigen Projektinformationen sollten im Projektmanagement- oder Ticketsystem dokumentiert werden, beispielsweise in Jira.
Dazu gehören:
Projektanforderungen
Qualitätskriterien
Aufgabenbeschreibungen
Bugs
Incidents
und Projektergebnisse wie:
Anwendungscode und Testcode
Umgebungsdefinitionen und -konfigurationen.
Diese sollten in der Versionskontrolle gespeichert werden, während installierbare Pakete, die am Ende aus der Pipeline hervorgehen, im Binärspeicher abgelegt werden sollten.
Wenn ihr diese Schritte bei der Dokumentation befolgt, werden alle wichtigen projektbezogenen Informationen sicher gespeichert und sind für das gesamte Team leicht verfügbar.
Der Vorteil: Wenn sich alle wichtigen Informationen in Projektmanagementsystemen und in der Versionskontrolle befinden, muss nur wenig separat dokumentiert werden – lediglich übergeordnete Ziele, Architekturdiagramme und Ähnliches. Die meisten wichtigen Informationen werden organisch während der Prozesse selbst dokumentiert.
Deshalb ist dies ein wichtiger Aspekt, um die Grundlage für eure DevOps-Plattform zu schaffen!
Änderungen kontrollieren
Indem ihr alle Änderungen kontrolliert, habt ihr jederzeit einen aktuellen Überblick über den Systemzustand. Im Fall eines Fehlers könnt ihr mögliche Probleme dadurch effizient nachvollziehen und bei Bedarf Rollbacks durchführen, um zum vorherigen Stand zurückzukehren.
Um Änderungen erfolgreich umzusetzen, solltet ihr keine Änderungen direkt in den Umgebungen vornehmen. Tatsächlich sollten keine Änderungen vorgenommen werden, die die Versionskontrolle umgehen – weder am Anwendungscode noch an Middleware oder Umgebungskonfigurationen.
Nehmt Änderungen stattdessen über die Versionskontrolle vor – so vermeidet ihr Chaos!
Funktionen, die ihr früher oder später braucht
Schauen wir uns abschließend die Software-Produktionslinie und die Funktionen an, die euch dabei helfen, Informationen effizient zu verteilen, Änderungen zu kontrollieren und Dokumentation zu verwalten.
Aus Tooling-Sicht benötigt ihr folgende Funktionen:
Versionskontrolle
Binärspeicher
Dokumentenmanagement & Teamkommunikation
Anforderungs- & Projektmanagement.
Und das, Freunde, ist Schritt 1 auf dem Weg zu einer DevOps-Plattform.
Mehr erfahren:
Schritt 2 auf dem Weg zu einer DevOps-Plattform: Hohen Durchsatz ermöglichen
Schritt 3 auf dem Weg zu einer DevOps-Plattform: Transparenz entlang der Pipeline
Wenn ihr Hilfe beim Einstieg braucht, unterstützt euch das Eficode ROOT Team gerne! Wir verfügen über mehr als 10 Jahre Erfahrung mit Software-Produktionsumgebungen. Hinterlasst uns gerne eine Nachricht >
- DevOps
- Eficode ROOT
Subscribe to our newsletter
Related blogs