Browsing by Subject "Groupware"
Now showing 1 - 2 of 2
- Results Per Page
- Sort Options
Item A component-based collaboration infrastructure(Texas A&M University, 2006-04-12) Yang, YiGroupware applications allow geographically distributed users to collaborate on shared tasks. However, it is widely recognized that groupware applications are expensive to build due to coordination services and group dynamics, neither of which is present in single-user applications. Previous collaboration transparency systems reuse existing single-user applications as a whole for collaborative work, often at the price of inflexible coordination. Previous collaboration awareness systems, on the other hand, provide reusable coordination services and multi-user widgets, but often with two weaknesses: (1) the multi-user widgets provided are special-purpose and limited in number, while no guidelines are provided for developing multi-user interface components in general; and (2) they often fail to reach the desired level of flexibility in coordination by tightly binding shared data and coordination services. In this dissertation, we propose a component-based approach to developing group- ware applications that addresses the above two problems. To address the first prob- lem, we propose a shared component model for modeling data and graphic user inter- face(GUI) components of groupware applications. As a result, the myriad of existing single-user components can be re-purposed as shared GUI or data components. An adaptation tool is developed to assist the adaptation process. To address the second problem, we propose a coordination service framework which systematically model the interaction between user, data, and coordination protocols. Due to the clean separation of data and control and the capability to dynamically "glue" them together, the framework provides reusable services such as data distribution, persistence, and adaptable consistency control. The association between data and coordination services can be dynamically changed at runtime. An Evolvable and eXtensible Environment for Collaboration (EXEC) is built to evaluate the proposed approach. In our experiments, we demonstrate two benefits of our approach: (1) a group of common groupware features adapted from existing single- user components are plugged in to extend the functionalities of the environment itself; and (2)coordination services can be dynamically attached to and detached from these shared components at different granules to support evolving collaboration needs.Item A groupware interface to a shared file system(Texas A&M University, 2005-02-17) Faltemier, Timothy CollinCurrent shared file systems (NFS and SAMBA) are based on the local area network model. To these file systems, performance is the major issue. However, as the Internet grows, so does the distance between users and the Local Area Network. With this increase in distance, the latency increases as well. This creates a problem when multiple users attempt to work in a shared environment. Traditionally, the only way to collaborate over the Internet required the use of locks. These requirements motivated the creation of the State Difference Transformation algorithm that allows users non-blocking and unconstrained interaction across the Internet on a tree based structure. Fine Grain Locking, on the other hand, allows a user the ability to set a lock on a character or range of characters while using a form of the transformation algorithm listed above. This thesis proposes an implementation that integrates these two technologies as well as demonstrating the effectiveness and flexibility of State Difference Transformation. The implementation includes two applications that can be used to further research in both the transformation and locking communities. The first application allows users to create tests for SDT and Fine Grain Locking and verify the correctness of the algorithms in any given situation. The second application then furthers this research by creating a real-world groupware interface to a shared file system based on a clientserver architecture. This implementation demonstrates the usability and robustness of these algorithms in real world situations.