Text Document

Maintaining constraints in collaborative graphic systems: the CoGSE approach

Fulltext URI

Document type


Additional Information



Journal Title

Journal ISSN

Volume Title


Springer, London


A constraint specifies a relation or condition that must be maintained in a system. It is common for a single user graphic system to specify some constraints and provide methods to satisfy these constraints automatically. Constraints are even more useful in collaborative systems, which can confine and coordinate concurrent operations, but satisfying constraints in the presence of concurrency in collaborative systems is difficult. In this article, we discuss the issues and techniques in maintaining constraints in collaborative systems. In particular, we also proposed a novel strategy that is able to maintain both constraints and system consistency in the face of concurrent operations. The strategy is independent of the execution orders of concurrent operations and able to retain the effects of all operations in resolving constraint violation. The proposed strategy has been implemented in a Collaborative Genetic Software Engineering system, called CoGSE, for maintaining the tree structure constraint. Specific issues related to CoGSE are also discussed in detail.


Lin, Kai; Chen, David; Sun, Chengzheng; Dromey, Geoff (2005): Maintaining constraints in collaborative graphic systems: the CoGSE approach. ECSCW 2005: Proceedings of the Ninth European Conference on Computer-Supported Cooperative Work. DOI: 10.1007/1-4020-4023-7_10. Springer, London. ISBN: 978-1-4020-4023-8. pp. 185-204. Full Papers. Paris, France. 18–22 September 2005