Release-Management mit Pega
Unternehmen wissen um die finanziellen Vorteile, wenn sie Anwendungsfunktionen schneller als der Wettbewerb für Endbenutzer und Kunden bereitstellen können. Durch die laufende Bereitstellung neuer Anwendungs-Features für Endbenutzer können sich Unternehmen einen Wettbewerbsvorteil im Markt verschaffen. Viele haben einen DevOps-Ansatz eingeführt, um den Lebenszyklus der Softwarebereitstellung zu optimieren.
Wenn Sie als Pega Business Architect sehr gut mit der DevOps-Methodik und der CI/CD-Pipeline von Pega vertraut sind, können Sie die Sprint-Planung und -Priorisierung während aller Projektphasen (Entwicklung, Tests, Bereitstellung) besser verstehen.
Dev Ops
DevOps erfordert die Zusammenarbeit von Entwicklungs-, Qualitäts- und operativen Teams, damit Endanwender hochwertige Software auf automatisierte, agile Weise erhalten. Es handelt sich um verschiedene Praktiken zur Erleichterung der Anwendungsentwicklung und des operativen Verhaltens, um die Markteinführungszeit zu reduzieren, ohne bei der Qualität und Betriebseffektivität Abstriche zu machen. Anwendungsentwickler und Business Owner können so schnell auf Kundenbedürfnisse reagieren, den Feedback-Zyklus verkürzen und so schneller einen geschäftlichen Nutzen erzielen.
Die DevOps-Methodik fördert Innovationen und basiert auf drei Komponenten: Mitarbeitern, Prozessen und Technologien.
Bei den Zahlen unter der folgenden Abbildung erfahren Sie mehr über die drei Komponenten aus denen DevOps besteht:
- Mitarbeitende: DevOps fördert eine Kultur der Zusammenarbeit und der gemeinsamen Verantwortung von Entwicklungs-, Qualitäts- und operativen Teams. Die Methode stellt sicher, dass alle Beteiligten einen wertvollen Beitrag zum Softwarebereitstellungsprozess des Unternehmens leisten.
- Prozess: DevOps fördert einen automatisierten Prozess, um Anwendungen schnell von der Entwicklung über die Testphase bis zur Bereitstellung zu bringen.
- Technologie: DevOps fördert modellgesteuerte und offene Lösungen zum Aufbau einer Bereitstellungs-Pipeline.
Prüfen Sie mit der folgenden Interaktion Ihr Wissen:
Kontinuierliche Integration und Bereitstellung (CI/CD)
Eine Pipeline der kontinuierlichen Integration und kontinuierlichen Bereitstellung (Continuous Integration/Continuous Delivery, CI/CD) ist ein automatisierter Prozess, um Anwendungen schnell von der Entwicklung über die Testphase bis zur Implementierung in Ihrem Produktionssystem voranzubringen.
Bei den Zahlen unter der folgenden Abbildung erfahren Sie mehr, wie das Entwicklerteam dank des kontinuierlichen Kreislaufs in jeder Pipeline-Phase Feedback zu den Testergebnissen erhält:
- Continuous Integration Loop: Im Continuous Integration Loop integriert das Team täglich während der laufenden Entwicklung Änderungen in eine gemeinsame Datenbank (auch „Repository“ genannt).
- Continuous Delivery Loop: Im Continuous Delivery Loop kann die Anwendung jederzeit bereitgestellt werden.
- Continuous Deployment Loop: Im Continuous Deployment Loop stellt das Team das Produkt während der Release-Phase kontinuierlich für Anwender bereit.
Kontinuierliche Integration
Bei der kontinuierlichen Integration nehmen die Anwendungsentwickler regelmäßig Änderungen in der Quellumgebung vor und überprüfen diese Änderungen mit einem automatisierten Build-Prozess. Durch kontinuierliche Integration werden Probleme bereits in der frühen Phase des Entwicklungszyklus identifiziert und eingegrenzt.
Im Schritt „Ready to Share“ werden Tests durchgeführt, um sicherzustellen, dass die neu eingeführten Änderungen gut mit der bestehenden Anwendung funktionieren. Der Schritt „Integrate changes“ stellt sicher, dass alle erforderlichen wichtigen Tests ausgeführt werden, bevor die neuen Änderungen in einem Entwicklungs-Repository veröffentlicht werden (um es auf dem neuesten Stand zu halten).
Kontinuierliche Bereitstellung
Bei der kontinuierlicher Bereitstellung werden Anwendungsänderungen strikten automatisierten Regressionstests unterzogen. Die Änderungen werden in einer Staging-Umgebung implementiert, um weitere Tests zu machen. So soll sichergestellt werden, dass die Anwendung für die Bereitstellung im Produktionssystem fertig ist.
Im Schritt „Ready to accept“ werden Tests durchgeführt, um sicherzustellen, dass die Anwendung die Akzeptanzkriterien erfüllt. Im Schritt „Ready to deploy“ werden alle notwendigen Performance-, Skalierungs- und Kompatibilitätstests verifiziert, um die Eignung der Anwendung für die Bereitstellung zu gewährleisten. Im Schritt „Deploy“ erfolgen die Validierung in einer Vorproduktionsumgebung und die Bereitstellung der Anwendung in der Produktionsumgebung sowie Tests nach der Bereitstellung (mit Rollback-Option).
Die Pega CI/CD-Pipeline
Verwenden Sie die Tools der Pega-Plattform und anderer Anbieter, um DevOps zu implementieren. Sie können eine CI/CD-Pipeline (Continuous Integration und Delivery) einrichten, die ein Pega-Repository zum Speichern und Testen von Software sowie einen Automatisierungsserver eines Drittanbieters wie Jenkins verwendet, der Jobs startet und Vorgänge für Ihre Software ausführt.
Während jeder Phase der Pipeline werden unterschiedliche Fragen gestellt. Diese Fragen lassen sich in zwei Kategorien einteilen: entwicklerorientierte Fragen und kundenorientierte Fragen.
Bei den Zahlen untr der folgenden Abbildung erfahren Sie mehr zu den Pipeline-Fragen:
- Entwicklerorientierte Fragen: Sind die Änderungen gut genug, um sie gemeinsam zu verwenden, und funktionieren sie mit den Änderungen anderer Entwickler?
- Ready to share (Teilen möglich): Entwickler sollten sich fragen, ob die Änderungen bereits mit anderen Entwicklern geteilt werden können. Stellen Sie sicher, dass die neue Funktionalität und wichtige bisherige Funktionen weiterhin funktionieren.
- Integrate changes (Änderungen einarbeiten): Funktionieren alle integrierten Änderungen auch im Zusammenspiel? Funktionieren nach der Integration der Änderungen mehrerer Entwickler noch alle wichtigen Funktionen?
- Kundenorientierte Fragen: Entspricht die Anwendung mit den neuen Änderungen in ihrem Funktionsspektrum noch dem Entwurf und den Erwartungen der Kunden und kann sie von diesen verwendet werden?
- Ready to accept (Kann akzeptiert werden): Werden die Akzeptanzkriterien für die Anwendung noch erfüllt? Dies ist üblicherweise die Phase, in der die korrekte Funktionsweise der Anwendung mit Regressionstests überprüft wird.
- Ready to deploy (Bereitstellung möglich): Kann die Anwendung bereitgestellt werden? In der letzten Phase wird die vollständig validierte Anwendung in der Produktionsumgebung bereitgestellt, in der Regel nach der Überprüfung in einer Vorproduktionsumgebung.
DevOps-Technologie
Der DevOps-Ansatz der Pega-Plattform ist offen für andere Lösungen. Sie können Ihre DevOps-Journey mit dem Deployment Manager beginnen und später auch Tools von Drittanbietern integrieren.
Deployment Manager
Für alle, die schnell loslegen möchten, bietet die Pega-Plattform mit dem Deployment Manager ein Tool für das Pipeline-Management – eine Standardmethode zum Testen und Bereitstellen von Pega-Anwendungen. Dieses Tool stellt alle Funktionen der Pega-Plattform zur Verfügung, die zur Automatisierung Ihrer DevOps-Workflows erforderlich sind.
Verwenden Sie den Deployment Manager, um CI/CD-Workflows für Ihre Pega-Anwendungen innerhalb der Pega-Plattform zu konfigurieren und auszuführen. Sie können einen standardisierten Bereitstellungsprozess schaffen, um ohne Tools von Drittanbietern vorhersehbare Versionen hoher Qualität bereitzustellen. Mit dem Deployment Manager können Sie Ihre CI/CD-Workflows vollständig automatisieren, einschließlich Zusammenführen von Verzweigungen, Erstellung von Anwendungspaketen und Bereitstellung Ihrer Anwendung in verschiedenen Umgebungen.
Zugriff auf den Deployment Manager
Den Deployment Manager müssen Sie zuerst vom Pega Marketplace herunterladen und installieren. Sie können den Deployment Manager so konfigurieren, dass er als eigenständiges Feature oder in Admin Studio oder App Studio aufgerufen werden kann.
Die folgende Abbildung zeigt das Deployment-Manager-Dashboard, das schnellen Zugriff auf alle Ihre Pipelines bietet und mehrere Anwendungen in verschiedenen Entwicklungsstadien anzeigt:
Konfiguration des Deployment Managers in App Studio
Sie müssen den Deployment Manager richtig konfigurieren und in App Studio integrieren, bevor Sie Änderungen veröffentlichen können. Diese Integration Steps ermöglichen den Austausch zwischen Candidate-Umgebungen und dem Orchestrator für ein nahtloses Publishing von Bereitstellungs-Pipelines.
Mit dem Deployment Manager können Sie jede Ihrer Anwendungen mit einer Pipeline einrichten. In dieser Pipeline bewegen Sie Ihre Anwendung durch verschiedene Umgebungen. Wenn Sie den Deployment Manager in App Studio integrieren, macht das System die Pipeline für eine bestimmte Anwendung über App Studio (Settings > Versions) verfügbar. Anwendungsentwickler können ihre Änderungen in höheren Umgebungen veröffentlichen, sodass Systemadministratoren die Anwendungen nicht mehr manuell hochstufen oder konfigurieren müssen.
Drittanbieter-Tools
Wenn Sie bereits ein DevOps-System haben, können Sie DevOps mit Tools von Drittanbietern integrieren. Die Pega-Plattform unterstützt eine offene DevOps-Integration mit weitverbreiteten Drittanbieter-Tools wie Jenkins oder Microsoft Azure DevOps. Sie erhalten mit Pega eine offene Plattform mit allen erforderlichen Hooks und Diensten. Dank offener DevOps-Integration können Sie mithilfe von Drittanbieter-Tools eine Entwicklungs-Pipeline erstellen, um die Verzweigung zu automatisieren.
Prüfen Sie mit der folgenden Interaktion Ihr Wissen:
Dieses Thema ist in den folgenden Modulen verfügbar:
Möchten Sie uns dabei helfen, diesen Inhalt zu verbessern?