46 research outputs found

    Scalable XML Collaborative Editing with Undo short paper

    Get PDF
    Commutative Replicated Data-Type (CRDT) is a new class of algorithms that ensures scalable consistency of replicated data. It has been successfully applied to collaborative editing of texts without complex concurrency control. In this paper, we present a CRDT to edit XML data. Compared to existing approaches for XML collaborative editing, our approach is more scalable and handles all the XML editing aspects : elements, contents, attributes and undo. Indeed, undo is recognized as an important feature for collaborative editing that allows to overcome system complexity through error recovery or collaborative conflict resolution

    Research report : Collaborative Peer 2 Peer Edition: Avoiding Conflicts is Better than Solving Conflicts

    Full text link
    Collaborative edition is achieved by distinct sites that work independently on (a copy of) a shared document. Conflicts may arise during this process and must be solved by the collaborative editor. In pure Peer to Peer collaborative editing, no centralization nor locks nor time-stamps are used which make conflict resolution difficult. We propose an algorithm which relies on the notion or semantics dependence and avoids the need of any integration transformation to solve conflicts. Furthermore, it doesn't use any history file recording operations performed since starting the edition process. We show how to define editing operations for semi-structured documents i.e. XML-like trees, that are enriched with informations derived for free from the editing process. Then we define the semantics dependence relation required by the algorithm and we present preliminary results obtained by a prototype implementation.Comment: 12 page

    Proving Correctness of Transformation Functions in Real-Time Groupware

    Get PDF
    Colloque avec actes et comité de lecture. internationale.International audienceOperational transformation is an approach which allows to build real-time groupware tools. This approach requires correct transformation functions. Proving the correction of these transformation functions is very complex and error prone. In this paper, we show how a theorem prover can address this serious bottleneck. To validate our approach, we have verified the correctness of state-of-art transformation functions defined on Strings with surprising results. Counter-examples provided by the theorem prover have helped us to define new correct transformation functions for Strings

    Improving Textual Merge Result

    Get PDF
    International audienceIn asynchronous collaborative systems, merging is an essential component. It allows to reconcile modifications made concurrently as well as managing software change through branching. The collaborative system is in charge to propose a merge result that includes user's modifications. The users now have to check and adapt this result. The adaptation should be as effort-less as possible, otherwise, the users may get frustrated and will quit the collaboration. The objective of this paper is to improve the result quality of the textual merge tool that constitutes the default merge tool of distributed version control systems. The basic idea is to study the behavior of the concurrent modifications during merge procedure. We identified when the existing merge techniques under-perform, and we propose solutions to improve the quality of the merge. We finally compare with the traditional merge tool through a large corpus of collaborative editing

    On Coordinating Collaborative Objects

    Full text link
    A collaborative object represents a data type (such as a text document) designed to be shared by a group of dispersed users. The Operational Transformation (OT) is a coordination approach used for supporting optimistic replication for these objects. It allows the users to concurrently update the shared data and exchange their updates in any order since the convergence of all replicas, i.e. the fact that all users view the same data, is ensured in all cases. However, designing algorithms for achieving convergence with the OT approach is a critical and challenging issue. In this paper, we propose a formal compositional method for specifying complex collaborative objects. The most important feature of our method is that designing an OT algorithm for the composed collaborative object can be done by reusing the OT algorithms of component collaborative objects. By using our method, we can start from correct small collaborative objects which are relatively easy to handle and incrementally combine them to build more complex collaborative objects.Comment: In Proceedings FOCLASA 2010, arXiv:1007.499

    A Constraint-based Approach for Generating Transformation Patterns

    Full text link
    Undoing operations is an indispensable feature for many collaborative applications, mainly collaborative editors. It provides the ability to restore a correct state of shared data after erroneous operations. In particular, selective undo allows to undo any operation and is based on rearranging operations in the history thanks to the Operational Transformation (OT) approach. OT is an optimistic replication technique allowing for updating the shared data concurrently while maintaining convergence. It is a challenging task how to meaningfully combine OT and undo approaches. Indeed, undoing operations that are received and executed out-of-order at different sites leads to divergence cases. Even though various undo solutions have been proposed over the recent years, they are either limited or erroneous. In this paper, we propose a constraint-based approach to address the undo problem. We use Constraint Satisfaction Problem (CSP) theory to devise correct and undoable transformation patterns (w.r.t OT and undo properties) which considerably simplifies the design of collaborative objects.Comment: In Proceedings FOCLASA 2015, arXiv:1512.0694

    An efficient consistency management algorithm for real-time mobile collaboration

    Get PDF
    Real time mobile collaboration involves two or more co-workers operating concurrently on a shared document using independent mobile devices. The replicated architecture is attractive for such applications since it does not rely on a central server and a user can continue to work on his or her own local document replica even during disconnection period. Several consistency management algorithms have been proposed, however the resource usage of such algorithms, which is critical in a mobile environment, has not been formally studied. Mobile devices are constrained in terms of memory and processing power, and operate in networking environments with limited bandwidth and transient connectivity. Therefore, algorithms that use resources more effectively improve the quality of the user experience in a mobile environment. ISO 9126-1 considers software to be efficient if it provides a balance between performance, and resource utilisation while performing its function. Therefore, this paper evaluates the efficiency of existing techniques, and proposes a more efficient consistency management algorithm. The new algorithm leverages existing techniques which are shown to be efficient and incorporates a novel history management strategy called partial history copy. Different combinations of these techniques are tested and compared to determine which one is most efficient and thus suitable for mobile usage

    Edition collaborative sur réseau pair-à-pair à large échelle

    Get PDF
    http://www.ece.fr/cdur2005Un éditeur collaboratif synchrone permet à plusieurs utilisateurs d'éditer les mêmes données au même moment depuis différents sites répartis sur Internet. Pour garantir un temps de réponse minimum, les données sont répliquées de manière optimiste. Il n'y a ni verrou, ni protocole de sérialisation. Si les utilisateurs génèrent des opérations concurrentes, le système doit assurer que les répliques convergent vers le meilleur état possible. WOOT est un algorithme de réplication optimiste adapté aux éditeurs collaboratifs. Il assure la convergence des répliques et préserve les intentions. WOOT est plus simple et plus efficace que les approches existantes. WOOT ne nécessite pas de vecteur d'horloges et peut être déployé massivement sur un réseau P2P

    Keynote: From groupware to large-scale trustworthy distributed collaborative systems

    Get PDF
    International audienceDistributed collaborative systems allow users to collaborate on a set of shared documents from any place, at any time and from any device. Examples of collaborative systems are wikis, version control systems or GoogleDrive. While 30 years ago when these collaborative systems were firstly developed they were used in scenarios involving only a small set of users such as for the writing of a research article, nowadays we notice a change in the scale from several users to a community of users. The large-scale collaboration is now possible due to advances in mobile and ubiquitous communication that enable users to be continuously connected and to the appropriation of existing tools by the users. However, existing collaborative systems face several challenges including privacy issues as personal user information is placed in the hands of large corporations and users have little control over the usage of their data, performance and coordination issues in the large-scale context. In this talk we will illustrate the evolution of collaborative systems in the past years and describe our vision of trustworthy distributed collaborative systems where communities of users can safely and confidently collaborate without the use of a central authority. We will focus on envisaged solutions for replicated data consistency, security, trust and awareness in this context. As human factor is a key issue in the design of trustworthy distributed collaborative systems, we call for the need of evaluation of these systems with user studies
    corecore