69
06/24/22 Plug and Play (PaP) for N etwork and Tele-Services 1 Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level C o n ce p ts a n d A rch itectu re Java Im plem e ntatio n M odel U se r's g u id e o n h o w to u s e T o pics for fu rthe r w o rk P aP S up po rt S yste m "T e le-S ch o o l", a T e le b a se d le a rn in g ce n tre "W a tch e r", a P aP S u pp ort A ctivity M on itor "P aP S up po rt T e sts", a to o lfo r a u to m a tic te stin g o f th e P aP Support A pplication s F le xib ility in u se o f th e d istrib u te d a rch ite ctu re D ifferen t ve rsions of P la ys D ynam ic ch a n g e of be ha vio ur fo r e xistin g a cto rs U se o f a cto r cap ab ilitie s D em o n stra tio n E xam ples P lu g a n d P la y (P aP ) for N etw o rk a nd T ele-S ervice s Page 44 Page 2 Page 62

Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

  • Upload
    stash

  • View
    53

  • Download
    0

Embed Size (px)

DESCRIPTION

Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level. Page 2. Page 44. Page 62. Start of “PaP Support” documentation. PaP Support System Documentation Survey (1 of 5), Overview. Page 8. Page 19. Page 31. Page 43. - PowerPoint PPT Presentation

Citation preview

Page 1: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

1

Plug and Play (PaP) for Network and Tele-ServicesDocumentation Survey, Top Level

Concepts and A rchitecture

Java Im plem entation M ode l

User's guide on how to us e

T opics for further work

PaP S upport System

"T ele-School", a Tele based learning centre

"W atcher" , a PaP Support Activity M onitor

"PaP Support Tests" , a tool for autom atic testing of the PaP Support

Applic ation s

F lexibility in use of the distribu ted architecture

Different vers ions of P lay s

Dynam ic change of behav iour fo r existing ac tors

Use of acto r capabilit ie s

Dem onstration Exam ple s

P lug and P lay (P aP) for Network a nd T ele-Service s

Page 44

Page 2

Page 62

Page 2: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

2

Start of “PaP Support” documentation

Page 3: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

3

PaP Support SystemDocumentation Survey (1 of 5), Overview

C o n ce p ts a nd A rch itec tu re

Ja va Im p le m e n ta tion M o d e l

U se r's g u id e o n ho w to u se

T o p ics fo r fu rthe r w o rk

P a P S up p ort S ys tem

Page 8

Page 19

Page 31

Page 43

Page 4: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

4

PaP Support System Documentation Survey (2 of 5), Concepts and Architecture

T h e Th e atre M o d e l

P a P S up p ort Fu n ctio ns

T h e laye red D e sig n M o d e l

C o n ce p ts a nd A rch itec tu re

Page 5: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

5

PaP Support System Documentation Survey (3 of 5), Java Implementation Model

Java Term s used in P aP im plem entatio n

The S ynchronous co m m unication m ode l

Address ing and rou ting value s

Entity registry

Installat ion, sta rt-up and exe cution scenario

T he D istribute d PaP Solution

Java C lasses in re lation to the Layered M ode l

Java In terfaces in relation to the Layered M ode l

Java O bjects in relat ion to the Layered M ode l

Java T hreads/VM s in relation to th e Layered M ode l

Im plem entation of the Layered M ode l

Java Im plem entation M ode l

Page 6: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

6

PaP Support System Documentation Survey (4 of 5), User’s guide on how to use

F ile ca ta lo g u e s truc tu re a n d files

T h e c o n te n t o f a ro le d e f in it io n c la ss file

T h e co nte n t o f th e op tion a l ro le s u pp o rt c la ss file

D e ve lo pm e nt o f P a P a p p lic a tio ns

O ve rv iew

P a P C on fig ura t io n a t P a P S e rve r no d es

S ta rt-u p o f a pp lica t io ns

A c om p le te e xam p le

In s ta lla tio n , con f igu ra tio n a n d e xe c utio n o f ap p lic a tio ns

D e b u g S erve r a n d D e bu g C lie n ts

D e b ug O p e ra to r co m m a nd s fo r d iffe re n t e n tity typ es

T h e P a P S u p p o rt s yste m d e bu g an d tra ce fa cilit ies

U se r's g u id e o n ho w to u se

Page 7: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

7

PaP Support System Documentation Survey (5 of 5), Topics for further work

A p p lic a tio n de v e lo pm e nt "m e th od o lo g y"

In c lu s ion o f re lia b ility a n d se c u rity

A s ync h ro u no u s P a P S up p ort m o d e l

S p e cific im p lem e n ta tio n p rob le m s to so lve

T o p ics fo r fu rthe r w o rk

Page 8: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

8

Concepts and ArchitectureThe Theatre Model

Play

Repertoire

Actor

Director

Actors

Manuscript

Theatre

Role session

Supervise

Role

Repertoire: Total set of ‘Plays’ available.

Play: A defined “autonomous” functionality.

Role: Partial behaviour of a ‘Play’.

Actor: “Generic” performing active entity. Behaves according to its assigned ‘Role’. Has ‘Capabilities’.

Manuscript: The implementation of a ‘Role’ behaviour assigned to an ‘Actor’ when defining its behaviour.

Capability: Inherent properties of an actor.

Role session: Projection of behaviour of an ‘Actor’, in relation to one of its interacting actors.

Director: ‘Repertoire’ and ‘Actor’ manager. A guide to actors in plug-in/plug-out phases.

Capabilities

Page 9: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

9

Concepts and ArchitecturePaP Support Functions (1 of 6)

