Release Documentation Tool

Das Durchführen von Releases von Softwareprodukten ist an sich keine spannende Aufgabe, aber eine jede Firma und selbst ein Selbstständiger oder ein Open-Source Projekt hat Interesse daran dies reproduzierbar und standardisiert abzuwickeln.

Jetzt kann man sofort an Automatisierung, Freigabe-Workflows und Integration mit Issue Trackern denken. Aber ich möchte es einmal wie Spotify machen und zunächst ein Skateboard bauen, bevor ich mich an einem Auto probiere!

Und so möchte ich mit einer Idee für ein Tool beginnen, mit dem man seine Releases ordentlich dokumentieren und die Durchführung mit einer Checkliste unterstützen kann:

UI Aufbau

Das Tool sollte eine Webanwendung mit einem schlichten und funktionalen Layout sein:

01-Menu 01-Menu-Collapsed

Die Hauptfunktion ist die Verwaltung der Releases, es werden aber auch einige administrative Funktionen nötig sein, aber die sollten einklappbar sein.

Releases

Zunächst sollte eine Liste der Releases erscheinen, die man leicht filtern kann, z.B. nach Produkt oder Status:

Releases

Wenn man auf ein Release klickt, sollte sich ein neuer Tab öffnen, wo man dann das Release bearbeiten kann. Zunächst allgemeine Daten, die Checkliste, sowie Releasedateien.

Release-Edit

Es wären natürlich noch weitere Felder oder sogar benutzerdefinierte Felder denkbar, aber zum Start sollten die obigen auch erst einmal genügen.

Nun kommt ein wirklich nützliches Feature: die Checkliste. Diese kann für jedes Produkt konfiguriert werden und muss bei jedem Release abgearbeitet werden.

Release-Edit-Checklist

Ich habe solche Checklisten sehr erfolgreich eingesetzt. Leider beinhalten Releases viele manuelle Tätigkeiten und Schritte. Mit einer Checkliste ist sichergestellt, dass kein Schritt vergessen wird.

Zuletzt können noch die Dateien des Releases archiviert werden:

Release-Files

Hier ist denkbar, dass diese auf einen internen Storage der Anwendung, auf einen verlinkten FTP Server oder einfach nur in einem Netzlaufwerk abgelegt werden.

Stats

Wenn man die Daten schon einmal so strukturiert erfasst hat, kann als kleiner Mehrwert noch eine statistische Aufbereitung angeboten werden:

Stats

Weitere Funktionen

Nutzer müssen sich einloggen, ausloggen und ihr Passwort zurücksetzen können. In der Anwendung müssen Rechte durchgesetzt werden. Manche Nutzer dürfen auf ein Projekt eventuell gar keinen, nur lesenden oder nur teilweisen Zugriff erhalten. Und natürlich muss man Produkte verwalten und die Checkliste konfigurieren können.

Fazit

Was ich hier beschrieben habe, kann man natürlich auch mit Excel, Word und SharePoint machen. Ich selbst habe solche Dokumentation in der Vergangenheit mittels Sachmerkmalsleisten in Solages durchgeführt. Diese sind nutzerdefinierte Datentypen, denen man konfigurierte Attribute zuweisen kann, aber auch alle relevanten E-Mails und Dokumente (z.B. Checkliste) verknüpfen kann.

Der Vorteil eines dedizierten Tools ist jedoch die klare Standardisierung.

Es ist natürlich erst einmal nur eine Idee, die ich selbst jetzt auch gar nicht umsetzen will, aber ich finde den skizzierten Umfang für viele Anwendungsfälle schon recht nützlich.