abc - ad-hoc collaboration - 24/03/2006 1 abc ad-hoc collaboration

Post on 15-Jan-2016

223 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 11

ABCABC

Ad-hoc collaborationAd-hoc collaboration

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 22

AgendaAgenda

Activity Based Computing (short)Activity Based Computing (short)• What is ABC?What is ABC?

The current hybrid architectureThe current hybrid architecture• Current architectureCurrent architecture• Pros. et. cons.Pros. et. cons.

P2P infrastructure based on DOLCLANP2P infrastructure based on DOLCLAN• Peer-to-peer Distributed Shared ObjectsPeer-to-peer Distributed Shared Objects

Ad-hoc ABC collaborationAd-hoc ABC collaboration• StatusStatus

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 33

Activity Based ComputingActivity Based Computing

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 44

Activity Based ComputingActivity Based Computing

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 55

Activity Based ComputingActivity Based Computing

Activity-basedActivity-based Collection of related servicesCollection of related services Many concurrent activitiesMany concurrent activities

Session migrationSession migration The user’s session is distributed across the hospitalThe user’s session is distributed across the hospital Suspend – Resume Suspend – Resume Heterogeneous devices Heterogeneous devices

CollaborationCollaboration Shared activity (‘tele-conference’) (different places)Shared activity (‘tele-conference’) (different places) Synchronous (same time) + Asynchronous (different time)Synchronous (same time) + Asynchronous (different time) Ad-hoc (Any place, but synchronous)Ad-hoc (Any place, but synchronous)

Context AwarenessContext Awareness The computer adapts itself to the user’s context (PACS)The computer adapts itself to the user’s context (PACS)

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 66

The current architectureThe current architecture

Client-ServerClient-Server Easy to createEasy to create PerformancePerformance ScalabilityScalability

Hybrid architectureHybrid architecture AccountableAccountable EphemeralEphemeral

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 77

Hybrid architectureHybrid architecture

ProsPros Concurrency controlConcurrency control Late joiningLate joining SecuritySecurity MembershipMembership InvitationsInvitations Synchronous collaborationSynchronous collaboration Asynchronous collaborationAsynchronous collaboration Failure detection / handling / repairingFailure detection / handling / repairing Discovery serviceDiscovery service

ConsCons Disconnected collaborationDisconnected collaboration Ad-hoc collaboration (Anywhere)Ad-hoc collaboration (Anywhere)

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 88

ShortcomingsShortcomings

Ad-hoc collaborationAd-hoc collaboration No infrastructureNo infrastructure Collaboration anywhereCollaboration anywhere Disconnected collaborationDisconnected collaboration

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 99

P2P infrastructure - DOLCLANP2P infrastructure - DOLCLAN

Distributed Objects in Loose Coupled Distributed Objects in Loose Coupled Local Area NetworksLocal Area Networks

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 1010

PDSO and groupsPDSO and groups

Peer-to-peer Distributed Shared ObjectsPeer-to-peer Distributed Shared Objects OIDOID PDSOPDSO GroupGroup

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 1111

Model View ControllerModel View Controller

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 1212

SyntaxSyntax

public distributed class DistributedPoint {

//A distributed Pointprivate distributed ephemeral int x;private distributed ephemeral int y;...

}

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 1313

SyntaxSyntaxpublic distributed class DistributedPoint : Observable {

//A distributed x positionprivate int x;public distributed ephemeral int X{

get { return this.x; }set {

this.x = value;//Notify observersthis.stateChanged();

}}

//A distributed y position...

}

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 1414

SyntaxSyntax

public void start(){OID[] oids = EaterModel.getOIDs();if (oids.Length > 0){

model = join EaterModel(oids[0]);} else {

model = new EaterModel("MyGame",10);}...

}

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 1515

SyntaxSyntax

public distributed class DistributedStone : Observable {...public void merge(object netState){//Cast the object to a DistributedStoneDistributedStone netStone = (DistributedStone)netState;

//The position never change, so thats up to date

//Figure out if the stone has been eaten either offline or onlinethis.Eaten = (this.Eaten || netStone.Eaten);}

}

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 1616

An exampleAn example

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 1717

Current statusCurrent status

ABC supportABC support Collaboration using a server and P2PCollaboration using a server and P2P Ad hoc collaboration using DOLCLANAd hoc collaboration using DOLCLAN Hybrid collaborationHybrid collaboration P2P

CENTRALIZED

ABC - Ad-hoc collaboration - 24/03/2006ABC - Ad-hoc collaboration - 24/03/2006 1818

Current statusCurrent status

top related