Vor einem halben Jahr haben wir angekündigt, dass ein Student, Said Salem, im Rahmen seiner Masterarbeit an der Entwicklung einer besseren Reporting-Lösung für ProR arbeiten würde. Die gute Nachricht ist: Er hat seine Arbeit abgeschlossen und die Prüfung bestanden. Die schlechte Nachricht: Die daraus resultierenden Implementierungen kamen nicht über das Prototypen-Stadium hinaus, was bedeutet, dass wir die Ergebnisse vorerst nicht in die RMF-Codebasis integrieren werden. Er hat sich verpflichtet, seinen Code auf GitHub zu veröffentlichen (Einiges ist bereits da), damit andere Parteien (einschließlich Formal Mind) es aufgreifen und zur Reife entwickeln können.
Berichterstattung für ReqIF: Von der Analyse zur Auswertung (Masterarbeit)
Die Masterarbeit ist als PDF verfügbar, auf Deutsch verfasst. Die Hauptbestandteile sind eine Problemanalyse, drei prototypische Implementierungen und eine Bewertung dieser Prototypen im Hinblick auf die Ergebnisse der anfänglichen Problemanalyse.
Im Folgenden finden Sie die wichtigsten Ergebnisse dieser Arbeit.
Problemanalyse
Die Problemanalyse umfasst die Antworten auf den Fragebogen, den Herr Salem verteilt hat und der 59 Antworten ergab. Viele Antworten kamen von Abonnenten dieses Newsletters, und daher ist das Ergebnis wahrscheinlich nicht repräsentativ für Nutzer von Anforderungswerkzeugen, sondern eher für die ProR-Community:

Als Nächstes mussten die Nutzer angeben, welche Funktionen sie in einer Reporting-Lösung als wichtig erachten würden. Hier stellten wir fest, dass einige der teureren Funktionen tatsächlich nicht allein mit dem Reporting zusammenhingen, sondern begehrte Funktionen für die Benutzeroberfläche waren. Filterung war zum Beispiel die Funktion mit den meisten Stimmen und würde eindeutig einen Mehrwert in der Benutzeroberfläche zusätzlich zu einer Reporting-Lösung darstellen.
Rückblickend war die Formulierung der Features in vielen Fällen nicht so gut, wie sie hätte sein können, was zu unklaren Ergebnissen führte:

Weitere Statistiken finden Sie in der eigentlichen Dissertation.
Nach einiger Analyse entschied Herr Salem, die Filterfunktionalität separat zu behandeln und im ProR Core zu implementieren, anstatt in einer spezifischen Reporting-Lösung. Aufgrund des prototypischen (unvollständigen) Charakters der Implementierung wurde sie noch nicht in die ProR-Codebasis aufgenommen.
Berichterstattung mit Birt
Birt ist ein beliebtes Reporting-Framework für Eclipse mit einem umfangreichen Funktionsumfang. Darüber hinaus unterstützt Birt bereits viele Funktionen, die von den Benutzern gewünscht wurden, und mehr. So unterstützt Birt beispielsweise die Erstellung von Berichten in verschiedenen Formaten und verfügt über einen umfangreichen Satz von Funktionen für Branding, Datenanalyse (z. B. Erstellung von Diagrammen) und mehr.
Auf der anderen Seite erwartet Birt seine Daten in einer bestimmten Struktur, und die Umwandlung der ReqIF-Daten aus ProR in solche Strukturen erwies sich als schwierig. Außerdem unterstützt Birt hierarchische Informationen nicht nativ. Um dies zu umgehen, wird im Prototyp die Hierarchie abgeflacht (siehe Abbildung).
Berichterstattung mit JSON/HTML
Dieser Ansatz führt ein Zwischenformat (unter Verwendung der JSON-Notation) ein. Dies berücksichtigt die Tatsache, dass ReqIF komplexer ist als für die Erstellung eines Berichts benötigt. Die Idee ist, dass das Zwischenformat nicht nur zur Erstellung eines HTML-Berichts, sondern auch zur Erstellung von Berichten in anderen Formaten verwendet werden kann.
Berichterstellung mit Excel
Reporting mit einem Tool wie Excel ist überzeugend. Zum einen sind viele Benutzer damit vertraut und wissen, wie sie es anpassen können. Wichtiger ist jedoch, dass Excel leistungsstarke Funktionen für fortgeschrittene Analysen enthält.
In der Implementierung muss der Benutzer eine Vorlage bereitstellen, die wiederverwendbares Branding ermöglicht. Bestehende Bibliotheken machen die Implementierung dieser Funktionalität einfach und schnell. Excel hat jedoch die gleiche Einschränkung wie Birt: Es kann nicht (einfach) mit Hierarchien umgehen, und in der prototypischen Implementierung wird die Struktur ebenfalls abgeflacht.
Schlussfolgerung
Indem Herr Salem den Wünschen des Nutzers Gewicht verlieh und die verschiedenen Implementierungen daran maß, versuchte er, die “beste” Lösung zu finden. Gewinner ist Birt, dicht gefolgt von Excel, mit HTML/JSON als weit abgeschlagenem Dritten.
Dieses Ergebnis wird hauptsächlich durch Filterung, Tabellen und den Wunsch nach Excel als Berichtsformat beeinflusst. Daher muss dieses Ergebnis mit Vorsicht betrachtet werden: Wenn ein guter Filter im ProR Core implementiert wäre, hätte dies keinen Einfluss auf das HTML-Rating. Die Reife von Birt und Excel erklärt den verbleibenden Vorteil dieser beiden Technologien.
Wir sind der Meinung, dass die Ergebnisse dieser Arbeit sowohl für die Nutzer von ProR im Allgemeinen als auch für die Entwickler im Besonderen von großem Nutzen sind. Der große Nachteil ist natürlich die Tatsache, dass die entstandenen Prototypen nicht die von uns erhoffte Reife erreicht haben. Sollte Formal Mind diese Arbeit aufgreifen und zur Marktreife entwickeln, werden wir Sie über unseren Blog und Newsletter informieren.



