23
1 SAM 2004 Ottawa ICT Convergence: Modeling issues SAM 2004 Ottawa Rolv Bræk, Jacqueline Floch NTNU, SINTEF

ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

  • Upload
    others

  • View
    18

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

1SAM 2004 Ottawa

ICT Convergence: Modeling issues

SAM 2004 Ottawa

Rolv Bræk, Jacqueline FlochNTNU, SINTEF

Rolv Bræk, Jacqueline FlochNTNU, SINTEF

Page 2: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

2SAM 2004 Ottawa

The Question

Is it possible to identify fundamental properties of services we may use to determine the right/best service architectures, delivery platforms and service engineering methods?

Is it possible to identify fundamental properties of services we may use to determine the right/best service architectures, delivery platforms and service engineering methods?

... are the differences between approaches of the computing domain and the telecom domain just accidental or well justified?

... are the differences between approaches of the computing domain and the telecom domain just accidental or well justified?

Page 3: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

3SAM 2004 Ottawa

Shaping forces

Computing domainTelecom domain(real time domain)

Telecom applications Computing applications

Computing platformsTelecom platforms

Page 4: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

4SAM 2004 Ottawa

The computing domain

Information processing by means of data and algorithms (or objects and methods). Encapsulating data in objects and introducing classes with inheritance does not fundamentally change this.

Communication by invocation.The calling entity is blocked until control is returned from the called entity.

Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate.

Concurrency as add-on.

Information processing by means of data and algorithms (or objects and methods). Encapsulating data in objects and introducing classes with inheritance does not fundamentally change this.

Communication by invocation.The calling entity is blocked until control is returned from the called entity.

Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate.

Concurrency as add-on.

Page 5: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

5SAM 2004 Ottawa

The telecommunication (RT) domain

Active objects with concurrent behavior. Real objects, like users, behave concurrently and need to interact and to be served concurrently.

Communication by signaling.Active objects need explicit communication mechanisms such as signal sending, or messaging to interact.

Symmetrical or peer-to-peer interactions.Objects need to communicate on an equal basis, with few restrictions. Initiatives may be taken independently and simultaneously and lead to conflicts that must be resolved.

Active objects with concurrent behavior. Real objects, like users, behave concurrently and need to interact and to be served concurrently.

Communication by signaling.Active objects need explicit communication mechanisms such as signal sending, or messaging to interact.

Symmetrical or peer-to-peer interactions.Objects need to communicate on an equal basis, with few restrictions. Initiatives may be taken independently and simultaneously and lead to conflicts that must be resolved.

Page 6: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

6SAM 2004 Ottawa

Two kinds of functionality:

Client-server (computing domain)One-way initiativesA service as an interfaceCommunication by invocationRestricted structure Passive objects

Client-server (computing domain)One-way initiativesA service as an interfaceCommunication by invocationRestricted structure Passive objects

Peer-to-peer (telecom and real-time)

Multi-way initiativesA service as a collaborationAsynchronous communicationGeneral structureActive objects

Peer-to-peer (telecom and real-time)

Multi-way initiativesA service as a collaborationAsynchronous communicationGeneral structureActive objects

... now meeting each other

Page 7: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

7SAM 2004 Ottawa

Two modeling approaches

Computing domain:Passive objectsAssociationsOne-way interfaces and operationsClient-server with one-way initiativesCommunication by invocation

Three-like structure

Computing domain:Passive objectsAssociationsOne-way interfaces and operationsClient-server with one-way initiativesCommunication by invocation

Three-like structure

Telecom domain:Active objectsChannelsTwo-way interfaces and protocolsPeer-to-peer with multi-way initiativesAsynchronous communication by messagingGeneral network structure

Telecom domain:Active objectsChannelsTwo-way interfaces and protocolsPeer-to-peer with multi-way initiativesAsynchronous communication by messagingGeneral network structure

Page 8: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

8SAM 2004 Ottawa

Two design approaches

Server oriented approachOne interface - one service - multiple usersClass-operation focus

Server oriented approachOne interface - one service - multiple usersClass-operation focus

Agent oriented approachOne interface - one user -multiple services (as roles)Object-interaction focus

Agent oriented approachOne interface - one user -multiple services (as roles)Object-interaction focus

Page 9: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

9SAM 2004 Ottawa

Convergence

C-S modelsP-P models

C-S applicationsP-P applications

P-P platforms C-S platforms

Page 10: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

10SAM 2004 Ottawa

We believe the most general approach is

Peer-to-peer with active objects and asynchronous communication by messaging,

because:It reflects real world domain and distributed platform issuesIt can support both peer-to-peer and client-server structures without restrictions It supports distribution transparency in a simple way and uses the basic mechanism for information transfer over networksIt should therefore be at the core

Peer-to-peer with active objects and asynchronous communication by messaging,

