Smart Space scenario

 

I.       Introduction

I.1.       Goal of the scenario

This scenario aims to understand the architecture required to handle preferences. This step is considered necessary in order to appreciate the way preferences can be employed. Indeed, if we know what we are going to do with the preferences, we can build a better schema for them.

I.2.       User view of the scenario

This scenario involves a user, named Bob, entering the Smart Space meeting room with a preferences enhanced URC.

Bob employs a PDA as an URC. He previously set an ãears-freeä preference in this URC (note: the preferences will be more complex than just ãears-freeä in the future, this is just a first example).

The URC is set to propose only services that match the preferences.

Thus, the Smart Space proposes to connect the URC to a ãspeech-to-textä service or a ãspeaker recognitionä service. Bob chooses to only use the ãspeech-to-textä service. He is asked to choose the display he wants for the text. He chooses his PDA display. The spoken words are then displayed as text on his URC.

After the opening of this session, Bob decides to change the display in order to show the spoken words on the roomâs screen. He uses the interface in his PDA to do that.

Then, another person, Jake, attending the same meeting, borrows the PDA in order to ask what services are available for an ãeyes-freeä preference. Jake changes the preferences in the URC. The list of services is updated: it only contains ãtext-to-speech.ä Moreover, Jake is asked if he wants to stop the ãspeech-to-textä service.

I.3.       Contents of this paper

Part II contains an architecture diagram that shows what servers are needed, and which communication channels are needed among those servers, the URC and the service.

This paper shows only the information that is exchanged, it does not show how the channels are set, and there is only one service.

Then part III shows the course of a session.

II.    Architecture

The following diagram uses the Specification and Description Language (SDL) systemâs diagram. It shows the main actors in the preferences project, and the communication channels among them.

The channels coming from or going to the exterior of the system means there is information coming from the user for the URC, or from the Smart Space for the servers and the service. The URC receives information as commands, and sends back updates; while the Smart Space communicates the changes in services availability to the service server, the changes in the mapping table to the preferences server, or a possible update coming from the exterior to the service·

The block and process diagrams are under development.

 

This diagram presents the communication channels existing between different items. The four items are: URC, preferences server, services server and service.
The URC may receive information from the services server or the exterior. It may send information to the exterior, the preferences server and the services server.
The preferences server may receive information from the URC, the exterior, or the services server. It may send information to the services server.
The services server may receive information from the URC, the preferences server, the service or the exterior. It may send information to the URC, the preferences server or the service.
The service may receive information from the services server or the exterior. It may send information to the services server.
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Diagram 1: SDL system diagram of the needed architecture to handle preferences

 

The ãpreferences serverä is a new item. This is because we need something that does the mapping between the preferences and the services available. This is the main purpose of this ãserver.ä

The services server is a directory that knows about he availability of the services and can transmit the information about the service or about the URC. It could also handle the conflicts when there are several users in the room that ask for opposing services, or it could handle the users privileges.

III.  Scenario

III.1. Beginning of session

This diagram shows the exchange of information at the beginning of a session when preferences are used.

This diagram shows what information is exchanged and processed during the opening of a session while using preferences.
There are four items into play: URC, preferences server, services server and service.
Here are the steps:
-	The services server sends the services list (containing ãspeech-to-textä, ãspeaker recognitionä, ãtext-to-speechä) to the preferences server
-	The URC sends the preferences (containing ãears-free) to the preferences server
-	The preferences server creates a Îpreferred servicesâ list, containing ãspeech-to-textä, ãspeaker recognitionä
-	The preferences server sends the Îpreferred servicesâ list and the preferences to the services list
-	The services list sends the Îpreferred servicesâ list and the services list to the URC
-	The URC displays the Îpreferred servicesâ list
-	The URC receives the choice of services (from the user): ãspeech-to-textä
-	The URC sends the choice to the services server
-	The services server sends the preferences to the service
-	The service opens a session
-	The service sends the AAIML file to the URC
-	The services adapts to the user (using the preferences), and may make calls to the URC to achieve that
-	The service sends a boolean to the services server (about the completion of the opening of the session)
-	The services server sends a boolean to the URC server (about the completion of the opening of the session)
At the beginning of the session, the URC stores the preferences file, the preferences server stores a table enable it to make a mapping between services and preferences, and the services server stores the available services list.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Diagram 2: opening of session scenario

III.2. After the opening of session

This diagram shows what information is exchanged and processed after the opening of a session while using preferences.
There are four items into play: URC, preferences server, services server and service.
Here are the steps:
First, there is the processing of a command:
-	The URC sends a command (ãchange displayä) to the service
-	The service processes the command
-	The service sends an update (ãdoneä) to the URC
Then, there is the update of preferences:
-	The URC sends a new preferences file (containing ãeyes-freeä) to the preferences server
-	The preferences server creates a Îpreferred servicesâ list, containing ãtext-to-speechä
-	The preferences server sends the Îpreferred servicesâ list and the preferences to the service server
-	The services server sends the preferences to the service (which is still the ãspeech-to-textä service)
-	The service adapts: it communicates with the URC to know if it has to stop
-	The services server sends the Îpreferred servicesâ list to the URC
-	When its adaptation is finished, the service sends a boolean to the services server (to notify it that the adaptation is complete)
-	The services server sends a boolean to the URC (to notify it that the adaptation is complete)
This diagram shows what happens during the session, especially in case the user changes the preferences.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Diagram 3: after the opening of session scenario