Consistency Maintenance Framework For Collaborative Software Modeling Tools
TCD-CS-2003-58.pdf (PDF) 815.2Kb
The globalization of companies and business, and the improvements in communication and computing have lead to the need of new models of collaborative work. Real-time collaborative editing systems are included in the field of Computer Supported Collaborative Work (CSCW) systems, which allow users to view and design the same document simultaneously from geographically dispersed sites connected by networks. Distributed Software Engineering (DSE) requires technical knowledge that spans geographical and organizational boundaries. In a distributed environment, developers are dispersed across different sites and even countries. Even thought major contributions have been lately introduced to enable CSCW applications on the Internet to support global collaboration, the area of DSE requires further research. There are three inconsistency problems that arise in Collaborative Editing Systems: divergence, causal ordering violation and user intentions violation. Divergence can be solved serializing the operations at all sites, causality violation can be solved with a causal ordering communication protocol. However user intention violation solution is dependent on application semantics. There are few group support framework specialized in DSE, and distributed software modeling. However, we are not aware of any Collaborative Software Modeling Framework using Consistency Maintenance mechanisms where the user intentions are preserved. Current distributed software modeling frameworks address concurrency with traditional methods as locking, turn taking, serialization, etc. The algorithms and schemas presented in this work have been implemented in the DArgoUML prototype system. DArgoUML is a Distributed version of ArgoUML, which includes a Flexible Consistency Maintenance Framework based on Software Modeling Knowledge. The Framework can be considered Flexible as it allows the system to maintain temporal inconsistencies, as the shared document will merge to a consistent version. Some algorithms have been devised to detect different types of conflicts based on the different level of inconsistency they generate. Techniques have been presented to address each specific conflict or level of Inconsistency. Besides a mechanism for conflict group awareness is proposed, where users are aware of other user intentions when concurrent operations do conflict.
Author: Lozano, Marta
Availability:Full text available