Die 7 Phasen des DevOps Lebenszyklus
Was ist der DevOps Lebenszyklus? Der DevOps Lebenszyklus gliedert sich in sieben verschiedene Phasen der kontinuierlichen Entwicklung, die den Softwareentwicklungsprozess von Anfang bis Ende begleiten. Für das Verständnis von DevOps ist es wichtig, die einzelnen Phasen des Lebenszyklus sowie die Prozesse und Anforderungen der einzelnen Phasen zu kennen.
Softwareentwicklung beginnt mit Planung und Programmierung. In DevOps geschieht dies durch den Prozess der regelmäßigen Bereitstellung mit dem Ziel der ständigen Verbesserung.
DevOps baut auf agilen Kernwerten auf und fördert regelmäßige, häufige Softwareveröffentlichungen. Der Standardweg hierfür ist die Automatisierung der Code-Integration und -Bereitstellung, ein Prozess, der als Continuous Integration/Continuous Deployment (CI/CD) bezeichnet wird.
Während der gesamten Entwicklung, ob in der Vor- oder Nachproduktion, nutzen Teams Feedback, um Probleme zu identifizieren und Lösungen in der Planung zu hypothesieren.
Nach der Planungsphase des DevOps Lebenszyklus beginnen Quellcode und Asset-Erstellung mit dem Ziel, die Produktion voranzubringen. Unabhängig davon, welche Programmiersprache verwendet wird, hat die Pflege der Codebasis mit Tools zur Quellcodeverwaltung Priorität.
Kontinuierliche Integration (CI) ist eine Entwicklungspraxis, bei der Entwickler Code mehrmals täglich in ein gemeinsam genutztes Repository integrieren müssen. Jeder Check-in oder jede Branche wird dann durch einen automatisierten Build verifiziert, was es Teams ermöglicht, Probleme frühzeitig zu erkennen und sicherzustellen, dass die Hauptcodebranche immer funktionsfähig und produktionsreif ist.
CI ist darauf ausgelegt, viele kleine iterative Änderungen zu unterstützen, anstatt weniger große Änderungen. Es hilft Teams, durch automatisierte Workflows für Code-Builds, Tests, Merging und Einchecken in gemeinsam genutzte Repositorys zu skalieren.
Das ultimative Ziel der kontinuierlichen Integration ist es, besseren Code schneller zu liefern. Durch weniger häufige Änderungen in Verbindung mit Automatisierung können Teams Fehler schneller finden und beheben und den Zeitaufwand für die Validierung und Veröffentlichung neuer Updates reduzieren.
Kontinuierliche Tests gehen Hand in Hand mit kontinuierlicher Integration. CI/CD-Pipelines sind auf automatisierte Tests statt auf manuelle Codevalidierung angewiesen. Dies dient dazu, sicherzustellen, dass das, was bereitgestellt wird, qualitativ hochwertig ist und vor der Veröffentlichung nicht zu spielgefährdenden Fehlern führt.
DevOps setzt darauf, so viele manuelle Prozesse wie möglich zu vermeiden. Je mehr manuelle, langwierige Prozesse zur Verfügung stehen, desto mehr Zeit wird verschwendet und desto größer ist die Wahrscheinlichkeit von Fehlern. Das Ziel der kontinuierlichen Tests mit DevOps Tools ist es, Fehler nicht nur zu entdecken, sondern so schnell wie möglich zu finden, damit sie nicht in der Produktionsphase über einen Patch oder Hotfix behoben werden müssen, was viel komplizierter und zeitaufwendiger wird.
Automatisierte Tests werden vor der Veröffentlichung zum Build und auch vor der Produktion eingerichtet. Die Teams können als letzten Schritt vor der Produktion und nach Abschluss der automatisierten Tests manuelle Prüfungen einfügen.
Kontinuierliche Überwachung stellt sicher, dass der DevOps Lebenszyklus gut gepflegt wird, mit dem Ziel, eine großartige Benutzererfahrung zu bieten. Software-Updates und -Nutzung werden genau verfolgt, wobei die gesammelten Erkenntnisse genutzt werden, um sicherzustellen, dass die Software richtig läuft.
Während der kontinuierlichen Überwachungsphase sind Teams bestrebt, Systemfehler so schnell wie möglich zu erkennen und zu beheben. Automatisierte Fehlerverfolgung ist hier unerlässlich. Automatisierungen können auch Einblicke in andere Bereiche wie die allgemeine Softwareleistung, das Nutzerverhalten, die Stabilität der Entwicklungsinfrastruktur und mehr bieten.
Zusätzlich zur Überwachung von Automatisierungen ist Ihr DevOps Team dafür verantwortlich, dass alle Aspekte der Pipeline den Sicherheitsstandards entsprechen. In dieser Phase erfolgt auch die manuelle Bearbeitung des Release-Managements.
Kontinuierliches Feedback erfordert die Implementierung einer Feedbackschleife, um Einblicke in die Softwareleistung von Ihrem internen Team und Ihren Benutzern zu erhalten. Das Feedback wird dann mit dem DevOps Team geteilt, um die Produktiteration zu unterstützen. Quellen können Umfragen, Fragebögen, Fokusgruppen, soziale Medien, Foren und mehr sein.
Bei diesem Prozess geht es nicht nur darum, festzustellen, ob Ihre Software richtig funktioniert – es geht auch darum, die allgemeine Kundenzufriedenheit zu messen, um die Geschäftsstrategie zu leiten und die bestmöglichen Ergebnisse zu gewährleisten. Kontinuierliches Feedback sollte verwendet werden, um Ihre Produkt-Roadmap zu steuern und Ihnen zu helfen, die Wünsche, Bedürfnisse und Erwartungen Ihrer Zielgruppe zu erfüllen.
Kontinuierliche Bereitstellung funktioniert zusammen mit kontinuierlicher Integration, indem der Automatisierungszyklus abgeschlossen und menschliche Eingriffe in den Bereitstellungsprozess minimiert oder entfernt werden. Automatisierte DevOps-Tools überwachen Aktualisierungen des Quellcodes und stellen sie nach der Testphase automatisch in der Produktionsumgebung bereit. Das spart Zeit und verbessert die Benutzerzufriedenheit.
Kontinuierliche Bereitstellung beschleunigt Feedbackschleifen mit Nutzern durch Automatisierung. Methoden können auch eingesetzt werden, um die Bereitstellung für eine Version zu trennen und sie entweder vor Benutzern zu verbergen (Dunkelversionen) oder für bestimmte Benutzer zu aktivieren, um neue Funktionen zu testen und Feedback einzuholen (Funktionswechsel oder -umschalter).
Da der Code in kleinen Batches veröffentlicht wird, minimiert er das Risiko, das Sie bei großen Codeänderungen hätten – dank Automatisierung mit minimalem Aufwand.
Kontinuierlicher Betrieb zielt darauf ab, Ausfallzeiten auf ein Minimum zu reduzieren und frustrierende Serviceunterbrechungen für die Benutzer zu vermeiden. In dieser Phase des DevOps-Lebenszyklus steht die Optimierung von Anwendungen und Umgebungen auf Stabilität und Leistung im Mittelpunkt. Außerdem wird der DevOps Lebenszyklus komplettiert, indem die Planungsphase der kontinuierlichen Entwicklung mit Fehlerberichten und Benutzerfeedback für Verbesserungen gefüttert wird.
Durch die kontinuierliche Zusammenarbeit zwischen Teams und Benutzern können über die DevOps Pipeline Bugs, Feedback und Sicherheitsbedenken kontinuierlich weitergegeben, bewertet und iteriert werden.
Der perfekte Workflow
In diesem kurzen Video zeigt das Team von Unity Version Control (ehemals Plastic Scm), wie sein leistungsstarkes Tool zur Quellcodeverwaltung eine strategische DevOps Toolchain ausführen kann, die eine entscheidende Rolle bei der Entwicklung eines nahtlosen Workflows innerhalb des DevOps Lebenszyklus spielt.
Das Verfolgen und Verwalten von Änderungen an Ihrem Quellcode ist unerlässlich. Erfahren Sie, wie verschiedene Arten von Version Control Systemen Ihnen helfen können, die Integrität Ihres Codes zu erhalten.
Die Implementierung von DevOps-Verfahren optimiert die Entwicklungspipeline und steigert die Zufriedenheit des Teams und der Benutzer. Erfahren Sie mehr darüber, wie DevOps Sie unterstützen kann.
Jedes Spielestudio sucht nach Möglichkeiten, die Produktion zu beschleunigen und gleichzeitig die Kosten zu reduzieren. DevOps bietet die beste Möglichkeit, beides zu erreichen. Lernen Sie zunächst die wichtigsten Grundsätze der DevOps-Methodologie kennen.
Lernen Sie die grundlegenden DevOps Prinzipien und Prozesse für die Spieleentwicklung kennen und hören Sie von Studios, die mit dem Lösungsportfolio von Unity Erfolge verzeichnen konnten.
In diesem E-Book erhalten Sie Einblicke vom Team von Unity Version Control, wie Sie durch Implementierung des perfekten Workflows ein besserer Softwareentwickler werden und Version Control beherrschen.
Schauen Sie sich an, wie Halfbrick mit Backtrace und Helpshift für das Spiel schadhafte Fehler erkennt, bevor diese zu einem Problem werden, damit Spieler weiterspielen können.
Der DevOps Lebenszyklus beginnt mit Version Control. Mit den DevOps Solutions von Unity können Sie kontinuierliche Integration und Entwicklung implementieren.