because:It reflects real world domain and distributed platform issuesIt can support both peer-to-peer and client-server structures without restrictions It supports distribution transparency in a simple way and uses the basic mechanism for information transfer over networksIt should therefore be at the core

Page 11: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

11SAM 2004 Ottawa

…combined with synchronous communication by invocation

For programming within a single address space and thread of computing (Active object).When necessary to interface with legacy systems and APIs. When convenient for application programming. When speed can be gained (but remote interactions are bound to be slower)

For programming within a single address space and thread of computing (Active object).When necessary to interface with legacy systems and APIs. When convenient for application programming. When speed can be gained (but remote interactions are bound to be slower)

How, then, can invocation and messaging be combined?How, then, can invocation and messaging be combined?

Page 12: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

12SAM 2004 Ottawa

The SDL solution

remoteprocedure call

transform

messagesadd state add input

remoteprocedure call

transform

messagesadd state add input

remoteprocedure call

transform

messagesadd state add input

remoteprocedure call

transform

messagesadd state add input

Page 13: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

13SAM 2004 Ottawa

Active-active invocation

invocationa) Direct invocation

{sequential, guarded, concurrent}

messaging

translate

b) ”Invocation” by messaging

add inputadd state

Page 14: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

14SAM 2004 Ottawa

Active-passive invocation

invocation invocation

a) Direct invocation

{sequential, guarded, concurrent}

invocation invocationedge

messaging

translate

b) Edge mediated

add state

Page 15: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

15SAM 2004 Ottawa

Passive-active invocation

invocationa) Direct invocation

{sequential, guarded, concurrent}

invocation edge messaging

translate

b) Edge mediated

add input

Page 16: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

16SAM 2004 Ottawa

Core invocation considerations

Concurrency: are the parties concurrent or not?Initiative patterns: one-way or two-way?Communication structure: three-like or networked?Blocking delays: are they acceptable?Synchronisation delays: are they acceptable?

Suitable for:One logical thread of behaviourOne-way initiativesThree-like structure

Concurrency: are the parties concurrent or not?Initiative patterns: one-way or two-way?Communication structure: three-like or networked?Blocking delays: are they acceptable?Synchronisation delays: are they acceptable?

Suitable for:One logical thread of behaviourOne-way initiativesThree-like structure

Page 17: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

17SAM 2004 Ottawa

AMIGOS – meeting people Calls, Chat,Multimedia conferences,Location awareness,Buddy listsSharing objects

e.g.:work-teams, classrooms, friends,...

Meeting place

AMIGOS Basic Buddy List

My Buddies

Per

Ola Pål

MeCallCalendarRelationsOther

zoom

Call setup

Cancel

Calling Ola

Page 18: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

18SAM 2004 Ottawa

Amigos: a mixed approach

Manage stateful behaviours and collaborations

Associate profiles with agents

TerminalAgent

UserAgent

MeetingPlaceAgent

CallAgent

TerminalAgent

UserAgent

MeetingPlaceAgent

CallAgent

UserProfilesBuddyListsMaps

Page 19: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

19SAM 2004 Ottawa

Environment and edges

TerminalAgent

UserAgent

MeetingPlaceAgent

CallAgent

TerminalAgent

UserAgent

MeetingPlaceAgent

CallAgent

Page 20: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

20SAM 2004 Ottawa

ActorFrame: towards a convergent framework

Functionality models usingRole and Actor modeling (RAM)

PIM’

P-P + C-S P-P + C-S

Asynchronous networks

ActorFrameMIDP, JMS, RMI, J2EE: JMS, WS, EJB, RMI, ...

EJB - ActorFrame

Application serversTerminals, appliances

Page 21: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

21SAM 2004 Ottawa

RAM – Service and Actor ModellingRole

behavioursCollaborations,

sequences

Application: PIM

Adaptation:PIM’

Agents ActorsSystem

PIM’

Services

Page 22: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

22SAM 2004 Ottawa

RAM – implementation and deployment

System Agents Actors

Application: PIM

Adaptation:PIM’

edgeedge

UML Actor ModelsPIM’

Java + XML

Dynamic deployment

Java Frameworks

Page 23: ICT Convergence: Modeling issues...Asymmetrical, or client-server interactions. Asymmetrical request-response types of communication dominate. Concurrency as add-on. Information processing

23SAM 2004 Ottawa

Conclusions

Yes, there are fundamental domain properties that shape applications and platformsAsynchronous communication at the application level needed as basisWith invocation based communication as supplementWill application programmers accept it?Can they awoid it?Mixed modelling using UML is possible, with careAn architectural framework helps Dynamic composition becoming more important

Yes, there are fundamental domain properties that shape applications and platformsAsynchronous communication at the application level needed as basisWith invocation based communication as supplementWill application programmers accept it?Can they awoid it?Mixed modelling using UML is possible, with careAn architectural framework helps Dynamic composition becoming more important