CDP – About

Notebook, Block, BleistiftNeben der guten Dokumentation des Codes gehört zu einem Programm auch, dass der Benutzer mit wenig Aufwand herausfinden kann, mit welcher Version er gerade arbeitet. Üblicherweise stellt der Entwickler ein Formular namens “About” oder im Deutschen “Über” zur Verfügung, das alle notwendigen Informationen auf einen Blick enthält.

 

Graphische Oberfläche

Für Microsoft-Office-Anwendungen könnte das z.B. so aussehen:

Beispiel für ein About-FormularGehen wir die Elemente dieses Formulars im einzelnen durch.

Da ist zunächst der Titel. Das ist sicher trivial, aber er sollte sich zumindest in der Schreibweise nicht anders verhalten als üblich.

Version, Datum und Hash sind zwar teilweise redundant, können aber gerade in der Beta-Phase wichtig sein. Denn die Version wird dann vermutlich nicht bei jedem neuen Test aktualisiert. Das Datum der Veröffentlichung erlaubt einen ersten Einblick in das Alter der Software (sowohl im Test, als auch später “in Produktion”), während der Hash-Wert bei Git oder Hg den Commit eindeutig identifiziert. Bei Svn nehmen wir statt dessen einfach die Revisions-Nummer.

Natürlich sollten Datum und Hash bzw. Revision im Zuge des CI/CD-Prozesses automatisiert eingefügt werden. Dazu verwende ich eine Kombination aus Access-Datenbank aus VCS automatisch aufbauen und AccessMake. Die Werte werden in je einer Public Const gespeichert. Dadurch wird sichergestellt, dass sie bei jeder Veröffentlichung aktuell sind.

Die aktuelle Information ist hier eher ein nettes Zubrot und nicht übermäßig wichtig. Theoretisch kann diese sogar aus einer Netzwerk-Ressource automatisch beim Öffnen des Formulars gelesen werden, um wirklich aktuelle Informationen bereitzustellen.

Ergänzend könnte man noch einen Link zur Online-Dokumentation und/oder zum Butracker hinzufügen. Der Fantasie sind keine Grenzen gesetzt, solange es sinnvoll ist.

Programmcode und Buildprozess

Für die Versionsnummer, das Versionsdatum und den Hashwert verwende ich jeweils eine Public Const in einem eigenen Modul. Auf diese Weise stelle ich sicher, dass überall im Programm durch Zugriff auf die Konstante immer derselbe Wert auf dieselbe Weise angezeigt wird. Datum und Hashwert können dabei von AccessMake während des Buildprozesses automatisch gesetzt werden.

Für die Versionsnummer wiederum ist genau die hiesige Konstante der “Master”. Diese wird ebenfalls von AccessMake ausgelesen und in das Setup-Script und vielleicht auch die CHM-Datei automatisch hinein geschrieben.

Der “Code Behind Form” ist dabei recht einfach gestrickt. Es geht hier nur noch darum, die Informationen aus den Konstanten in die entsprechenden Felder zu schreiben. Es handelt sich dabei um Textfelder, die jedoch mit “aktiviert = ja” und “gesperrt = ja” zwar auswählbar und markierbar, jedoch nicht veränderbar sind. Dadurch kann der Benutzer mittels Copy/Paste die Informationen heraus kopieren, um sie z.B. für einen Bugreport zu verwenden (was für uns Entwickler sehr hilfreich ist).

Wer es dem Benutzer ganz einfach machen will, fügt noch einen Button ein, der alle für einen Bugreport notwendige Informationen im Hintergrund zusammenstellt und in die Zwischenablage kopiert.

 

Ähnliche Artikel:

Schreibe einen Kommentar

Deine Email-Adresse wird nicht veröffentlicht.

17 − 15 =