NEWS | BLOG | THINGS

Nicht aktualisierte Release Notes gehören der Vergangenheit an – ReleaseFab

Die manuelle Erstellung von Release Notes ist eine sehr zeitaufwändige und fehleranfällige Aufgabe im Alltag von Software-Entwicklern. Das Open Source Projekt ReleaseFab automatisiert diesen Prozess und bietet durch eine Plugin-Architektur Kompatibilität mit jedem System zur Verwaltung der Softwareentwicklung. ReleaseFab kann in jede beliebige CI/CD Pipeline integriert werden. ReleaseFab ist als Open-Source-Projekt unter der Eclipse Public License 2.0 verfügbar. Merge Requests sind willkommen. Die bestehende Auswahl an Plugins kann nach Kundenanforderungen beliebig erweitert werden.

Die Dokumentation von Softwareprodukten ist eine der häufig vernachlässigten Pflichten in der Softwareentwicklung. Ein Hauptbestandteil der Dokumentation jeder neuen Softwareversion sind Release Notes. Darin sind alle nennenswerten Änderungen im Vergleich zur vorherigen Version aufgeführt.

 

Die manuelle Erstellung solcher Dokumente ist sehr zeitaufwändig, obwohl die benötigten Informationen in Form von abgeschlossenen Features und Bugfixes bereits existieren. Die teils sehr hohe Komplexität ergibt sich aus der Vielfalt der eingesetzten Tech-Stacks im Rahmen der Softwareentwicklung. Mit Hilfe von Projektmanagementtools werden die zu lösenden Aufgaben verwaltet. Der Lebenszyklus der Anwendung über die Laufzeit der Projekte wird mittels Application Lifecycle Management Systemen organisiert. Außerdem werden Versionskontrollsysteme wie Perforce, Subversion aber am häufigsten Git-basierte Systeme eingesetzt. Je komplexer die Software, desto mehr Systeme werden verwendet, wodurch die Informationen für die Erstellung von Release Notes immer vielfältiger und verteilter werden. Die Folge: Die Aufwände für die Erstellung steigen weiter.

Eine automatisierte Lösung muss her. comlet stellt für diesen Zweck das Open Source Projekt ReleaseFab zur Verfügung. ReleaseFab ist eine Java-Client-Anwendung, die automatisiert Daten zu einem definierten Release aus allen Quellen sammelt und in strukturierter Form als Release Notes zusammenfasst.

ReleaseFab bietet gegenüber der manuellen Erstellung noch weitere Vorteile als nur die Zeitersparnis. Simple Kopierfehler sind ausgeschlossen, was die Fehleranfälligkeit stark reduziert. Ebenso lassen sich aus einer Softwareversion immer die identischen Release Notes erzeugen. Diese Reproduzierbarkeit hilft bei der langjährigen Wartung von Systemen. Speziell in Software-Projekten, mit einer hohen Komplexität in der Komponentenstruktur, wie z.B. in Verteilten Anwendungen machen sich diese Vorteile bemerkbar.

 

 

Um möglichst viele Datenquellen zu unterstützen, basiert ReleaseFab auf einer Plugin-Architektur, die mit dem “Java Platform Module System” realisiert wurde. Derzeit ist die das Tool für Version 11 des Java Development Kit optimiert. ReleaseFab bietet eine Kommandozeilenschnittstelle, um die Anwendung direkt in den Buildprozess zu integrieren. Die Erzeugung von Release Notes kann somit in jede beliebige CI/CD Pipeline integriert werden – nicht aktualisierte Release Notes gehören der Vergangenheit an. Außerdem gibt es eine grafische Benutzeroberfläche, die basierend auf dem Eclipse Standard Widget Toolkit implementiert wurde. Diese ermöglicht es, bei Bedarf Anpassungen an den Release Notes vorzunehmen.

 

Der Prozess ist so weit automatisiert, dass auch die Version der Software aus einer vordefinierten Quelle ausgelesen wird. Dadurch werden widersprüchliche Angaben von Softwareversionen in offizieller Dokumentation vermieden. Im Open-Source-Projekt sind zusätzlich zum beschriebenen Versionsplugin auch ein Plugin für Git und wichtige zusätzliche Informationen enthalten. Das Git Plugin sammelt Informationen zu Commits aus dem Repository. Wichtige zusätzliche Informationen können aus verschiedenen Quellen stammen. Beispielsweise wird bereits das Einlesen aus Dateien, aber auch die manuelle Eingabe unterstützt.

 

 

Je nach Anforderung, kann die bestehende Auswahl an Plugins jederzeit erweitert werden. Dies ermöglicht spezifische Implementierungen, um individuelle Gegebenheiten zu unterstützen. ReleaseFab ist als Open-Source-Projekt unter der Eclipse Public License 2.0 verfügbar. Merge Requests sind willkommen.

 

 

Hier geht es zum Projekt auf GitHub: https://github.com/comlet/releasefab

 

Sie möchten mehr Details erfahren?

Rufen Sie uns an

+49 6332 811 0

Schreiben Sie uns

Es freut uns von Ihnen zu hören! Wir melden uns umgehend bei Ihnen zurück.