Question
Objective: Practice UML design use case, class and sequence diagrams. Problem Description: The system that you have to analysis and design, using an object oriented
Objective:
Practice UML design use case, class and sequence diagrams.
Problem Description:
The system that you have to analysis and design, using an object oriented approach, is a basic voicemail system. The voicemail system is an independent system that interfaces with an already implemented telephone system (i.e., assume that the telephone related hardware, software, and API are available ready to use). The main goal of the system is to act as a messaging service for an organization-wide telephone system. The organization may have several telephone numbers and multiple calls active at a given time.
The voicemail system gets activated after a callers dialed number to the telephone system goes unanswered for a given number of rings (e.g., five rings). The telephone numbers are uniquely mapped to mailbox numbers. Note that some numbers may not be assigned valid or active mailboxes (or none at all). Assume that the telephone system is responsible for functionalities such as establishing and managing the connection, managing the call (e.g., pickup, hang up), and providing information from and to the caller (e.g., the pressed phone keys, and obtain and play the actual voice message). An example of the interface to the phone system is given bellow (you may assume that all interface calls are blocking and as such the message system will wait until the interface call has completed execution and a value returned):
PhoneSystem pickup() //Initiates one end of a connection hangup() //Ends a connection
dial(char)//Allows dialing of 0..9,#, * play(message)// Paly message connection(): Boolean // True if a connection exists record(int): message //Record a message until hangup() or time limit is reached getRingCount(): int //Returns the number of rings
getDial(): char//Returns the character dialed (0 if buffer is empty else 1) getExtension(): string //Returns the current extension
The voicemail system must support the callers to leave voicemails, and the mailbox owners to access and retrieve their voicemails. The owners can access and administer their mailbox with the following options:
Local access: from their own (local) phone devices via a hotkey on the phone device
Remote access: from other (remote) phones via dialing phone and/or extension number
Web or email access: via subscription
The caller can record a message verbally. The message is ended with a call hang up or a timeout in number of seconds. There is also an administration mailbox with extended functionality to manage the email system. This mailbox can access and manage other mailboxes (e.g., add or remove a mailbox and set a users password).
Tasks to do:
- Identify the main use cases including actors. Then, please provide the use cases diagram(s).
- Identify the main classes and the relationships between them. Then, please provide the class diagram.
- Describe a scenario (per functionality) that can occur in at least three functionnalties. Thus, please provide three sequence diagrams.
You can use any UML design tool (to draw the diagrams) such as ArgoUML,
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started