Weiterentwicklung des No-Code Werkzeugs „Decision Support UI“
Institut für Nutzpflanzenwissenschaften und Ressourcenschutz, Universität Bonn
Das Werkzeug „Decision Support UI“ wird genutzt, um in komplexen Situationen Kosten, Nutzen und Risiken abzuschätzen und somit bei der Entscheidungsfindung zu unterstützen. Im Rahmen des Auftrags wurde die Software auf den neuesten Stand gebracht und verschiedene Verbesserungen umgesetzt.
Projektkontext
Das Institut für Nutzpflanzenwissenschaften und Ressourcenschutz der Universität Bonn beschäftigt sich unter anderem im Rahmen des Projektes NIFAM (Nutrition Intervention Forecasting and Monitoring) mit wissenschaftlichen Methoden zur Entscheidungsunterstützung. Dabei werden komplexe probabilistische Modelle entwickelt, um Entscheidungsträgern dabei zu helfen, die Effekte – also Kosten, Nutzen und Risiken – von verschiedenen Maßnahmen gegeneinander abzuwägen.
Die Modelle werden üblicherweise von Experten aufwendig mithilfe des R-Package decisionSupport programmiert und in eigenständigen Shiny-Webanwendungen dargestellt. Nutzer mit eingeschränkter Programmiererfahrung stoßen dabei allerdings schnell an ihre Grenzen. Aus diesem Grund wurde das No-Code Werzeug „Decision Support UI“ konzipiert, sodass grundlegende Modelle auch ohne Programmiererfahrung entworfen und ausgewertet werden können. Gleichzeitig kann das Modell automatisch in ausführbaren R-Code konvertiert werden, sodass der Nutzer mit der Zeit begleitend erste Programmiererfahrung sammeln kann.
Im Rahmen des Auftrags wurde die Software auf den neuesten Stand gebracht. Die Benutzeroberfläche wurde von Vue Version 2 auf 3, und der Modell-Editor von BaklavaJS Version 1 auf 2 aktualisiert. Dadurch konnten neue Funktionen implementiert werden, z.B. das Gruppieren von Teilmodellen als wiederverwendbare Subgraphen, die im R-Code als eigenständige Methoden übersetzt werden. Außerdem wurde der Editor um eine automatische Validierung der Modelle erweitert, sodass Nutzer über falsch verknüpfte Verarbeitungsmodule informiert werden. Zudem wurde die Darstellung der Ergebnisdiagramme überarbeitet, neue Verarbeitungsoptionen hinzugefügt und eine Desktop-Version für Microsoft Windows erstellt.
Eingesetzte Technologien
Die Anwendung basiert auf einem Python-Backend und Vue-Frontend. Das Frontend ist mit Vuetify ausgestaltet. Der Graph-Editor basiert auf der Open-Source-Bibliothek BaklavaJS. Das Python-Backend nutzt die Bibliothek FastAPI, um über eine REST-API mit dem Frontend zu kommunizieren. Die Daten werden in einer SQLite-Datenbank vorgehalten. Auf Anfrage des Nutzers wird ein Modell in R-Code konvertiert und in einem separaten R-Prozess ausgewertet. Die Ergebnis-Grafiken wurden mit Chart.JS ausgestaltet. Frontend und Backend werden mithilfe von Electron gemeinsam in eine Desktop-Anwendung verpackt.
Leistungsumfang
Im Rahmen des Projektes wurden folgende Arbeiten durchgeführt:
- Aktualisierung aller Softwareabhängigkeiten
- Erzeugen einer Desktop-Anwendung für Microsoft Windows zur Offline-Nutzung
- Verschiedene Verbesserungen der Benutzeroberfläche (z.B. bei der Ergebnisdarstellung)
- Verschiedene Fehlerbehebungen (z.B. fehlerhafter Logout bei Inaktivität)
- Erweiterung der Konvertierung eines Modells in R-Code um Subgraphen
- Entwurf einer ausführlichen Anwenderdokumentation
- Beratung zum Deployment der Anwendung mit Docker
Wir freuen uns auf Ihre Anfrage
Eine Nachricht schreiben
Per Telefon
+49-391-40594560
(Mo. ‒ Fr., 9 ‒ 17 Uhr)
E-Mail schreiben
Navigation
Kontakt
Einstellungen
Rechtliches