RealTime UML PBX Modeling - PowerPoint PPT Presentation

1 / 41
About This Presentation
Title:

RealTime UML PBX Modeling

Description:

Ray lifts his handset ('goes off hook'), and hears dial tone. ... Putting a Telephone Into Service:The PBX administrator is told that a new user ... – PowerPoint PPT presentation

Number of Views:65
Avg rating:3.0/5.0
Slides: 42
Provided by: stepha88
Category:

less

Transcript and Presenter's Notes

Title: RealTime UML PBX Modeling


1
Real-Time UML PBX Modeling

2
Approach guided by Use Cases
  • Use Case used
  • to discover the system components (capsules),
  • their requirements and
  • identify concurrency
  • Use Cases can be
  • considered all at once
  • considered one by one
  • considered by groups (packages of use cases)

3
Incremental approach
  • addition of Use Cases by increments
  • development of increasingly concrete models
  • validation at each stage

Use Case Package
Select Scenarios
Select Scenarios
Select Scenarios
Model construction
Model construction
Model construction
Model meeting requirements
Model validation
Model validation
Model validation
4
Model construction
  • Consists of
  • Element Identification
  • Consolidation
  • Behavior Capture

Element Identification
Consolidation
Behavior Capture
5
Example PBX system
administrator
user
Public Telephone Network
PBX
user
6
Use Case Diagram
7
Use Cases - 1
  • Telephone Call A user (Ray) wants to call
    another user (Corinne) on the same PBX. Ray lifts
    his handset (goes off hook), and hears dial
    tone. After dialing Corinnes complete telephone
    number, Ray hears a tone (ring-back), telling
    him that Corrines telephone is ringing. Corinne
    answers the call by lifting her handset. The
    ringing and ringback tone stop, and a voice
    connection is made between the two telephones.
    Ray and Corinne talk for a while. Either Ray or
    Corinne can hang up (go on hook) to end the
    call.

8
Use Cases - 2
  • Last Number RedialHaving made a call, Ray
    decides to call the same person again. As in
    Telephone Call, Ray goes off hook, and presses
    a Last Number Redial button on his telephone.
    This automatically redials the last number he
    dialed.

9
Use Cases - 3
  • Putting a Telephone Into ServiceThe PBX
    administrator is told that a new user needs phone
    service. The administrator, through an
    administrator user interface, selects a new
    number for the user and tells the PBX to put it
    into service. Users can now make calls to that
    number.

10
Use Cases - 4
  • Taking a Telephone Out of ServiceThe PBX
    administrator is told that a user no longer needs
    phone service. The administrator, through an
    administrator user interface, tells the PBX to
    take the users phone number out of service.
    Users can no longer call that number.

11
Elements Identification
  • Discovery of candidates
  • capsule classes,
  • data classes,
  • protocol classes
  • Based on
  • experience,
  • Brainstorming
  • Discovered elements should be briefly described
    and have a trace-ability number

12
Candidate Capsules
  • Supposes delimitation of system boundaries
  • Candidate Capsules are
  • Active elements in Use Cases and Sequence
    diagrams
  • Capsules created to express abstractions
  • Coordinators created to
  • mediate between various capsules
  • encapsulate processes
  • Interface Capsules
  • isolate the interface from the system

13
Consolidation
  • Elimination of certain candidates classes
  • e.g. redundant classes
  • Work on relationships between classes
  • e.g. containment, communication,
  • Organization in inheritance hierarchy

14
Consolidation of Capsules
  • Consolidation will be careful about capsules
  • which are only attributes of other capsules
  • which are data classes
  • with too much responsibilities
  • should be broken up

15
Initial Model in the PBX system 1
  • A capsule represents the system
  • highest abstract view of the system
  • Other capsules represents actors in the
    environment

16
Initial Model in the PBX system

17
Description of capsules
18
Candidate Protocols signals
  • May be found by looking at
  • events in sequence diagrams
  • verbs in textual description
  • Signal should
  • describe the high level goal of messages
  • have a destination-independent name

19
Protocols consolidation - 1
  • eliminate redundant signals
  • remove or correct vague signals
  • gather signals in protocol classes
  • e.g messages between two actors can define a
    candidate protocol class

20
Example PBX system - 1
21
Example PBX system - 2
PutInService(String) PutOutService(String)
22
Protocols consolidation - 2
  • Define asymmetrical signals from the point of
    view of the client capsule
  • Divide protocols addressing too many concerns
  • Examine aggregation of classes of protocols

23
Data candidates
  • Data transmitted by messages
  • Attributes of capsules (qualifiers)

24
Consolidation
  • Elimination of redundancies
  • Transformation of attributes into states
  • Consideration of inheritance links

25
Example data object in the PBX example
  • PhoneNumber String
  • The complete number that identifies a user. It
    may include digits, dashes and parentheses.''

26
Modeling the System
  • Level 1 Obvious components
  • physical objects in requirements description
  • Telephone
  • includes a handset, buttons, etc
  • significant property is whether it is ringing
  • AdministrationUserInterface
  • used by administrator to make changes in PBX
  • PBX
  • provides interfaces to telephones and connect
    them

27
Modeling the System
28
(No Transcript)
29
Internal protocol
  • OriginateCall request to initiate a call.
  • reception of signal request the telephone to ring
  • DialTone indication of dial tone transmission to
    user
  • DigitsDialed indicates a number was dialed by
    user
  • Includes a telephone number (digits)
  • Alerting indication that ringing of the
    telephone started
  • RingbackTone indication that ringback tone is
    transmitted
  • to the user from where origin the call
  • AnswerCall request to answer a call
  • Talk indication of vocal information sent or
    received by
  • a user connected to another user
  • Release request to finish a call

30
Decomposition of the PBX
31
Decomposition of the PBX
  • Call (capsule coordinator)
  • make the relation between users (call,
    connection, disconnection)
  • TelephoneHandler (interface capsule)
  • abstract telephones in the PBX
  • keep information (number, last number called)
  • help support technological changes
  • AdminHandler
  • abstraction of the administrator in the PBX
  • transmits messages from administrator to the
    entities affected by the actions of the
    administrator

32
Behavior capture consolidation
  • Distinguish between
  • States
  • where a capsule wait for an event
  • State variables
  • Attributes of capsules

33
Candidate States
  • Use Cases and Sequence Diagrams can help finding
    states
  • A candidate state is a point between received
    events
  • Ensure all events in the scenarios are handled
  • Group candidates states hierarchically by
  • decomposing a state in sub-states
  • composing sub-states at a same level

34
Candidate Transitions
  • Definition of transitions
  • use a consistent name
  • name should reflect transition cause
  • trigger or abstraction of triggers

35
TelephoneHandler
36
Decomposition of InService state
  • To deal with last number redial
  • we must know when the TelephoneHandler is
    participating
  • in a call
  • LastNumberDialed should be recorded only when a
  • call is being made

37
(No Transcript)
38
AdminUserInterface
  • AdministrationUserInterface does nothing except
    relaying messages

39
AdminHandler
Relays messages from AdministrationUserInterface
to TelephoneHandler(s)
40
Telephone
  • Ringing state needed to determine whether OffHook
    should produce a OriginateCall or AnswerCall

41
Call
Write a Comment
User Comments (0)
About PowerShow.com