Implementing the Coupled Objects Paradigm for Synchronizing Distributed Applications Through Firewalls

Middleware for supporting the programming of distributed systems has been proposed since the beginnings of Internet. Various approaches have been implemented to support different ways of communication, architecture, and data sharing. A schema called MatchMaker intended for developing applications requiring a replicated architecture, dynamic and partial synchronization is introduced. Two implementations of MatchMaker are presented: one based on Java RMI distributed objects for synchronizing applications running inside a local area network or networks without proxies, firewalls or NAT addresses, and the other one for applications in a restrictive environment. MatchMaker has been successfully used for developing many applications supporting collaborative distributed learning.

[1]  Jörg Roth,et al.  An extensible classification model for distribution architectures of synchronous groupware , 2000, COOP.

[2]  Stephan Lukosch Transparent Latecomer Support for Synchronous Groupware , 2003, CRIWG.

[3]  Luis A. Guerrero,et al.  A pattern system for the development of collaborative applications , 2001, Inf. Softw. Technol..

[4]  Jesus Favela,et al.  Groupware: Design, Implementation, and Use , 2003, Lecture Notes in Computer Science.

[5]  John F. Patterson,et al.  A taxonomy of architectures for synchronous groupware applications , 1995, SIGO.

[6]  Sun Microsystems,et al.  RPC: Remote Procedure Call Protocol specification: Version 2 , 1988, RFC.

[7]  H. U. Hoppe,et al.  Collaborative Modeling in Group Learning Environments , 2002 .

[8]  Keith Duddy,et al.  Java programming with CORBA (2nd ed.) , 1998 .

[9]  Feniosky Peña-Mora,et al.  Robust Mobile Ad Hoc Space for Collaboration to Support Disaster Relief Efforts Involving Critical Physical Infrastructure , 2006 .

[10]  Prasun Dewan,et al.  A high-level and flexible framework for implementing multiuser user interfaces , 1992, TOIS.

[11]  Marc Jansen,et al.  MatchMaker - A Framework to Support Collaborative Java Applications , 2003 .

[12]  Andreas Vogel,et al.  Java Programming with CORBA , 1997 .

[13]  Tore Urnes,et al.  Tools for Implementing Groupware: Survey and Evaluation , 1994 .

[14]  Atul Prakash,et al.  Concurrency Control and View Notification Algorithms for Collaborative Replicated Objects , 1998, IEEE Trans. Computers.

[15]  Ulrich Hoppe,et al.  Collaborative Writing in a Computer-integrated Classroom for Early Learning , 2001 .

[16]  Prasun Dewan Multiuser architectures , 1995, EHCI.

[17]  Stephan Lukosch Adaptive and Transparent Data Distribution Support for Synchronous Groupware , 2002, CRIWG.

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

[19]  Steven L. Rohall,et al.  The Rendezvous architecture and language for constructing multiuser applications , 1994, TCHI.