Neuimplementierung und Weiterentwicklung der HTML-GUI von Saros
Ziel dieser Arbeit ist es, die Saros GUI mit einem populäreren und besser geeignetem
JavaScript Frontend Framework zu reimplementieren. Dabei Ziele ich auf folgende Verbesserungen ab:
Transparentes Verhalten des Programms (leichteres Nachvollziehen des Datenflusses)
Reduzierung der Codemenge
Wesentliche Erleichterung der Einarbeitung, Wartung und Weiterentwicklung des Codes
Nach der Wiederherstellung der Funktionalität soll die HTML GUI soweit wie möglich an die bestehende Saros GUI angenähert werden
Meilenstein I: Untersuchung des aktuellen Stands
- Reevaluation des aktuellen Stands der HTML GUI basierend auf den Arbeiten von Bastian Sieker [1] und Nina Weber [2]
- Diskussion der grundlegenden Entscheidung Ampersand.js als Framework zu verwenden
- Darlegen der besseren Eignung von React + MobX gegenüber Ampersand.js + Handlebars
Meilenstein II: Implementierung eines Prototyps in React.js
- Verbesserung des bisherigen Entwicklungsprozesses durch die Einführung von Webpack und ESLint
- Implementierung einer ersten Testapplikation, um die Funktionsfähigkeit von React im SWT Browser auf die Probe zu stellen
- Einführung einer Model-Library: Zur Auswahl stehen MobX oder Redux
Meilenstein III: Reimplementierung
- Reimplementierung der HTML-GUI mit React und MobX
- Vollständige Wiederherstellung der bisherigen Funktionalität
Meilenstein IV: Vervollständigung der bisherigen Funktionen
- Auskunft über die laufenden sessions
- Der Join Session dialog soll ebenfalls als HTML Version implementiert werden
- Accept Invite Dialog in HTML
Meilenstein V: Getting started wizard
- Implementierung eines Getting started wizard in der HTML GUI
Meilenstein VI: Preferences
- Das Preferences Fenster soll ebenfalls IDE-übergreifend funktionieren und daher als Browser View implementiert werden
[1]
Saros HTML-GUI Einstiegserleichterung
[2]
User-Centered Development of a JavaScript and HTML-based GUI for Saros