Änderungsmanagement
Das Änderungsmanagement stellt sicher, dass alle Anpassungen und Verbesserungen der Software strukturiert und nachvollziehbar durchgeführt werden. Es umfasst sowohl die Dokumentation von Änderungen als auch die Verwaltung der Softwareversionen, um eine konsistente und stabile Entwicklung und Bereitstellung zu gewährleisten.
Dokumentation von Änderungen
Die Dokumentation von Änderungen an der Software ist ein zentraler Bestandteil des Änderungsmanagements. Änderungen, die von den Entwicklern vorgenommen werden, werden detailliert in den Tools Confluence und JIRA dokumentiert. Dabei konzentriert sich die Dokumentation ausschließlich auf Änderungen am Code der Software, während Anpassungen von Prozessen und Konfigurationen in den Verfahrensdokumentationen der jeweiligen Kunden hinterlegt werden.
Verantwortlichkeiten
Jeder Entwickler, der eine Änderung vornimmt, ist verantwortlich für die vollständige und genaue Dokumentation dieser Änderung. Dies umfasst die Beschreibung des Problems oder der Anforderung, die Implementierung der Lösung sowie etwaige Auswirkungen auf andere Systemkomponenten.
Dokumentationsprozess
Es gibt keine festen Vorlagen für die Dokumentation, was den Entwicklern eine gewisse Flexibilität erlaubt. Die Dokumentation erfolgt in JIRA durch das Anlegen und Bearbeiten von Tickets, in denen die Änderung beschrieben wird. Zusätzlich werden in Confluence weiterführende Informationen, wie technische Details, Architekturbeschreibungen oder Entscheidungsprozesse, hinterlegt. Dies stellt sicher, dass alle relevanten Informationen zu einer Änderung zentral verfügbar sind.
Versionsverwaltung
Für die Verwaltung des Quellcodes der Software wird GitHub als zentrale Plattform eingesetzt. GitHub ermöglicht eine effektive Versionskontrolle und stellt sicher, dass alle Änderungen am Code nachvollziehbar und sicher verwaltet werden.
Branches und Pull Requests
Die Entwicklung neuer Features oder Bugfixes erfolgt in separaten Branches, die von der Hauptversion des Codes, dem sogenannten StableBranch, abgeleitet werden. Nach Abschluss der Arbeiten wird das neue Feature oder der Bugfix einem strukturierten Testprozess unterzogen. Dieser Prozess umfasst das Testen durch den verantwortlichen Entwickler sowie teil unabhängigen Dritten, und die anschließende Code-Review durch einen zweiten Entwickler.
Code-Review und Merging
Nach erfolgreicher Prüfung durch einen anderen Entwickler wird ein Pull Request erstellt. Dieser Pull Request dokumentiert die vorgeschlagenen Änderungen und dient als Grundlage für die abschließende Überprüfung. Nach der Code-Review und der Genehmigung wird der Pull Request in den StableBranch gemergt. Dieser Vorgang stellt sicher, dass nur geprüfter und qualitativ hochwertiger Code in die Hauptversion der Software integriert wird.
Deployment
Nach dem Merge in den StableBranch wird die neue Version der Software auf die entsprechenden Umgebungen deployed. Dieser Prozess ist darauf ausgelegt, eine möglichst reibungslose Integration neuer Funktionen und Verbesserungen in das laufende System zu gewährleisten.
Durch die Kombination aus einer sorgfältigen Dokumentation der Änderungen und einer robusten Versionsverwaltung wird sichergestellt, dass die Softwareanwendung 3MO eBusiness kontinuierlich verbessert und gleichzeitig eine hohe Stabilität und Zuverlässigkeit gewährleistet wird.