
FutureSOC-Symposium 2013 at HPI (June 20/21)
8th Symposium on Future Trends in Service-Oriented Computing
14th Retreat of the HPI Research School
The annual spring retreat of the research school took place on April 12, 2013 at the Hasso Plattner...
Annual HPI-SAP Symposium in Walldorf
On December 17, 2012, members of the HPI research school presented their latest research results at...
13th Research School Retreat - Fall 2012
The annual fall retreat of the research school took place on October 18/19, 2012 at the IFA Hotel...
Two successful Ph.D. defenses on one day
On May 29, two members of the HPI Research School successfully defended their Ph.D. theses. Rehab...
FutureSOC-Symposium 2012 at HPI (June 14/15)
7th Symposium on Future Trends in Service-Oriented Computing
12th Retreat of the HPI Research School
The annual spring retreat of the research school took place on April 20, 2012 at the Hasso Plattner...
HPI Symposium @ SAP
On Dec 6, the research school visited the SAP headquarters for the annual HPI Symposium. Six...
New branch of the HPI Research School in China
On Nov 17, the HPI Research School opened its 3rd branch at Nanjing University in China.
Research School Meeting
Date:
9th of February 2011, 15:15
Location:
H-2.57
Speaker:
Sebastian Ziller
Title:
Concurrency problems in a tool for Distributed Pair Programming
Abstract:
For the technical facilitation of Distributed Pair Programming the AG Software Engineering at Freie Universität Berlin develops the Eclipse Plugin Saros. Due to Saros' possibility to leave the well-known driver-observer pattern of Pair Programming and to allow more than one driver (at least in a technical sense), one is confronted with some concurrency problems.
This includes the problem that concurrently generated, non-commutable edit operations should be executed in a way that afterwards there still is a consistent state of the edited document for all participants of the programming session. In addition the intention of each participant's edit operation should be preserved. This is achieved by the Jupiter architecture combined with the GOTO algorithm for Operational Transformation.
Another complication is the concurrency control of long-running operations, e.g. removing a participant's write access. This can be solved by blocking mechanism which prevents participants from editing for a certain time.
Furthermore there has to be readjusted the semantics of the Undo operation because in a distributed environment there only should be undone the most recent own operation, not the globally most recent one. Here an operation history has to be maintained. Applying the GOTO algorithm to this history the problem can be solved.
To assess the benefits of this so called multi driver mode, there was performed an empirical study, which had the goal to find differences in pairs' usage of the multi driver mode compared to the single driver mode. Due to the too low number of participants there couldn't be found clear results, but tendencies of a shorter development time in multi driver mode.