The set of PaP specific operation types that may be used by the active entities (i.e. the actors) within the PaP context. The operation types are grouped according to:– Managing the availability of application functionality (i.e. the

plays)– Managing the existence of active entities in operational systems

(i.e. the actors)– Dynamic redefinition of actor behaviour (i.e. roles)– Interactions between actors, actors capability change, and

monitoring PaP activities

Detailed description of functions and parameters is given in the implementation

Page 10: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

10

Concepts and ArchitecturePaP Support Functions (2 of 6)

Managing the availability of application functionality• PlayPlugIn(PlayId, PlayVer, PlayLoc)

Play definition with specified identifier (PlayId) and version (PlayVer) to be installed at a Director, and to become known to actors. The play definition exists at the specified web-location (PlayLoc). The Director to install at is defined by the “HomeInterface” for the actor performing the request.

• PlayChangesPlugIn(PlayId, PlayVer, PlayLoc)Replace the existing play version with a new version. The location where the play definition is found may be another location than where the original version was located.

• PlayPlugOut(PlayId, PlayVer)Remove from director specified play definition, or a specified version of the play.

Page 11: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

11

Concepts and ArchitecturePaP Support Functions (3 of 6)

Managing the existence of active entities in operational systems• ActorPlugIn(Location, RoleName, RoleSessionName,

RequiredCapabilities, RequestedCapabilities, RequiredQoS, RequestedQoS, Visibility, SelectStrategy)

(NOTE: Parameters RoleSessionName, RequestedCapabilities, RequiredQoS, RequestedQoS, Visibility and SelectStrategy are not implemented)

Request the establishment of a role session to another actor according to the conditions specified by all parameters. The request may result in the creation of a new actor if no existing actor is able to satisfy the required conditions.

• ActorPlugOut(RoleSessionId)Request to remove an already existing role session. Internal conditions related to the involved actors may cause the termination of one or both of them.

• ActorPlay() (NOTE: Not implemented, assumed implicit at ActorPlugIn)

Start behaving according to assigned manuscript.

Page 12: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

12

Concepts and ArchitecturePaP Support Functions (4 of 6)

Dynamic redefinition of actor behaviour• ActorBehaviourPlugIn(RoleName)

Define behaviour for an existing actor which only has a generic PaP behaviour assigned.

• ActorChangeBehaviour(NewRoleName)Request the change of behaviour for an existing actor. The actor may retain some or all of its existing internal and external state information, depending on defined relations between the previous role played and the new role to be played.

• ActorBehaviourPlugOut()Remove the defined behaviour for an actor. The generic PaP behaviour remains.

Page 13: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

13

Concepts and ArchitecturePaP Support Functions (5 of 6)

Interactions between actors, actors capability change, and monitoring PaP activities

• RoleSessionAction(RoleSessionId, MsgType, MsgParameters)Communicate specified message and additional parameters on the specified role session.

• ChangeActorCapabilities(ChangeType, CapabilitySet)Specify change (Set, Add or Remove) of the current capability set for actor. Each actor controls its own capabilities from its performing manuscript.

• SubscribeRequest(EventType, Scope, ApplicationTypes, WhenReport)Subscribe for specified event types to occur. EventType is related to PaP support or user defined functions to include, Scope specifies the set of actors to include, ApplicationTypes specified set of entity types to include, and WhenReport specified when or how often to report. ‘SubscribeCancel’ cancels a request, and ‘SubscribeReport’ is the reporting of occurred events sent to subscribing actor.

Page 14: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

14

Concepts and ArchitecturePaP Support Functions (6 of 6)

Example scenario

Node 1 Web-server

Network

Node 2 Web-server

Node 5 PaP-server

Node 4 PaP-server

Node 3 PaP-server

Plays

Generic platform

Director

Actors

Actors

‘Plug-in’ of ‘Plays’ and ‘Actors’ when and where they are needed.

1. ‘PlayPlugIn(playId, loc)’ to make plays available for ‘Director’.1a) Initiate request to Director, 1b) Load Director SW if needed, 1c) Load Play to Dir.

2. ‘ActorPlugIn([location], role, [capabilities]) to allocate active entity to perform functionality.2a) Initiate request to Director, 2b) Initiate actor to plug in, 2c) Load actor SW if needed.

3. ‘RoleSessionAction(actor, message) to make actors able to co-operate.3) RoleSessionAction requests between actors.

1c

1a2a

2b

31b

2c

Page 15: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

15

Concepts and ArchitectureThe Layered Design model - Architecture (1 of 4)

PaP Director(actors)

PaP Node Communication Infrastructure (PNCI)

PaP applications(actors)

Non PaP applications

PaP ExtendedManagement (PXM)

PaP Actor Support (PAS)

Node InfrastructureLayer

Non PaP applicationsinterfaced to PaP appl.

PaP specificapplications

PaP Extensions

PaP BasicSupport

PaP

spec

ific

Laye

rs

App

licat

ions

PaP ExtendedSupport (PXS)

PaP Node Execution Support (PNES)

Page 16: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

16

Concepts and ArchitectureThe Layered Design model - Module description (2 of 4)

• PaP Node Communication Infrastructure (PNCI)Using Java/RMI and ‘rmiregistry’ for communication between nodes.

• PaP Node Execution Support (PNES)Makes it possible to run PaP at a node. Routing to/from other nodes and PASs.

• PaP Actor Support (PAS)Makes it possible to create and execute actors within the context of an operating system process. Additional functionality is routing between actors and PNES. Each PAS instance is a separate Java Virtual Machine (JVM) instance.

• PaP DirectorResponsible for management of plays, manuscripts and actors for its own PaP domain. Interacts with application actors.

Page 17: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

17

Concepts and ArchitectureThe Layered Design model - Module description (3 of 4)

• PaP Extended Management (PXM) (NOTE: Neither specified, nor implemented)

Support of extended services not required for PaP support functionality, but to satisfy specified operational properties and requirements.

• PaP Extended Support (PXS) (NOTE: Neither specified, nor implemented) Required for the applications ability to utilise PXM functionality.

• PaP ApplicationsThe collection of application actors. Instances created/removed by using ActorPlugIn/ActorPlugOut support functions. Interfaces to PAS.

• Non PaP applicationsFunctionality not defined according to Application actor requirements, but are allowed to communicate with actors, and to utilise the PaP Support functionality.

Page 18: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

18

Concepts and ArchitectureThe Layered Design model - Operating PaP System Example (4 of 4)

Node 1 (PaP Server) Node 4 (PaP Server)

pas1 pas1

Node 3 (Web-server)Node 2 (PaP Server)

pas1pas2

a1 a2

PAS

a3

PAS

PNESOpsys/network (PNCI)

d1

PAS

PNESOpsys/network (PNCI)

pas2

a4

PAS

d2

PAS

PNESOpsys/network (PNCI)

web-serverOpsys/network

Communication networkLegend:a1 - a4: actor1 - actor4d1, d2: director1, director2B: PaP "bootstrap"

Genericsupport

Plays

B B B

Legend:Static available

Dynamic available

Page 19: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

19

The Java Implementation ModelJava Terms used in PaP implementation

• ClassesUsed for implementation of all functionality, and also used for grouping of logically related information. Inheritance (‘extent’) is used for specialisation of generalised classes.

• InterfacesUsed to gain access to same object instances from different objects. Defines the interfaces between objects and their environments.

• ObjectsObjects are the instances of classes that defines the executable system.

• ThreadsUsed to separate different activities operating either independent of each other, or activities loosely couplet to each other.

• Java RMIUsed as a common basis for communication between objects located within different Java Virtual Machines (JVM). The ‘rmiregistry’ is used for registration and identification of adressable entities of types PNES and PAS.

Page 20: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

20

The Distributed PaP SolutionThe Synchronous communication model

PAS and Actor(s)

PNES

PAS and Director(s)and Actor(s)

PNES

PAS and Actor(s)

Act

PAS

PNES

PNES

PAS

Act

Legend:Single node

Java Virtual Machine

Java Object instance (JO)

JO communication using “local method” calls

JO communication using “remote method” calls

Queing of “RoleSessionAction” and “SubscribeReport” type requests. All other request types are synchronous.

Node 1

Node 2

PAS

Act Act

Page 21: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

21

The Distributed PaP SolutionAddressing and routing values

- Local role session identifier- Local Actor instance identifier- Local PAS instance identifier- PNES instance identifier- Entity type spec.

Act1

pnes1

pas1

Act2

pas1pnes1 Dir1 <number>

pas1pnes1 Act2

pas1pnes1

pnes1

Dir1RS

Actor

PAS

PNES

The Global Actor Identifier (GAI)

Page 22: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

22

The Distributed PaP SolutionEntity registry

PAS and Actor(s)

PNES

PAS and Director(s)and Actor(s)

PNES

PAS and Actor(s)

act1

Legend:Single node

Java Virtual Machine

Java Object instance (JO)

Local registry for individual actors within a PAS (Java Hahtable)

Registry for all PASs and the PNES instances at a node(The Java RMI registry)

pas1

pnes2

pnes1

pas1

act1

act1act2 act1

Node 1

Node 2

act1

pas2

act1act2

pas1pnes1

pas1pas2pnes2

Page 23: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

23

Node 1 Web-server

Network

Node 2 Web-server

Node 5 PaP-server

Node 4 PaP-server

Node 3 PaP-server

The Distributed PaP SolutionInstallation, start-up and execution scenario (1 of 4), Initial installed system

PaP Plays

PaP Support

PaP boot

PaP boot

PaP boot

Page 24: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

24

The Distributed PaP Solution Installation, start-up and execution scenario (2 of 4), Start-up of PaP Support

Node 1 Web-server

Network

Node 2 Web-server

Node 5 PaP-server

Node 4 PaP-server

Node 3 PaP-server

PaP Plays

PaP Support

PaP boot

PaP boot

PaP boot

PaPbootPNES

PNES

PNES

PaPboot

PaPboot

Page 25: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

25

The Distributed PaP Solution Installation, start-up and execution scenario (3 of 4), Plug-in of “first” play

Node 1 Web-server

Network

Node 2 Web-server

Node 5 PaP-server

Node 4 PaP-server

Node 3 PaP-server

PaP Plays

PaP Support

PNES

PNES

PNESNonPaP(PlayPlugIn, PlayXX, VerYY, http_loc_node1)

PAS

Director

ActionsStart Non PaP application to do play plug-in‘PlayPlugIn’ sent to own director.PAS Part of PaP Support is loadedDirector created when non existing (PAS and Director)Play is installed at Director from Node 1

NonPaP

5

44321

2

1

3

5

Page 26: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

26

The Distributed PaP Solution Installation, start-up and execution scenario (4 of 4), Plug-in of “first” actor

Node 1 Web-server

Network

Node 2 Web-server

Node 5 PaP-server

Node 4 PaP-server

Node 3 PaP-server

PaP Plays

PaP Support

PNES

PNES

PNESNonPaP(ActorPlugIn, Location, Role, Capabilities)

PAS

Director

NonPaP

5

4

4321

2

1

3

5

ActionsStart Non PaP application to do plug in‘ActorPlugIn’ sent to own director.Director requests plug in at LocationPAS Support is loadedActor is installed at Node 5 (Note: Only web references to plays is kept in Director)

Actor

PAS

Page 27: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

27

Implementation of the Layered ModelJava Classes in relation to the Layered Model

Director

PPCI

Actors

NonPaP apps

PXM

PAS

PXS

PNES

PNES, RMIServer, boot, BaseFrame, Debug, Util

PAS, ActorFactory, ActorManager, PlayingBase, RMIServer, boot, BaseFrame, Debug, Util

DirectorActor, Director1, Manuscripts, RepertoireBase, CapabilitySet, SubscribeCollection, SubscribeRequestServer, RoleSession, BaseFrame, Debug, Util

Actor, ApplicationActor, ApplicationActorType1, ActorPlugInReq, ActorContext, CapabilitySet, RoleSession, BaseFrame, Debug, Util

NonPaP, boot

ApplicationMessage, GAI, Play, RequestPars, RequestResult, Role, SubscribeRequest

Legend:Classes primary used for realisation of functionality.

Classes primarily used for transport of information.

Note: Each named class in the figure maps to a Java source file with the same name as the class, and the extension ‘.java’. Consult java documentation for details.

Page 28: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

28

Implementation of the Layered Model Java Interfaces in relation to the Layered Model

Director

PPCI

Actors

NonPaP apps

PXM

PAS

PXS

PNES

PASInterfacePI

NI

NI

AI

PNESIInterfaceNI

ActorInterfaceAI

ControlInterface(to all entities)

CIPI

PI

NI

PI AI

CI

Note: Each named interface in the figure maps to a Java source file with the same name as the class, and the extension ‘.java’. Consult java documentation for details.

Page 29: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

29

Implementation of the Layered Model Java Objects in relation to the Layered Model

Director

PPCI

Actors

NonPaP apps

PXM

PAS

PXS

PNESPNES

PAS

Act...

Dir...

Actors are instances of some application specific class, and that class must be some extension of the PaP Support class ‘ApplicationActor’. Created by own PAS inst.

Director is an instance of the PaP specific class ‘Director1’, which is an extension of the class ‘ApplicationActor’. One instance will exist for each director instance. Created by own PAS instance.

Instance of class ‘PAS’. One instance for each PAS instance. Created by owner PNES.

Instance of class ‘PNES’. One instance for each PNES instance. Created by execution of the ‘PaPBoot’ at the node.

Page 30: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

30

Implementation of the Layered Model Java Threads/VMs in relation to the Layered Model

Director

PPCI

Actors

NonPaP apps

PXM

PAS

PXS

PNES

TT2: Thread type that is a common server for queued requests delivered to actors belonging to a specific PAS instance. The thread is activated any time a new request occur in the queue, and serves all request until the queue is empty.

TT2

TT1: Application determined threads. Zero or more such type threads may exists for an actor instance (e.g. a user interface window). Such type threads are allowed to use the defined PaP Support services.

TT3 TT1

TT3

TT3

TT3

TT3: Thread type that is associated with any PaP debug interface. One instance exists for each of the addressable PaP entity types PNES, PAS and Actor.

NonPaP JVM

PAS JVM

PNES JVM

Page 31: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

31

Development of PaP applications The PaP application file catalogue structure and files

ApplicationsRoot

Play_A

RoleSupport_B

Version_1_1

Role_A

Version_1_2

Role_B

RoleSupport_A

Play_B

PaPSupport_API

Java class file that is used by the role class files and/or other role support files. Such files are not mandatory.

Location of the PaP Support classes that is referenced by the applications

A file catalog that defines the play named “Play_A”

A file catalog that defines version “Version_1_1” of the play

Java class file that defines the role “Role_A” in the play “Play_A”.At least one role must be defined for each play.

Page 32: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

32

package Play_A.Version_1_1;import PaP.*;

public class Role_A extends ApplicationActor {// The entry point for all types of requests to this actorpublic RequestResult applicationActorEntry(RequestPars rp) throws Exception {

//Serve the requestif (rp.requestType == rp.ActorPlugIn) { // Serve the actor plug in request ...} else if (rp.requestType == rp.ActorPlugOut) { // Serve the actor plug out request ...} else if (rp.requestType == rp.RoleSessionAction) { // Serve receiption of a signal from another actor ...} // else serve other request types....

}

// Optional overloaded method. Used if the “Subscribe” functionality is appliedpublic RequestResult subscribeReport(String[] subscribeReport) throws Exception {

// Use the reported information}

}

Development of PaP applications The content of a role definition class file

The play name and version

Reference to the PaP Support API

The play role this class implements

File: Role_A.java

The class must be some extension of ‘ApplicationActor’

Must implement this method

Page 33: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

33

Development of PaP applications The content of the optional role support class file

package Play_A.Version_1_1;

public class RoleSupport_A {// May be anything to support other role and role support classes// However, the functionality must not conflict with the PaP functionality responsibility...

}

File: Rolesupport_A.java

Page 34: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

34

Development of PaP applicationsThe Basic Application Programming Interface (bAPI) for PaP Applications

Class: Actor;BaseFrame bf;FaultHandler fh;ActorContext context;getGAI();

Class: ApplicationActor extends Actor;playPlugIn(..);playPlugOut();playChangesPlugIn();actorPlugIn();actorPlay();actorPlugOut();actorBehaviourPlugIn();actorChangeBehaviour();actorBehaviourPlugOut();actorCapabilities();RoleSessionAction();subscribeRequest();subscribeCancel();

Class: <applicationActorClass> extends ApplicationActor;

actorEntry()

subscribeReport()applicationActorEntry()

The PaP Applications programmed by you.

The set of method calls that may be used by your application.

A set of actor local data and method calls that may be used by your application.

Java method call interfaces.

NOTE: The detailed description of class definitions, data and method calls are found in the “javadoc” generated documentation for PaP Support System. Class, method and data names in the figure maps directly to documentation.

Page 35: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

35

Development of PaP applicationsAn Extended Application Programming Interface (eAPI) for PaP Applications

Class: <applicationActorClass> extends ApplicationActorType1;entryActorPlugIn();entryActorPlugOut();entryRoleSessionPlugIn();entryRoleSessionPlugOut();entryRoleSessionAction();

Class: ApplicationActor extends Actor;<as described for ApplicationActor>

Class: Actor;<as described for Actor>

Class: ApplicationActorType1 extends ApplicationActor;RoleSessionAction();multicastRoleSessionAction();roleSessionRelate();roleSessionGet();roleSessionsGet();roleSessionRemove();boolean initialRequest;boolean persistent;RoleSession initialRoleSession;RoleSession currentRoleSession;

applicationActorEntry()

The PaP Applications programmed by you.

NOTE: The detailed description of class definitions, data and method calls are found in the “javadoc” generated documentation for PaP Support System.

The set of method calls and local data that may be used by your application in addition to what is defined in classes “ApplicationActor” and “Actor”.

Java method call interfaces.

NOTE: The “ApplicationActorType1” class gives additional functionality for the applications in addition to what is defined in “ApplicationActor” class.

Page 36: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

36

Installation, configuration and execution of applications Overview

Node 1 Web-server

Network

Node 2 Web-server

Node 5 PaP-server

Node 4 PaP-server

Node 3 PaP-server

PaP Plays

PaP Support

PaP boot

PaP boot

PaP boot

Config

Config

Config

1. The PaP Support Server software(Copy files to an available Web-location)

3. The applications to be used(Copy files to an available Web-location)

2. The PaP Support Client software(Copy files to a file catalogue location)

4. PaP Configuration at the PaP server nodes

5. Start-up of applications

Page 37: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

37

Installation, configuration and execution of applicationsPaP Configuration at PaP Server nodes

File: pap.cnf

codebase = http://www.informatics.sintef.no/projects/PaP/

policy = http://www.informatics.sintef.no/projects/PaP/policy

homeinterface = Actor://localhost/pas1/PaP.Director1

debugserver = localhost

nodeprofile = profDefault

Default file name used by the “boot” program

The Web-address from where to load the PaP Support software

The Web location and file where the Java policy is defined

The address of the “Director” to serve as the default director for actors located at this Node.

The Node where the debug server to attach to is located.

PaP Server nodes may either be “configured” as arguments to start-up command when the PaP Node Execution Support is started, or as defined in a separate configuration file. The content of a separate configuration file is described here.

Page 38: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

38

Installation, configuration and execution of applications Start-up of applications

Start-up of PaP Node Execution Support (PNES) If you want to keep a start-up window displaying debug and error listing, use the “startPaP” booter, else use “boot” booter.The use description for both these booters are:

java PaP.startPaP <options> PaP.PNES or java PaP.boot [<options>] PaP.PNESThe optional set of options are:

configfile=<configuration definition file> (default: “pap.cnf”) (must be first if more than one option)codebase=<web-location where PaP Support software exists> (no default)policy=<web-location, including file name, for the Java policy definition file> (no default)homeinterface=<Director identifier for the default director for all actors controlled by this PNES> (no default)debugserver=<the node identifier for the debug server to attach to> (no default)

Conditions that must be satisfied prior to running PaP applications:• Java Run-time environments must be present at the node where applications shall execute.

Can be done by downloading from internet and installed.• The PaP Support System software must be available at a web-address.

Done by copying the set of files representing PaP Support System to a web-address.• The PaP applications (i.e. Plays) must be available at a web-address.

Done by copying the set of files representing the PaP applications to a web-address.• The PaP “boot” software must be present at any node where PaP applications shall execute.

Done by copying the set of files representing PaP “boot” software to a directory available at the local node.• A PaP Node Execution Support (PNES) instance must be started at all nodes involved in executing the PaP application.

Done by executing the procedure described below.

Page 39: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

39

Installation, configuration and execution of applications A complete example (1 of 2)

Locations of software used in the example• Java Run-time environments can be installed from: “http://java.sun.com/products/”• The PaP Support System software exists at location: “http://www.informatics.sintef.no/projects/PaP/”

The Java policy file to be used is located at: “http://www.informatics.sintef.no/projects/PaP/policy”• The PaP application:

- “School” is located at: “http://www.informatics.sintef.no/projects/PaP/School” - “Watcher” is located at: “http://www.informatics.sintef.no/projects/PaP/Watcher” - “TestPaP” is located at: “http://www.informatics.sintef.no/projects/PaP/TestPaP”. “TestPaP” uses otherplays located at: “http://www.informatics.sintef.no/projects/PaP/TestPlay”

• The PaP “boot” software is located at: “http://www.informatics.sintef.no/projects/PaP/StartClient”The zip-ed file located here must be unpacked to a directory available from the nodes to run PaP applications.

Preparing the node for running the example software• Install Java Runtime Environments if necessary.• Install and adapt the “boot” software at your node if not already done:

- Unpack the file “PaPBoot.zip” located in “http://www.informatics.sintef.no/projects/PaP/StartClient” in available directory (called “<PaP boot directory>” below).- Edit the file “pap.cnf” located in “<PaP boot directory>” to adapt to your needs

• Start the PaP Node Execution Support (PNES) instance by e.g. executing the command:java PaP.startPaP PaP.PNES

from the <PaP boot directory>. The PNES instance should appear with a separate command/trace window. Must be started at all nodes where PaP shall operate.

Page 40: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

40

Installation, configuration and execution of applications A complete example (2 of 2)

Starting applicationsApplication can either be started from other PaP application, from a NonPaP application, or from the PNES debug command

window. In this example we will use the PNES debug command window.

Starting the “Watcher” application (Separate documentation of Watcher exists)• If not already done Plug in the “Watcher” play by the command:

“PlayPlugIn Watcher v1_1 http://www.informatics.sintef.no/projects/PaP/”• Plug in an actor instance playing the WatchServer role by the command:

ActorPlugIn Actor://<nodeName>/pas1/WS1 WatchServer The actor instance should now appear both through its separate debug command/trace window, and its graphical window for presentation of monitored information.

Starting and using the “School” application (Separate documentation of School exists)• If not already done Plug in the “School” play by the command:

“PlayPlugIn School v1_1 http://www.informatics.sintef.no/projects/PaP/”• Plug in two actor instances playing the SchoolClient role by the commands:

ActorPlugIn Actor://<nodeName>/pas1/SC1 SchoolClient ActorPlugIn Actor://<nodeName>/pas1/SC2 SchoolClient The actor instances should now appear both through its separate debug command/trace window, and its graphical window representing the initial Operator Interface window.

• Use the Operator Interface for using the two started School Clients. All PaP related activities is shown in the Watcher presentation window.

Page 41: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

41

The PaP Support system debug and trace facilitiesDebugServer and DebugClients

Node 1 Web-server

Network

Node 2 Web-server

Node 5 PaP-server

Node 4 PaP-server

Node 3 PaP-server

Plays

PaP Support

PNES

PAS

PNES

PAS

DebugServer One or more ‘DebugServer’ instances may exists within a PaP Domain.

dcdc

dc

Actor

Actor

dc

dc

PaP entities at ‘Node 3’ and ‘Node 4 both use ‘Node 5’ as debug server instance. Debug info from DebugClients are presented at DebugServer.

‘DebugClient’ instances will exist at any PaP entity of type PNES, PAS or Actor.

A DebugClient may, but do not need to be related to a DebugServer.

A DebugServer presents debug information from all related DebugClients.

dc

Page 42: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

42

The PaP Support system debug and trace facilitiesDebug Operator commands for different entity types

Operator commanttype

Actor Director

PAS PNES DebugServer

Comments

ActorPlugIn X X Request for ActorPlugIn at actorActorChangeBehaviour X Request for ActorChangeBehaviour at actor.ActorBehaviourPlugOut X Request for ActorBehaviourplugOut at actorActorPlugOut X X Request ActorPlugOut at actorPlayPlugIn X X Request PlayPlugIn at directorPlayPlugOut X XPlayChangesPlugIn X X Request PlayChangesPlugIn at directorRoleSessionAction X X Perform RoleSessionAction at actorListRoleSessions X X List all role sessions for actorStatus X X X X Show status information for the entityListActors X X X 1) List all actors that belongs to the entityListPlays XUnbind X X Unbind (i.e. discard) own entityDirector Status X 2) Show status for directorDirector ListActors X 2) Show all actors managed by directorDirector ListPlays X 2) List all plays managed by directorDirectorListRoleSessions

X 2) List all role sessions managed by director

CreatePAS X Create a PAS instance at this nodeGetKeywords X X X X X Display trace conditionsSetKeywords X X X X X Set trace conditionsRun X Continue execution a specific number of stepsStep X Step mode

X Command is defined1) Listed in PAS debug window2) Listed in Director debug window

Page 43: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

43

PaP Support SystemTopics for further work

• Application development “methodology”There is a need for a guide on how to write PaP Applications.

• Inclusion of reliability and securityA strategy about how to include the reliability and security aspects in the implementation.

• Asynchronous PaP Support modelA Synchronous implementation model exists. How can an asynchronous PaP Support model be included in addition to the synchronous model.

• Specific implementation problems to solveDuring the implementation of the PaP Support some practical and/or logical problems have been noticed. None of them are blocking problems, but solving them will contribute to increase the quality of the PaP Support system and to ease the use of it. Main problems are: 1) Long start-up time of JVMs, 2) Possible to use common libraries for multiple plays.

Page 44: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

44

Start of “Tele-School” application documentation

Page 45: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

45

“Tele-School”, a Tele based learning centre Documentation Survey

D e scrip t ion o f th e fun c t ion a lity

D e scrip tio n o f the im p le m e n ta tion

U se r's g u id e o n ho w to u se

"T e le -S cho o l" , a T e le b as e d le a rn in g ce n tre

Notes:•The requirements and functionality is defined in a separate report “Demonstrator - Requirements and functional description” (Dec. 1999)•For detailed documentation, consult ‘javadoc’ generated information from source code.

Page 46: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

46

“Tele-School”, a Tele based learning centreDescription of the functionality

• A Network based learning application• Main functional terms are:

– Teacher, Student, School, Course, Lecture

• Main implementation terms are:– Distributed solution, Mobility, Multimedia, Chat, Mail, News.

• Main functions are:– Real-time interactive lecture session (partly implemented) – Off-line learning session (not implemented) – Off-line teacher support to students (not implemented)

Page 47: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

47

“Tele-School”, a Tele based learning centreDescription of the Implementation - Modelling

School Server (SS)

Graphical UserInterface (GUI)

School Client (SC)

School User Interface

(SUI)School User

Interface (SUI)

School Client (SC)

School Server (SS)

School Session Server (SSS)

Lecture Session Server (LSS)

Play: SchoolRoles: SUI, SC, SS, LSS

Graphical User Interface (GUI)

Legend:

Role specification

Role Session

Non PaP application

1

n

1

1

1n

1

n

11

Page 48: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

48

“Tele-School”, a Tele based learning centreDescription of the Implementation - Files catalogues and files

http://www.informatics.sintef.no/projects/PaP/

Schoolv1_1

<roles>

s

<role support>

<school data>Role support files are:- ApplicationActorType1.class- RoleManagement.class- RolesObjectInterface.class- SchoolUtil.class- SchoolConfiguration.class- SchoolData.class- SchoolGraphicsInterface$(1-4) .class- SchoolRoleSession1.class

School ‘data base’:- courses.txt- CoursesAnnUsers.txt- lectures.txt- users.txt

A file catalog that defines the ‘School’ play.

A file catalog that defines version “v1_1” of the play

Roles files are:- SchoolUserInterface.class- SchoolClient.class- SchoolServer.class- SchoolRTLServer.class

A file catalog that defines ‘configuration’ data for the school instance named ‘s’

Page 49: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

49

“Tele-School”, a Tele based learning centreUser’s guide on how to use

• Install PaP Support software and the School applicationBoth must have been installed according to generally defined directives as defined in the PaP Support documentation.

• Configuration of School ‘configuration’ dataDefinition of students, teachers, courses and lectures must be done manually - before students/teachers are able to log-on and use the system.

• Using the School application– Student/Teacher log-on

By starting an actor playing ‘SchoolClient’ role, either from a Non PaP application, or from another PaP application.

– Student/Teacher use of School servicesBy using the defined graphical user interface.

– Student/Teacher log-offFrom the graphical user interface

Page 50: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

50

Start of “Watcher” application documentation

Page 51: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

51

“Watcher”, a Tele based learning centre Documentation Survey

D e scrip t ion o f th e fun c tion a lity

D e scrip tio n o f the im p le m e n ta tion

U se r's g u id e o n ho w to u se

"W a tch e r", a P aP S up p o rt A c tivity M o n ito r

Note:•For detailed documentation, consult ‘javadoc’ generated information from source code.

Page 52: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

52

“Watcher”, a PaP Support Activity Monitor Description of the functionality

• Display ongoing PaP specific activityFor a specific Director instance, display information about existence of actors and role session, and a log of all PaP type requests to the Director for the PaP domain. Multiple Watcher instances may be started to serve multiple Directors.

• Demonstrate ‘PlayChangesPlugIn’Plug-in of two different version of the Watcher play, and run actor instances performing from different play versions.

• Demonstrate ‘ActorChangeBehaviour’On request, change the performing role for an existing Watcher actor instance to another role.

• Demonstrate alternative use of the ‘Subscribe’ functionalityInstead of continuously update of Subscribe information, do update only at 30 seconds intervals.

Page 53: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

53

“Watcher”, a PaP Support Activity Monitor Description of the Implementation - Modelling

Watch Server (WS)

Graphical UserInterface (GUI)

Legend:

Role

Non PaP application

1 1

Play: WatcherRoles: WS

Page 54: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

54

“Watcher”, a PaP Support Activity Monitor Description of the Implementation - Files catalogues and files

http://www.informatics.sintef.no/projects/PaP/

Watcherv1_1

<roles>

v1_2

<role support>

<roles>

Role support files are:- WatcherGrapgicsInterface.class- WatcherGrapgicsInterface$1.class

Roles files are:- WatchServer.class

A file catalog that defines the ‘Watcher’ play.

A file catalog that defines version “v1_1” of the play

Roles files are:- WatchServer.class- WatchServerNew.class

A file catalog that defines an alternative version of Watcher

Page 55: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

55

“Watcher”, a PaP Support Activity Monitor User’s guide on how to use

• Install PaP Support software and the Watcher applicationBoth must have been installed according to generally defined directives as defined in the PaP Support documentation.

• Using the Watcher application– Starting the Watcher application

By starting an actor playing the ‘WatchServer’ role, either from a Non PaP application, or from another PaP application.

– Demonstrate ‘PlayChangesPlugIn’Perform a PlayChangesPlugIn of version v1_1 and start a new Watcher instance.

– Demonstrate ‘ActorChangeBehaviour’Send signal ‘UpgradeBehaviour’ to a Watcher instance.

– Change registration info. update from continuous to every 30. Sec.Send signals ‘SubscribeCancel’ and then ‘SubscribeRequestType2’ to a Watcher instance.

Page 56: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

56

Start of “TestPaP” application documentation

Page 57: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

57

“TestPaP”, a Tele based learning centre Documentation Survey

D e scrip tion o f th e fun c tion a lity

D e scrip tio n o f the im p le m e n ta tion

U se r's g u id e o n ho w to u se

"T e stP aP ", a too l fo r a u to m a tic te stin g o f P a P S u pp o rt

Note:•For detailed documentation, consult ‘javadoc’ generated information from source code.

Page 58: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

58

“TestPaP”, a tool for automatic testing of PaP SupportDescription of the functionality

• Automatic testing of PaP Support functionalityMore or less any of the defined PaP Support functions are tested repeatedly under different conditions. Different conditions include e.g. sequence, time intervals, context.

• Reporting of what tests are performed, the number of times repeated, and the number of failures detectedFor each test performed the number of repetitions and number of failures is reported. In addition a test execution log indicating the sequence of execution and the time when executed is shown.

• Operator reconfiguration of how testing shall be doneAn operator may change test set-up configuration through an operator interface. Time intervals between test may be set, and also whether or not to use multiple nodes.

Page 59: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

59

TestClient_v1_1

“TestPaP”, a tool for automatic testing of PaP Support Description of the Implementation - Modelling

CommandInterface

(CI) TestManager (TM) TestClient_v1_1

Play: TestPaP, v1_1Roles: TestManager

Watcher Graphics Interface (WGI)

Legend:

Role specification

Role Session

Non PaP application

1

1 111

Play: TestPlay, v1_1Roles: TestClient

11

11

1

1

TestClient_v1_2

Play: TestPlay, v1_2Roles: TestClient

TestClient2_v1_1

Play: TestPlay2, v1_1Roles: TestClient

1

1

1

1

Page 60: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

60

“TestPaP”, a tool for automatic testing of PaP Support Description of the Implementation - Files catalogues and files

http://www.informatics.sintef.no/projects/PaP/

TestPaPv1_1

<roles>

v1_1

<role support>

<roles>

Role support files are:- ApplicationActorType1.class- RolesManagement.classRolesObjectInterface.classSchoolUtil.class- CommandInterface.class- CommandInterface$1.class- WatcherGrapgicsInterface.class- WatcherGrapgicsInterface$1.class

Roles files are:- TestClient_v1_1.class

A file catalog that defines the ‘Watcher’ play.

A file catalog that defines version “v1_1” of the play

Roles files are:- TestManager.class

TestPlay

v1_2<roles>

TestPlay

v1_1<roles>

Roles files are:- TestClient_v1_2.class

Roles files are:- TestClient2_v1_1.class

Page 61: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

61

“TestPaP”, a tool for automatic testing of PaP Support User’s guide on how to use

• Install PaP Support software and the TestPaP applicationBoth must have been installed according to generally defined directives as defined in the PaP Support documentation.

• Using the TestPaP application– Starting the TestPaP application

By starting an actor playing the ‘TestManager’ role, either from a Non PaP application, or from another PaP application, a user dialogue window will appear, and further actions are taken from that window.

– Setting Configuration parametersIncludes: Selection of test set, test level, test intervals, max. no. of errors before stop testing, one or multiple nodes included in the testing, and what types of trace to show.

– Command actionsIncludes: Start, Stop (with later possibility to continue), Restart from beginning, and Terminate.

Page 62: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

62

Start of “Demonstration examples” documentation

Page 63: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

63

Demonstration examplesDocumentation Survey, Overview

P re pa ra tio ns fo r ru nn ing D em os (to b e d o ne on ce)

F le x ib ility in th e u se o f d istrib u te d a rch itec tu re

D iffe re n t ve rs ion s o f p la ys

D yn am ic ch an g e o f be h a vio u r fo r e x is tin g ac to r

U se o f a c tor c a p ab ilit ies

S e lec ting an d ru n n in g a D e m o

W ha t to b e d on e a fte r De m o s (to be do n e o nce)

D e m on s tra t io n e x a m p les

Page 64: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

64

Preparations for any demo (done once)

Node 1 Web-server

Network

Node 2 Web-server

Node 5 PaP-server

Node 4 PaP-server

Node 3 PaP-server

Node3: Network connected PC running Windows NT4Software:- Java Runtime Environments- PaP boot

Node4: Same configuration as Node3

Node1: Any web-server that can be accessed from the other nodes.Accessible from web:- PaP Support software- Software for the applications involved in the Demo to run

JREPaP boot

JREPaP boot

PaP Supp.<appls>

NOTES:- Node 4 is optional, however if not used the effect of the

demonstrations are reduced.- Node 3 may replace Node1 if it is a web-server.

Page 65: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

65

Demonstration examplePrep1: Preparations for PaP demonstrations

• Determine web-server nodes and PaP server nodes to use• Installation/preparation of web-server nodes• Installation/preparation of PaP server nodes• Start a PaP server at a node• Run a demo• Stop a PaP server

Detailed descriptions is specified in a separate document

Page 66: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

66

Demonstration exampleDemo1: Flexibility in use of the distributed architecture

• To demonstrate: Flexibility in where applications executes, where started from, and distribution of parts of an application.

• Used applications: “Watcher” and “School”.The Watcher application is included for the purpose to observe where different parts of the School application executes.

• Demonstrate the following aspects of flexibility– To control where applications executes– Applications on different nodes attached to the same Director instance– Configuration of School application determines the distribution

Detailed descriptions is specified in a separate document

Page 67: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

67

Demonstration exampleDemo2: Different versions of the same play

• To demonstrate: Plug in/out different play versions, and plug in/out actors performing roles for that play.

• Used application: Watcher has defined two versions of the same play - versions “v1_1” and “v1_2”.

Detailed descriptions is specified in a separate document

Page 68: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

68

• To demonstrate: Change of behaviour for an performing actor by redefining its role behaviour

• Used application: The application “Watcher” has implemented an alternative role (‘WatchServerNew’) that can be used for ‘ActorChangeBehaviour’ from role ‘WatchServer’.

Detailed descriptions is specified in a separate document

Demonstration exampleDemo 3: Dynamic change of behaviour for existing actors

Page 69: Plug and Play (PaP) for Network and Tele-Services Documentation Survey, Top Level

04/22/23 Plug and Play (PaP) for Network and Tele-Services

69

• To demonstrate: actors use of capabilities

• Used application: The “School” application make use of capabilities when selecting common server actors for the clients. This can be verified by using debug and trace facilities in the PaP support.

• Detailed descriptions is specified in a separate document

Demonstration exampleDemo 4: Use of actor capabilities