Saros is an open source software to enable distributed collaborative software development and is available as a plugin for the integrated development environments (IDE) Eclipse and IntelliJ. Saros started as a research project in the software engineering research group at Freie Universität Berlin, went open source and is further developed by the community and various theses at the university. Until recently, the development of the graphical user interface (GUI) was dependent on the underlying IDE which leads to several disadvantages in terms of maintenance and development. Lately, there were two theses addressing this problem via introducing an IDE-independent GUI based on JavaScript and HTML which is running in a browser embedded in the IDE. However, the GUI based on the new technologies is only implemented prototypical without any considerations regarding usability, yet. In any case, there are various works enumerating current usability problems with Saros. Instead of simply re-implementing the current GUI with new technologies it is reasonable to also solve existing usability problems.
The following points describe the main goals of this thesis addressing the defined tasks.
Creation of known-problems catalogue for Saros: Based on previous work on Saros usability, known usability problems have to be collected and prioritised. Evaluation of JavaScript MV*-frameworks: Since the JavaScript Model- View-Star(MV*)2-framework landscape is wide and sometimes confus- ing, current state-of-the-art frameworks should be evaluated with the special requirements of the use case Saros frontend in mind. Development of a Saros frontend framework: A fundamental Saros frontend framework has to be implemented in JavaScript to ease develop- ment and testing in this thesis and for future developers. This Saros frontend framework should be based on the previous JavaScript MV*-framework evaluation. Development of a new Saros GUI that increases the usability: On the basis of the Saros frontend framework, a new GUI has to be built. Therefore, a UCD process will be elaborated and applied to iteratively test and improve the usability. Evaluation of the results: Evaluate the evolution of the usability of Saros during this thesis. Furthermore, evaluate the Saros frontend frame-work as well as the UCD process to formulate possible future improvements.