You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Figure 2 The first use case diagram<br />
for the Virtual Terminal<br />
108<br />
User<br />
Initiating service<br />
Receiving service<br />
Using multiple devices<br />
Configuring device<br />
Administering the VT<br />
example, he can move visual output from a<br />
mobile device with small display to a larger<br />
and better stationary screen.<br />
• With the Virtual Terminal concept the user<br />
can define, add or remove the devices that are<br />
included in the large Virtual Terminal.<br />
• With the Virtual Terminal concept the user<br />
can set up and modify his preferences for all<br />
devices at one place.<br />
4 What does the User want<br />
from the Virtual Terminal?<br />
In a user-centric approach, we try to figure out<br />
what the user expects from the Virtual Terminal<br />
by elaborating use cases. Use cases are used to<br />
describe the outwardly visible requirements of a<br />
system [5]. Identifying the use cases of a system<br />
is in other words equivalent to identifying what<br />
the users require of the system.<br />
For simplicity, we want to distinguish between<br />
two different types of services and two types of<br />
devices as follows:<br />
• By communication services is meant humanto-human<br />
communication. They can be either<br />
synchronous (voice telephony, chat, multimedia<br />
services, etc.) or asynchronous (e-mail,<br />
SMS, etc.).<br />
• Computing services or data services include<br />
communication with machines, and these services<br />
can also be synchronous (games, etc.) or<br />
asynchronous (word processing, etc.).<br />
Furthermore, a communication device is a device<br />
offering communication services. A computing<br />
device is a device allowing data services<br />
and communication with other computing devices.<br />
In addition there are other electronic devices and<br />
peripheral devices, which can handle different<br />
types of output and input streams, e.g. TV<br />
screens, loudspeakers, digital cameras, microphones,<br />
printers, scanners, etc.<br />
The Virtual Terminal should be able to act like<br />
a regular terminal, i.e. the user should be able to<br />
initiate both communication and data services<br />
via the Virtual Terminal. Likewise, he should be<br />
able to receive incoming services on any device<br />
included in the Virtual Terminal. The Virtual<br />
Terminal should also be able to handle the cases<br />
where the user wants to use multiple devices for<br />
the input and output of his services and to control<br />
the input and output flows. In some cases it<br />
is also desirable to dynamically configure some<br />
of the devices belonging to the Virtual Terminal,<br />
which should allow the user to do this or even do<br />
it automatically for him. In addition it should be<br />
possible for the user to administer his Virtual<br />
Terminal in a straightforward way. We thus<br />
identify five main use cases, as represented by<br />
the use case diagram in Figure 2.<br />
These use cases are quite general, but it is possible<br />
to go into more detail by identifying more<br />
specific use cases, which are said to extend the<br />
most general ones.<br />
4.1 Initiating Services<br />
As we have already distinguished between different<br />
types of services, we distinguish between<br />
initiating communication services and initiating<br />
data services. The following three use cases<br />
extend the initiating communication services<br />
use case: initiating directly (the user specifies<br />
directly the counterpart’s address or identifier),<br />
initiating using an address book (this address<br />
book can be contained in the Virtual Terminal<br />
and thus be reachable from all the user’s different<br />
devices), and initiating a group (the user<br />
specifies a group of persons he wants to communicate<br />
with). The extended use cases are illustrated<br />
in Figure 3.<br />
4.2 Receiving Services<br />
We define three use cases extending this use<br />
case, which cover the alternatives the user has<br />
when receiving an incoming service request:<br />
accepting a service request (the user wants to<br />
accept the offered service and get it delivered to<br />
an appropriate device – be it a local device, a<br />
remote device or even to several devices simultaneously),<br />
receiving in mailbox (the user does<br />
not want to receive the service at the time of<br />
request, but wants to record a message in his<br />
mailbox and look at it some other time), and<br />
refusing a service request (the user does not<br />
want to receive the service and the request is<br />
turned down. No connection to any of the user’s<br />
devices is being made). These use cases are<br />
illustrated in a use case diagram as shown in<br />
Figure 4.<br />
Telektronikk 1.2001