The ABC adaptive fusion architecture

Contemporary distributed collaborative systems tend to utilize either a client-server or a pure peer-to-peer paradigm. A client-server solution may potentially spawn direct connections between the clients to offload the server thereby creating a hybrid architecture. A pure peer-to-peer paradigm may on the other hand fully eliminate the need for a server. However, some situations call for the strengths of both approaches without relying on either of them. A system might both be used in environments where an infrastructure is present and in environments where it is not. In this paper we present an architecture and early implementation of a system capable of adapting to its operating environment, choosing the best fit combination of the client-server and peer-to-peer architectures. The architecture creates a seamless integration between a centralized hybrid architecture and a decentralized architecture, relying on what we have termed Peer-to-peer Distributed Shared Objects (PDSO). The proposed solution has been implemented and early evaluation has begun. Furthermore, the approach has been utilized to create a real distributed collaborative system for collaboration in hospitals.

[1]  Fabienne Boyer,et al.  A Configurable RMI Mechanism for Sharing Distributed Java Objects , 2001, IEEE Internet Comput..

[2]  Saul Greenberg,et al.  Building real-time groupware with GroupKit, a groupware toolkit , 1996, TCHI.

[3]  Jakob E. Bardram,et al.  Activity-Based Support for Mobility and Collaboration in Ubiquitous Computing , 2004, UMICS.

[4]  Saul Greenberg,et al.  GROUPWARE TOOLKITS FOR SYNCHRONOUS WORK , 1996 .

[5]  Patrick Th. Eugster,et al.  Distributed Asynchronous Collections: Abstractions for Publish/Subscribe Interaction , 2000, ECOOP.

[6]  Vijay Karamcheti,et al.  Object views: language support for intelligent object caching in parallel and distributed computations , 1999, OOPSLA '99.

[7]  Akinori Yonezawa,et al.  Object-oriented concurrent programming in ABCL/1 , 1986, OOPSLA 1986.

[8]  Patrick Th. Eugster,et al.  On objects and events , 2001, OOPSLA '01.

[9]  David A. Smith,et al.  Croquet - a collaboration system architecture , 2003, First Conference on Creating, Connecting and Collaborating Through Computing, 2003. C5 2003. Proceedings..

[10]  Carl Gutwin,et al.  The MAUI Toolkit: Groupware Widgets for Group Awareness , 2004, Computer Supported Cooperative Work (CSCW).

[11]  Jakob E. Bardram,et al.  Support for activity-based computing in a personal computing operating system , 2006, CHI.

[12]  Ian Sommerville,et al.  Dependability properties of P2P architectures , 2002, Proceedings. Second International Conference on Peer-to-Peer Computing,.

[13]  Mark P. McCahill,et al.  Design for an extensible Croquet-based framework to deliver a persistent, unified, massively multi-user, and self-organizing virtual environment , 2004, Proceedings. Second International Conference on Creating, Connecting and Collaborating through Computing, 2004..

[14]  Akinori Yonezawa,et al.  Object-oriented concurrent programming ABCL/1 , 1986, OOPLSA '86.

[15]  Liuba Shrira,et al.  Promises: linguistic support for efficient asynchronous procedure calls in distributed systems , 1988, PLDI '88.

[16]  Atul Prakash,et al.  Providing Flexible Services for Managing Shared State in Collaborative Systems , 1997, ECSCW.

[17]  Jakob E. Bardram,et al.  Supporting Human Activities - Exploring Activity-Centered Computing , 2002, UbiComp.