Chapter 8 : Summary
This dissertation has presented a new analysis of synchronization problems in collabora-
tive work, focusing on the use of explicit change representations to increase the flexibility
of collaborative applications. The analysis includes a new typology of types of change opera-
tions, including a new distinction between static and dynamic change operations. It has pre-
sented and formalized a new model of sequence editing that includes dynamic versions of
the move and copy operations. We have examined application of the model, algorithms to
implement it and application architectures to exploit its advantages.
The rest of this chapter briefly reviews the requirements from Chapter 1, examines how
well they have been met, and closes with a few general comments on the approach.
8.1 Review of the requirements
I will now wrap up our exploration of Palimpsest by revisiting the requirements listed in
Section 1.10, and seeing to what extent Palimpsest meets them. We listed 9 general require-
ments for flexible concurrency control in collaborative work, and an additional 8 require-
ments for merge. Many of these requirements are informal, in the sense that they advocate
maximization of some good, rather than meeting the ideal of a formal requirement: a predi-
cate which is unambiguously true or false. In this section, I review some of these require-
ments and their relationship to the model, its motivating analysis and the tradeoffs made in
the formal definition. This reexamination concentrates on the core issue of how well the re-
quirements are met by the model, but also considers them in the light of the specific algo-
rithms and architectures discussed in Chapter 6 and Chapter 7.
Requirements 1 and 2 advocate support for both synchronous and asynchronous work, as
well as for fully flexible transitions between them. Change-oriented concurrency works well
This dissertation has presented a new analysis of synchronization problems in collabora-
tive work, focusing on the use of explicit change representations to increase the flexibility
of collaborative applications. The analysis includes a new typology of types of change opera-
tions, including a new distinction between static and dynamic change operations. It has pre-
sented and formalized a new model of sequence editing that includes dynamic versions of
the move and copy operations. We have examined application of the model, algorithms to
implement it and application architectures to exploit its advantages.
The rest of this chapter briefly reviews the requirements from Chapter 1, examines how
well they have been met, and closes with a few general comments on the approach.
8.1 Review of the requirements
I will now wrap up our exploration of Palimpsest by revisiting the requirements listed in
Section 1.10, and seeing to what extent Palimpsest meets them. We listed 9 general require-
ments for flexible concurrency control in collaborative work, and an additional 8 require-
ments for merge. Many of these requirements are informal, in the sense that they advocate
maximization of some good, rather than meeting the ideal of a formal requirement: a predi-
cate which is unambiguously true or false. In this section, I review some of these require-
ments and their relationship to the model, its motivating analysis and the tradeoffs made in
the formal definition. This reexamination concentrates on the core issue of how well the re-
quirements are met by the model, but also considers them in the light of the specific algo-
rithms and architectures discussed in Chapter 6 and Chapter 7.
Requirements 1 and 2 advocate support for both synchronous and asynchronous work, as
well as for fully flexible transitions between them. Change-oriented concurrency works well