Integration of the independent session server

worked on by: Michael Krummrei

Outline

The development of an independent session server for Saros started in 2014 with the work of Nils Bussas, which resulted in a first prototype. In 2015/16 Denis Washington continued the development during his master thesis. Besides adding several features, he designed a new protocol for the "Project Negotiation", the process of exchanging files belonging to a shared project during the invitation of a user. His work finally led to a new prototype, which is able to IDE-indepently run a shared session between several instances of the Saros-plugin. In such a scenario scenario the server acts as the sessions host and manages the creation of a session, the invitation of users, the sharing of projects and the synchronization of changes on the projects resources between the participants. This enhanced prototype was published as the so called "Huge Server Patch" change (in the following abbreviated "HSP") in Saros' Gerrit repository, but is far to big to get reviewed in a practical manner. Some of it's components have been split out of this patch and published as individual changes. A few have already passed the review and thus been merged with the code base.

Thesis Requirements

The task is to continue the integration of the servers components. The final goal is archived when all features, required to run an IDE-independent session server, are part of Saros' source code.

For this it is necessary to

Milestones and Planning

Milestone no. Past days CW Goals target accomplished wrench
1 CW1 Examine HSP: list features, known bugs, open problems accomplished
2   Rebase the Huge Server Patch accomplished
3   Split the HSP into single changes for each component accomplished
4   Get all components reviewed and merged with the master-branch running

Weekly Status

pre Week 1 (pre CW 3)

Activities

Results

Next Steps

Problems

Week 1 (CW 4)

Activities

Results

Next Steps

Week 2 (CW 5)

Activities

Results

Next Steps

Week 3 (CW 6)

Activities

Results

Next Steps

Week 4 (CW 7)

Activities

Results

*

Next Steps

Week 5 (CW 8)

Activities

Results

Next Steps

Week 6 (CW 9)

Activities

Results

Problems

Next Steps

Week 7 & 8 (CW 10 & 11)

Activities

Results

*

Problems

Next Steps

Week 9 (CW 12)

Activities

Results

Problems

Next Steps

Week 10 (CW 13)

Activities

Results

Problems

Next Steps

Week 11 (CW 14)

Activities

Week 12 (CW 15)

Calendar Week 24