| M. Knister and A. Prakash. Issues in the Design of a Toolkit for Supporting Multiple Group Editors. Computing Systems -- The Journal of the Usenix Association, 6(2):135--166, Spring 1993. |
.... transformation technology [8, 9] For group editors to be accepted by users who were customed to popular single user editor interfaces, a group editor should allow users to use their favorite single user editing interfaces, including single user undo modes, in collaborative editing sessions [3, 4]. Therefore, it is highly desirable for group editors to have group undo modes compatible with single user undo modes, thereby reducing the overhead of learning a new undo mode and improving usability, as advocated in [3] Furthermore, a single undo mode in a group editor may not satisfy multiple ....
....with guaranteed success. To gain insights into the technical reasons for functional level differences, lower level technical comparison of these three approaches is discussed in this section. In DistEdit, undo is based on operational transformation [5] but concurrency control is based on locking [4]. DistEdit transformation is based on a linear data structure HB. To undo an operation, the original operation is transposed (i.e. transformed) to the end of the HB, and then an inverse of the transformed original operation is generated and executed. The undo is successful if the original ....
M. Knister and A. Prakash:"Issues in the design of a toolkit for supporting multiple group editors," The Journal of the Usenix Association, Vol. 6, No. 2, pp. 135-166, Spring 1993.
....and modifications at the same position, but allows concurrent access to different positions. This policy may be preferred for a WYSIWIS (What You See Is What I See) text editor for synchronous collaboration, in order to prevent two users inserting characters at the same position. The DistEdit [17] collaborative editor uses a like policy. Entries in rows and columns for Modify and Read locks are as expected and are the same for all policies. Lock Lock held request M R RM I(i) D(i) M(i) R(i) M No No No No No No No R No Yes No No No No Yes RM No No No No No No Yes I(i) No No No No No No ....
Knister, M. and Prakash, A. Issues in the design of a toolkit for supporting multiple group editors. Computing Systems 6, 2 (Spring 1993), 135--166.
....CONCURRENCY CONFLICTS Management of conflicts due to concurrency is a wellresearched topic in distributed databases and parallel simulation [5,7] However, the application of concurrency control to the nuances of groupware is often neglected. While groupware researchers point to its importance [6,12,14,15,19,23], application developers typically ignore it outright, or consider concurrency control to be an issue to be remedied by some textbook approach. To set the scene, this section will review what is meant by concurrency control, and will present typical remedies to concurrency conflicts used in the ....
....region will grow and shrink as its contents are edited. MACE also allows a user to control how local changes within the locked region are displayed to others. In the SASSE text editor, non optimistic locking of regions are specified by a user s text selection operation [2] The DISTEDIT toolkit [15,22] also provides region locks on text, which is set explicitly by the user or automatically by the system (it tries to acquire the smallest possible lock on the text region being modified) What makes DISTEDIT interesting is its handling of multi operation actions that affect many regions in a ....
[Article contains additional citation context not shown here]
Knister, M. and Prakash, A. (1993) "Issues in the design of a toolkit for supporting multiple group editors." Computing Systems (The Journal of the Usenix Association), 6(2), pp. 135-166, Spring.
.... [3, 4, 11, 14, 15, 16] Locking is a standard technique in traditional distributed computing and database systems to ensure data integrity by prohibiting concurrent conflicting updates on shared data objects [1] Locking has also been applied in various group editors for consistency maintenance [2, 5, 6, 7, 8, 9, 10]. A common misconception about locking and operational transformation, however, is that they are regarded as two competing techniques for resolving the same types of inconsistency problems. Our research in consistency maintenance has led us to realize that locking and operational transformation ....
....a particular position in the document. VI. COMPARISON TO RELATED WORK A variety of locking schemes have been proposed to maintain consistency in group text editors, such as the MACE locking scheme [9] the SHREDIT locking scheme [7] the SASSE locking scheme [2] and the DISTEDIT locking scheme [6]. A sophisticated locking scheme with multiple granularity and compatibility modes is proposed in [8] Locking in all existing systems are compulsory because locking was believed to be able to resolve both generic and context specific inconsistency problems in group text editors. Our research, ....
M. Knister and A. Prakash:"Issues in the design of a toolkit for supporting multiple group editors," The Journal of the Usenix Association, Vol. 6, No. 2, pp. 135166, Spring 1993.
....in cooperative text editing systems are discussed in detail in this paper 1 Keywords: intention preservation, cooperative editing, CSCW. 1 Introduction Cooperative editing systems allow physically dispersed people to view and edit shared textual graphical multimedia documents at the same time[1, 2, 3, 4]. They are very useful facilities in the rapidly expanding area of CSCW (ComputerSupported Cooperative Work) applications. The goal of our research is to investigate, design and implement cooperative editing systems with the following characteristics: 1) Real time requirements the response to ....
....executing the following two primitive editing operations: 1. Insert[S; P ] insert string S at position P . 2. Delete[N; P ] delete N characters started from position P . It has been shown that practical text editing systems, such as vi and Emacs, can be implemented on top of these two primitives [2, 3, 7]. Criteria for verifying intention preserved effects Given an operation O associated with context CTO . Let O 0 be an operation obtained by applying an inclusion exclusion transformation to O against another operation, and CTO 0 be the context associated with O 0 . The execution of O 0 ....
M. Knister and A. Prakash:"Issues in the design of a toolkit for supporting multiple group editors," Journal of the Usenix Association, Vol.6, No.2, pp. 135-166, 1993.
.... software might allow the users to view and draw a shared graph structure [10] to edit a shared textual outline [3] to record ideas in a brainstorming meeting [9] or to hold a software design meeting [18] Cooperative editing systems are very useful and intensively used tools in the area of CSCW [4, 7, 9, 18, 12, 15]. A cooperative editing system allows multiple users to view and edit a shared document simultaneously from different sites, which are connected by a communication network. Each site typically contains user interface facilities for displaying shared documents and for generating editing operations, ....
.... systems, including turn taking protocols which allow only one user at a time to edit the shared document [7, 21] lock based protocols which lock a data object before updating it [8, 11] transaction based protocols which encapsulate a collection of editing operations into an atomic transaction [1, 6, 8, 12], and optimistic execution protocols which allow responsive execution of editing operations and repair out of order executions by performing reversible operations [10, 19, 17] or operation transformations [3, 12, 22] Many existing approaches have been successfully used in non real time or ....
[Article contains additional citation context not shown here]
M. Knister and A. Prakash:"Issues in the design of a toolkit for supporting multiple group editors," The Journal of the Usenix Association, Vol. 6, No. 2, pp. 135-166, Spring 1993.
....to differ to some degree. This backup system does not deal with the problem of automatically merging inconsistent copies, but the document backup could be used to make a manual update, if necessary. Mechanisms for managing the consistency of replicated documents exist in other group editors ( 13] [12]; the models used in these editors appear to be applicable to Calliope. 4.6.3 Block Updates Calliope uses keystroke by keystroke updating in order to maintain a WYSIWIS interface. Changes are first made locally, before being sent serially to other copies, to ensure that communication delays do ....
M. Knister and A. Prakash. Issues in the design of a toolkit for supporting multiple group editors. Computing Systems -- The Journal of the Usenix Association, 6(2):135--166, 1993.
....UARC s implementation as a large distributed object based software system on its communication performance. Specifically, it focuses on the performance and scalability of its object based data distribution mechanism; for additional information on the UARC system s tools and architecture, refer to [9, 12, 18, 19, 21, 24, 26, 27]. First the results of a series of Internet UDP experiments are presented that describe the UARC topology s end to end loss and latency characteristics. After which, the results from a series of UARC application level experiments are presented. These experiments identify the system s ....
....not scale well and is insufficient for numbers of clients as small as six when distributing a moderate rate of data. The UARC data distribution mechanism is a relatively small component in the overall UARC software system; a system that is the composition of many interrelated collaboratory tools [12, 26] developed on the NeXTSTEP platform. NeXTSTEP s Distributed Object package is a mature language level tool for creating a seamless distributed system from separate software components. The choice for using Distributed Object method invocations as UARC s communication primitive was made as a ....
Knister, M., Prakash, A. "Issues in the Design of a Toolkit for Supporting Multiple Group Editors." Computer Systems - The Journal of the Usenix Association, 6(2), pp. 135-166, Spring 1993.
.... Cooperative editing systems are very useful groupware tools in the rapidly expanding areas of CSCW (Computer Supported Cooperative Work) Ellis et al. 1991] They can be used to allow physically dispersed people to edit a shared textual document [Ellis and Gibbs 1989; McGuffin and Olson 1992; Knister and Prakash 1993; Sun et al. 1996a; Ressel et al. 1996] to draw a shared graph structure [Karsenty and Beaudouin Lafon 1993; Greenberg and Marwood 1994; Moran et al. 1995] to record ideas during a brainstorming meeting [Hymes and Olson 1992] or to hold a design meeting [Olson et al. 1992] The goal of our ....
....the string of an executed Insert operation; and an old character C o is deleted from the document state iff C o is in the deleting range of an executed Delete operation. It has been shown that practical text editing systems, such as vi and Emacs, can be implemented on top of these two primitives [Knister and Prakash 1993; Ressel et al. 1996; Valdes 1993] 9.1.3 Criteria for verifying intention preserved effects. According to the postconditions and the reversibility requirement of the inclusion and exclusion transformation functions, the execution of a transformed operation in the new context should achieve the ....
[Article contains additional citation context not shown here]
Knister, M. and Prakash, A. 1993. Issues in the design of a toolkit for supportingmultiple group editors. The Journal of the Usenix Association 6, 2, 135--166.
....of operating system kernels to incorporate IP multicast software. The topic area popularly known as groupware or computer supported cooperative work (CSCW) which includes collaborative systems for workflow management, shared whiteboard, teleconferencing, and shared editing (e.g. 4] [13], 18] is obviously related. A major difference is that these systems have not yet paid serious attention to security issues. A recent survey of the field [6] shows that only a tiny number of vendors discuss security at all or show concerns over privacy issues resulting from collaboration. The ....
M. Knister and A. Prakash. Issues in the Design of a Toolkit for Supporting Multiple Group Editors. Computing Systems, 6(2):135--166, Spring 1993.
No context found.
M. Knister and A. Prakash. Issues in the Design of a Toolkit for Supporting Multiple Group Editors. Computing Systems -- The Journal of the Usenix Association, 6(2):135--166, Spring 1993.
No context found.
# M. Knister and A. Prakash, "Issues in the Design of a Toolkit for Supporting Multiple Group Editors," Computing Systems#J. Usenix Assoc., vol. 6, no. 2, pp. 135--166, Spring 1993.
....[19] and Consul [20] provide important message ordering and consistent membership view guarantees and have been successfully used to support building of robust and replicated services. They have also been used to manage replicated state among clients in groupware systems; for example, DistEdit [21] uses ISIS as the underlying communication mechanism. However, the use of this approach is limited in groupware systems due to the inherent assumption that group members are generally available and that group membership does not frequently change. In contrast, stateful group communication method ....
M. Knister and A. Prakash, "Issues in the Design of a Toolkit for Supporting Multiple Group Editors," Computing Systems -- The Journal of the Usenix Association, vol. 6, no. 2, pp. 135-- 166, Spring 1993.
....etc. execute processes that perform operations (e.g. read, write, etc. on objects (e.g. files, printers, etc. The permissions of a principal to perform operations on system objects are called the access rights of the principal in the system. As an example, consider the DistEdit [12, 13] system. DistEdit is a toolkit for building collaborative editors using a replicated process architecture. In a collaborative editing session, each user in the collaboration has an editor process (see Figure 2) When a user edits the buffer, the DistEdit sends a copy of the command to each editor ....
M. Knister and A. Prakash. Issues in the design of a toolkit for supporting multiple group editors. Computing Systems -- The Journal of the Usenix Association, 6(2):135--166, 1993.
....of replication. Furthermore, the application writer is given mechanisms to handle concurrency control through the use of locks an issue which is typically not adequately addressed in existing toolkits. The replication approach used in DistView builds on our work on the DistEdit toolkit [9, 10], in which the underlying data objects representing editors text buffers were replicated. DistView goes further because arbitrary interfaces can also be replicated, providing not just consistent but identical displays of data in windows that are shared. Furthermore, DistView is designed to ....
M. Knister and A. Prakash. Issues in the Design of a Toolkit for Supporting Multiple Group Editors. Computing Systems -- The Journal of the Usenix Association, 6(2):135--166, Spring 1993.
....located geographically apart to share data amongst themselves and to act upon this data. This data may encompass a wide range of media and content. It may be graphical images, streams of raw data from various monitoring instruments [3] application window element state [9] files, or plain text [6, 10]. In a collaborative system there are data sources or producers of the data and data recipients or consumers of the data. The data needs to be transported from the data sources to the data recipients over existing communication infrastructures such as the Internet where data packets may be ....
M. Knister and A. Prakash. Issues in the Design of a Toolkit for Supporting Multiple Group Editors. Computing Systems -- The Journal of the Usenix Association, 6(2):135--166, Spring 1993.
....for implementing undo in groupware applications that addresses the above mentioned technical issues. The framework is quite general, being applicable to a variety of documents types, such as text, graphics, and multimedia. The proposed techniques have been successfully incorporated in DistEdit [22], a group editor toolkit, and a version of of SASSE [26, 4] a group editor. The basic ideas of our undo framework were presented in an earlier version of this paper [32] This paper makes several additional contributions. First, it includes a detailed discussion of properties that editing ....
....undo facilities are important at the interface level those that allow only users to undo only their own actions, or also those that also allow them to undo other users actions. Finally, it includes our experience in implementing and using the proposed undo facilities in the DistEdit toolkit [22]. Several groupware applications support asynchronous sharing, e.g. Quilt [14] and Prep [27] where group members work on a shared document at different times. The proposed undo techniques can be applied to these applications as well a user can make tentative changes to a section of a ....
[Article contains additional citation context not shown here]
M. Knister and A. Prakash. Issues in the design of a toolkit for supporting multiple group editors. Computing Systems -- The Journal of the Usenix Association, 6(2):135--166, Spring 1993.
....not. The second approach requires extra diligence on the part of the administrators to catalog safe scripts. Neither option provides a strong guarantee of the security of the file system. Several distributed applications use a replicated architecture in which every command is executed at each site [6, 8]. For example, DistEdit [5, 6] a collaborative editor toolkit, replicates an editor process for each user in the collaboration. User commands are sent to each editor process, to ensure the consistency of the editors buffers. Unfortunately, this also raises the possibility that, for example, if ....
....extra diligence on the part of the administrators to catalog safe scripts. Neither option provides a strong guarantee of the security of the file system. Several distributed applications use a replicated architecture in which every command is executed at each site [6, 8] For example, DistEdit [5, 6], a collaborative editor toolkit, replicates an editor process for each user in the collaboration. User commands are sent to each editor process, to ensure the consistency of the editors buffers. Unfortunately, this also raises the possibility that, for example, if one user issues a command to ....
M. Knister and A. Prakash. Issues in the design of a toolkit for supporting multiple group editors. Computing Systems, 6(2):135--166, 1993.
....allow people located geographically apart to share and act upon data amongst themselves. This data may encompass a wide range of media and content. It may be graphical images, streams of raw data from various monitoring instruments [5] application window element state [13] files, or plain text [9, 14]. In a collaborative system, there are data sources or producers of the data and data recipients or consumers of the data. The data needs to be transported from the data sources to the data recipients over existing communication infrastructures such as the Internet where data packets may be ....
M. Knister and A. Prakash. Issues in the Design of a Toolkit for Supporting Multiple Group Editors. Computing Systems -- The Journal of the Usenix Association,
....the audio stream and window event streams and evaluate its performance. 1 Introduction Computer supported cooperative work (CSCW) environments allow people located geographically apart to collaborate on a task through a shared workspace, which is usually of a textual or graphical nature [10, 14, 20]. Providing audio support that enables participants to communicate verbally about the task at hand, in addition to the textual or graphical form of communication, greatly enhances the overall quality and effectiveness of collaboration in such environments. With this in mind, we are studying ways ....
M. Knister and A. Prakash, "Issues in the Design of a Toolkit for Supporting Multiple Group Editors," Computing Systems -- The Journal of the Usenix Association, Vol. 6, No. 2, Spring 1993, pp. 135-166.
....considerations in choosing operations for building groupware systems Atul Prakash Michael J. Knister Software Systems Research Laboratory Department of Electrical Engineering and Computer Science University of Michigan, Ann Arbor, MI 48109 2122 We have implemented a toolkit, DistEdit [1, 2], for building group text editors. We found that the selection of appropriate editing primitives is much more important in group editors than in single user editors. Furthermore, the design of group editors requires a much better understanding of the semantics of editing operations than in the ....
....for providing powerful functionality at the user level. Semantics of Primitive Operations In group editors, knowing the semantics of primitive operations is more crucial than in single user editors for several reasons: 1. Implementing undo [3] and handling concurrency in a group environment [2]. 2. Selective replay: semantics of operations that indicate the part of the document they affect, who did them, etc. may help in developing smart algorithms for replaying group sessions for users who joint late. 3. Support for transactions: application may need to indicate when a set of primitive ....
[Article contains additional citation context not shown here]
Knister, M. and Prakash, A. Issues in the Design of a Toolkit for Supporting Multiple Group Editors, to appear in Computing Systems, Journal of the USENIX association.
....as well as means to make the protocol adapt to varying network conditions. 1 Introduction Computer supported cooperative work (CSCW) environments allow people located geographically apart to collaborate on a task through a shared workspace, which is usually of a textual or graphical nature [15, 10, 11]. Providing audio support in such environments, that enables participants to communicate verbally about the task at hand, in addition to the textual or graphical form of communication, greatly enhances the overall quality and effectiveness of the collaboration. With this in mind, we are studying ....
M. Knister and A. Prakash, "Issues in the Design of a Toolkit for Supporting Multiple Group Editors," Computing Systems -- The Journal of the Usenix Association, Vol. 6, No. 2, Spring 1993, pp. 135-166.
....a framework for implementing undo in groupware applications that addresses the above mentioned technical issues. The framework is quite general, being applicable to a variety of documents types, such as text, graphics, and multimedia. The proposed techniques have been incorporated into DistEdit [21, 22], a group text editor toolkit, and into a version of SASSE [5] a group editor. The basic ideas of our undo framework were presented in an earlier version of this paper [32] This paper makes several additional contributions. First, it includes a detailed discussion of properties that editing ....
....functions are usually needed anyway to ensure predictable results when parallel streams of activities are going on. For instance, if two users are working simultaneously in a document, dependence checking may involve making sure that their changes do not overlap, e.g. through the use of locks [22]. Mechanisms for reordering two parallel, independent operations are also needed because the order in which the two operations will be executed may be unpredictable [10] The editor must be prepared to accept the two operations in either order with the same resulting effect. The functions that the ....
[Article contains additional citation context not shown here]
M. Knister and A. Prakash. Issues in the design of a toolkit for supporting multiple group editors. Computing Systems -- The Journal of the Usenix Association, 6(2):135--166, Spring 1993.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC