Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

14 Case study: telecom

14.1 Introduction
This chapter describes the development of a telecom switching
system. The focus is on the parts handling a local phone call between
two subscribers connected to the same switch. We first discuss the
f u n c t i o n a l i t y o f s w i t c h i n g s y s t e m s i n g e n e r a 1 a n d t h e s p e c i f i c r e q u i r e -

m e n t different models concerning this functionality We use


s of the parts on which we are to focus. We t h e n develop the

Smalltalk to illustrate t h e implementation, a through Smalltalk is


not (yet) widely used in this application area.

14.2 Telecommunication switching systems


Before looking at the requirements of the functionality to be
develped,we will give a very short and simplified introduction to the
world of telephone exchanges. An exchange connects subscribers with
each other. The subscriber that calls is called the A-subscriber. . As she
or he dials the number, the exchange analyzes the digits and looks up the
line to the subscriber to be called This subscriber is called the B-
subscriber.The exchange then connects the lines of the two subscribers
so that they can talk to each other. When they have finished, they put
their telephone handsets down (called on — hook in the
telecommunications world; picking up the phone is called off-hook
and this makes the exchange disconnect the two lines. Normally,a.
Subscriber can be both an A — subscriber and a B-subscriber, but
in a specific phone call he or she can only play one of the two roles.

393
394 Case study: telecom
Every unit connected to the switching system is called a
device. A line to or from a subscriber, for example, is a device. This
implies that each specific subscriber is connected to a certain
exchange. each subscriber has two associated physical devices, an A-
subscriber line and a B-suhscribcr line: These devices are used to
'make outgoing calls and to accept incoming calls. Since a larger
telecommunication network cannot be handled by one exchange
alone, device:; can also be incoming lines or outgoing lines to other
exchanges (see figure 14.1). An incoming line is connected to an
A-subscriber in another exchange, while an outgoing line directs the
call,
to a B-subscriber in another exchange. When a subscriber wants to
call a subscriber connected to another switching system, she or he
uses outgoing lines on the system to connect to the other systems
incoming lines.
A route is a collection of outgoing lines, all in one specific
direction, such as all lines from one. exchange to another.. Top
communicate with the other system, our system will choose one
outgoing lire from: the route in that direction. It is of no interest
which line in the route is used; so long as it is not busy the system
can use any free line in the route. Before we start defining the
requirements of the functionality,
we will make some general assumptions:

A-subscriber B-subscriber
lines lines

Exchange Exchange Exchange

incom m Outgoin
ing g

figure l4.l A schematic picture of a telecommunication network.


14.2 Telecommunication switching systems 395

• A subscriber is assumed to have two identities: a subscriber


number known among subscribers and found in the telephone
directory,, and a physical external identity used by the
maintenance personnel
ft It is assumed that hardware associated with each
subscriber will recognise whether an off-hook is
performed as the
beginning of a new call or as an answer to a call. All
devices have an external physical identity . each
route has unique identity.
le system, for simplicity, we will not directly the
application hardware, but instead consider the hardware as
part of the underlying system.
Now let us turn to the actual functional requirements. The
requirements specification is separated into two parts:
• Call handling • Operation
and maintenance
Call Between A-subscriber line and B-subscriber Line. When
an A-subscriber lift his Handset, it results in the following
action being taken by the system .First the subscriber category is
checked to see whether the subscriber is allowed to make outgoing
calls. If so, the system marks the subscriber as being busy for
incoming calls, and returns the dial tone The dialling tone indicates
that the system is ready to .receive digits The dialling tone is
disconnected when the first digit is received After dialling all digits
the A-subscriber will be connected to the B-subscriber
lf the B-subscriber is idle and if her category allows incoming
calls, she will be marked busy and the A-subscriber and the B-
subscriber,will be connected When the connection is performed,
the B-subscriber will get a ringing signal and the A-subscriber will
receive a ringing tone Both these signals will be interrupted when the
B-subscriber, answers In A normal call, the two subscribers talk to
each,other for some while before disconnection. The call will be
disconnected when both the A-subscriber and the B-subscriber have
cleared Then both subscriber. are marked idle and they are
disconnected.
If One of the parties clears the call is continued if the party that
has. cleared lifts his or her handset again. The A-subscriber may clear
the call at any moment during I he call set up.
Call between A-subscribdr line and Outgoing Line, This function is
similar to the Call between A-subscriber line and B-subscriber line with a
few exceptions. The direction of the call will now be to an Outgoing
396 Case study telecom
line. This will be chosen from the free lines in the route between this
switching system and the other system. The line will be marked
busy during the call in the same way as the B-subscriber line. The
system does not need to check the category of the outgoing line since
it is always allowed to receive calls.
Call between incoming Line and B-subscriber Line. This function is
.similar to the call between A-subscribcr line and B-subscriber line with a
few exceptions. The function will be started when another switching
system starts communicating with this system. In this case all the digits
Will be received directly and there is no need to check whether
calls are allowed to originate from this line. The function will then
behave like the function call between A-subscriber line and subscriber
line.
Call between incoming Line and Outgoing Line. This function is
similar to the previous functions but in this case the line from where
the call originates in this switching system is an Incoming line and
the direction of the call is to an Outgoing line.
Operation and Subscription Changers. An operator can connect a new subscriber to the
maintenance system or disconnect an existing subscriber.When new subscriber is
connected to the system, the system is informed by the operator of the phone number, the
external identity and the category of the subscriber. Changes of Digit Information. An
operator can change the dig information for the system. This information is used for
each call the system so that proper action can be taken. the information is normally
structured as a tree where each node represents a digit and a leaf node lepicsents a
direction.
The result of a digit analysis is associated with a leaf node. The
result consists of three components: the name of the outgoing
function to which the call is directed, an external route identity object
(not required for a call to a A-subscriber line) and the expected
number length (dependent on the direction of the call). The number
length is used to decide when all digits for a call have been received.
Connection of Devices. This function is used to connect new
devices and to delete existing devices from the system. For each
connected device the system is informed of-the external identity of
the device and the external identity of the route to which the device
belongs. The external route identity is used outside the system and
for commuication with the system.

14.2.1 An overview of the system


Before going into the development work we will now give a brief
overview of how the system works. When a new subscriber is to be
14.3 The requirements model 307
connected to the system, an operator uses the function described as
Subscription Changes. The operator gives the subscriber's number,
external identity and category to the system. Then the operator uses
Changes of Digit information and the system is informed about the new
subscriber the number of the subscriber, The direction of the call and
the length of the number. The number of the subscriber is used to
find the other information, such as the direction of the call. It is now
possible to make a call to and from this subscriber if the subscriber is
physically connected to the telecommunication switching system.
This should be done before the operator connected the subscriber to
the exchange.
When The subscriber lift the handset to make a phone call, the
External identity of the subscriber is sen! to the system.
Then, depending on the destination of the call, the subscriber, uses
one of the functions described as call between A — subscriber Line and
B-subcriber Line or Call between A-subcriber Line and Outgoing Line.
An operator removes a subscription by giving the number of
the subscriber whose subscription should be removed, or for another
type of device by giving the external identify of the device to the
system.

14.3 The Requirements model in the use case model we will


describe what functionality each actor. should be able to perform.
Therefore we start by identifying the actors From the above
description, we see that the system is primarily developed to serve
subscribers. A subscriber is thus a candidate actor However we see
also that the subscriber can play either of two roles an A-subscriber or
a B-subscriber. We have previously discussed the importance of
describing roles played in the system These two roles will therefore be
perfect to model with two actors A-Subscriber and B-subsciber. To
model incoming and outgoing lines we also use actors since they will
show behavior external to our system here we see an example where
other systems (in this case even the Same kind of system!) are modeled
with actors. Let us call these actors A-remote and B-remote. In this
example these four actors will be the primary actors. We also have
secondary actors, namely actors that will service the functionality for
the primary actors. From the description above we see that we have a
secondary actor,namely an Operator to perform, the functionality
described under Operation and Maintenance above. In this example we
will not have any more actors. We thus have the picture in Figure 14.2.

You might also like