View
223
Download
0
Tags:
Embed Size (px)
Citation preview
ABCSG - Collaboration - 23/02/2006ABCSG - Collaboration - 23/02/2006 11
ABCSGABCSG
CollaborationCollaboration
ABCSG - Collaboration - 23/02/2006ABCSG - Collaboration - 23/02/2006 22
TermsTerms
SynchronousSynchronous• Same time, same or different placesSame time, same or different places
AsynchronousAsynchronous• Different times, same or different placesDifferent times, same or different places
Disconnected Disconnected • Same time, different places and no connectionSame time, different places and no connection
CentralizedCentralized• Is executed in a controlled environmentIs executed in a controlled environment
Ad-hocAd-hoc• Is carried out anywhereIs carried out anywhere
ABCSG - Collaboration - 23/02/2006ABCSG - Collaboration - 23/02/2006 33
TechnologiesTechnologies
ServerServer• Clients connect through a shared resourceClients connect through a shared resource
P2PP2P• Clients connect directly to each otherClients connect directly to each other
Shared objectsShared objects• Resides on a single hostResides on a single host
Distributed objectsDistributed objects• Resides on multiple hostsResides on multiple hosts
ABCSG - Collaboration - 23/02/2006ABCSG - Collaboration - 23/02/2006 44
Technical issues to think about…Technical issues to think about…
Shared objectsShared objects Concurrency controlConcurrency control Late joiningLate joining SecuritySecurity MembershipMembership InvitationsInvitations Synchronous collaborationSynchronous collaboration Asynchronous collaborationAsynchronous collaboration Disconnected collaborationDisconnected collaboration Failure detection / handling / repairingFailure detection / handling / repairing Discovery serviceDiscovery service ScalabilityScalability
ABCSG - Collaboration - 23/02/2006ABCSG - Collaboration - 23/02/2006 55
ApplicationsApplications
CVSCVS• Asynchronous collaborationAsynchronous collaboration• (Synchronous collaboration)(Synchronous collaboration)
CoWordCoWord• Synchronous collaborative writingSynchronous collaborative writing• http://reduce.qpsf.edu.au/coword/index.htmlhttp://reduce.qpsf.edu.au/coword/index.html
SubEthaEditSubEthaEdit• Synchronous collaborative writing for macSynchronous collaborative writing for mac• http://www.codingmonkeys.de/subethaedit/http://www.codingmonkeys.de/subethaedit/
ABCSG - Collaboration - 23/02/2006ABCSG - Collaboration - 23/02/2006 66
ApplicationsApplications
SpeakeasySpeakeasy• Ad hoc collaborative frameworkAd hoc collaborative framework• Used by the Casca applicationUsed by the Casca application• Shared converspaces for collaborationShared converspaces for collaboration• Allows the sharing of resources (printer/cam/etc.)Allows the sharing of resources (printer/cam/etc.)• Includes several widgets for collaborationIncludes several widgets for collaboration
ABCSG - Collaboration - 23/02/2006ABCSG - Collaboration - 23/02/2006 77
ApplicationsApplications
Croquet Croquet 3D collaborative environment3D collaborative environment P2P, but with a joining serverP2P, but with a joining server http://www.opencroquet.org/http://www.opencroquet.org/
ABCSG - Collaboration - 23/02/2006ABCSG - Collaboration - 23/02/2006 88
ApplicationsApplications
ABCABC• Synchronous / asynchronous / (disconnected)Synchronous / asynchronous / (disconnected)• Central / P2PCentral / P2P
ABCSG - Collaboration - 23/02/2006ABCSG - Collaboration - 23/02/2006 99
What are we doing now?What are we doing now?
Enabling ABC to supportEnabling ABC to support• Central collaboration using a server and P2PCentral collaboration using a server and P2P• Ad hoc collaboration using DOLCLANAd hoc collaboration using DOLCLAN• Hybrid collaborationHybrid collaboration
Distributed Application
Peer 1 Peer 2 Peer 3
Distributed Model
Application Logic Application Logic Application Logic
ObjectObject
Object Object
Object
Object
P2P
CENTRALIZED
ABCSG - Collaboration - 23/02/2006ABCSG - Collaboration - 23/02/2006 1010
Things to discuss…Things to discuss…
What do a collaborative system need?What do a collaborative system need? How do you evaluate them?How do you evaluate them? Functional requirements?Functional requirements? Nonfunctional requirements?Nonfunctional requirements? Awareness widgets?Awareness widgets? OS / Data / Application integration?OS / Data / Application integration?