Web based automated Help Desk: 4+1 Views

advertisement
Web based automated Help Desk: 4+1 Views
By Jason Raffi and John Sung
1
List of Diagrams

























Figure 1 : Highlevel Usecase Diagram ....................................................................... 4
Figure 2 : Employee’s High Level State Diagram ...................................................... 5
Figure 4 : Employee’s Email Sequence Diagram ....................................................... 6
Figure 5 : Employee’s Worst Case Email Sequence Diagram ................................... 7
Figure 6 : Mentor State Diagram ................................................................................ 7
Figure 7 : Employee Web Search State Diagram ....................................................... 8
Figure 8 : Employee’s Worst Case Phone Diagram ................................................... 8
Figure 3 : Emergency Phone Sequence Diagram ....................................................... 9
Figure 9 : Database Class Diagram ........................................................................... 10
Figure 10 : Webpage Class Diagram ........................................................................ 11
Figure 11 : Chat Server Class Diagram .................................................................... 11
Figure 12 : Chat Client Class Diagram ..................................................................... 12
Figure 13 : DatabaseEngine Class Diagram ............................................................. 12
Figure 14 : Chat Server Activity Diagram ................................................................ 13
Figure 15 : Chat Client Process View ....................................................................... 14
Figure 16 : Database Engine Activity Diagram ........................................................ 15
Figure 17 : Overall Schedule .................................................................................... 16
Figure 18 : Mentor Phase Class Diagram ................................................................. 16
Figure 19 : Reference Card Class Diagram .............................................................. 17
Figure 20 : FAQ Database Class Diagram ................................................................ 17
Figure 21 : Email Phase Class Diagram ................................................................... 18
Figure 22 : Phone Phase Class Diagram ................................................................... 18
Figure 23 : Chat Class Diagram ................................................................................ 19
Figure 24 : Chat SubSystem Component Diagram ................................................... 19
Figure 25 : System Deployment Diagram ................................................................ 20
2
Introduction
Background
The leading technology consultant company, COM 3205 Inc., was asked to propose a new system that
would convert the existing Help Desk System to a more efficient, web based automated Help Desk.
The senior consultants, Jason Raffi and John Sung, have met with the company in question and
drafted a document to propose several possible solutions to their requirements of the new web based
Help Desk.
This document contains the 4+1 view of software that goes along with the document that was
submitted earlier. These views should give a more detailed view of how the whole project should look
like. The views will be given with multiple UML diagrams.
4+1 View Model of Software Architecture
This model of software architecture was developed my Rational Software Corp. It attempts to
communicate the different issues that any software engineer has to consider when developing a
software system.
Logical View - the object model of the design
Process View - the concurrency and synchronization aspects of the design
Physical View - the mapping of the software onto the hardware and reflects it's distributed aspects.
Development View - that static organization of the software in it's development environment.
Scenarios - the use cases that illustrate how the actors will use the system.
3
Scenarios
 Figure 1 : Highlevel Usecase Diagram
?
Mentoring
Reference
Card Update
Employee
Mentor
E-mail
Search
FAQ DB
Phone
Browse
FAQ DB
Help Desk
Chatting
FAQ DB
Update
Other
Employees
4
 Figure 2 : Employee’s High Level State Diagram
Email Help
Desk
Start
User
Problem
Check
Reference
Cards
Check Web
DB
Ask Mentor
[Emergency]
Phone Help
Desk
Solved
5
 Figure 3 : Employee’s Email Sequence Diagram
User Has
Problem
Tech Gets
Email
Search
DB
Email Tech
Search DB
Return Data
Email Solution
6
 Figure 4 : Employee’s Worst Case Email Sequence Diagram
User Has
Problem
Tech Gets
Email
Tech Calls
User
Phone
Correspondence
Email Tech
Cannot Help via Email
Contact User
User Relays Problems
Solution
 Figure 5 : Mentor State Diagram
Mentor Does
Not Know
Answer
[Mentor Has Time]
Mentor
Searches DB
[Mentor is Busy]
Start
No Solution.
Employee
Search DB
Ask Mentor
Mentor Knows
Answer
7
Mentor Has
Solution
 Figure 6 : Employee Web Search State Diagram
Start
Browse
Reference
Cards
Log In
[Cancel]
Browse DB
[Cancel]
[Valid User]
[Search DB]
[Search]
[Browse Cards]
[Browse DB]
[Invalid Search]
[View Reference
Cards]
Enter Search
Parameters
HTML
Interface
[Search DB]
[Invalid Search]
Enter Search
Parameters
[Cancel]
[Cancel]
Retrieve
[New Search]
Display
Log off
[New Search]
[Cancel]
Search
DB
[Valid Search]
[Cancel]
Display
Update
Metrics
 Figure 7 : Employee’s Worst Case Phone Diagram
User
Problem
Tech Takes
Call
Research
Problem
Search DB
Update
FAQ
User
Calls
Check DB
No
Solution
Update FAQ
Return
Solution
8
 Figure 8 : Emergency Phone Sequence Diagram
User Has
Problem
Tech Gets
Call
Search
Database
User Calls
Check
Database
Found
Solution
Give Solution To User
9
Logical View
 Figure 9 : Database Class Diagram
1
IssueStat
Category
1
SoftwareName
ProblemType
Count,Start,End
1
1
FAQIssue
0..*
Question
0..1
1
1
History
1
1..*
1
Solution
close()
1..*
PhoneHistoryItem
0..*
1..*
HistoryItem
Time
Owner
1
0..*
Employee
ChatHistoryItem
1
1
HelpDeskPersonnel
Name
Id
Mentor
1..7
10
RefDocument
1
1
dateClosed
1
Ref. Card
0..*
GenericIssue
1 isClosed
1
EmailHistoryItem
0..* 1..*
1
 Figure 10 : Webpage Class Diagram
LogI
n
1
StartChat
1..*
1..*
Category
1
1
1
1
MainPage 1
1
1..*
GenericIssue
1 1
0..*
0..1
0..* SearchResults 0..*
ContactInfo 1
Ref. Card
1..*
1
1
OpenIssue
Browse
0..*
FAQIssue
1..*
 Figure 11 : Chat Server Class Diagram
ChatServer
1
1
ChatServerThread 1
ChatLogThread
1
1
ChatLogBuffer
1
ChatSocket
1
1
1 ServerConnetionPool
1
1
SocketNumber
Hostname
close()
1
getConnection(), broadcast()
1
1..*
ServerConnection
0..*
ChatHistoryItem
1
broadcast()
1
1
ServerSendThread
1
1
ServerReceiveThread
broadcast()
11
 Figure 12 : Chat Client Class Diagram
MainWindow 1
1
ChatClient
exit()
1
1
1
1
ClientConnectionThread
1
DisplayTextArea
1
ChatSocket
1 SocketNumber
1
Hostname
close()
1
displayMsg()
1
ClientReceiveThread
1
ClientSendThread
1
SendTextArea
broadcast()
 Figure 13 : DatabaseEngine Class Diagram
DatabaseEngine
1
1
DBEngineThread 1
1
DBEngineSocket
1
1
DBConnetionPool
SocketNumber
Hostname
close()
1
getConnection(), serveDB()
1
1..*
DBConnectionThread
DBRoot
serveDB()
1
RefCardDBThread
serveDB()
PhoneDBThread
ProblemDBThread
FAQDBThread
MentorDBThread
ChatLogDBThread
serveDB()
serveDB()
serveDB()
serveDB()
serveDB()
12
Process View
Overall System Architecture
 Figure 14 : Chat Server Activity Diagram
Receive
Connection
[Server Shutdown]
[Client Connection]
Server
Shutdown
Get a Server
Connection
Send
Message
Wait for
Broadcast
Message
Wait for User
Message
Connection Closed
Return Server
Connection
13
Broadcast
Message
 Figure 15 : Chat Client Process View
Start GUI
exit
Get New
Client
Connection
Update Text
Display
Wait for
Broadcast
Message
Wait for User
Message
14
Broadcast
Message
 Figure 16 : Database Engine Activity Diagram
Receive
DB Request
[Server Shutdown]
[Request]
Get a DB
Connection
Thread
Server
Shutdown
Service DB
Request
Return DB
Connection
Thread
15
Development View
 Figure 17 : Overall Schedule
 Figure 18 : Mentor Phase Class Diagram
DatabaseEngine
MentorDB Component
DatabaseEngine
1
1
DBEngineThread 1
Database
Components
1
DBEngineSocket
1
1
DBConnetionPool
Employee
Name
Id
SocketNumber
Hostname
close()
1
getConnection(), serveDB()
Mentor
1..7
DBRoot
1
1
1..*
DBConnectionThread
serveDB()
MentorDBThread
serveDB()
16
1
 Figure 19 : Reference Card Class Diagram
ReferenceCard html
Component
Ref. Card
DatabaseEngine
ReferenceCard
Component
MainPage
DBConnectionThread
DBRoot
serveDB()
ReferenceCard DB
Component
RefCardDBThread
Ref. Card
RefDocument : Word
serveDB()
 Figure 20 : FAQ Database Class Diagram
DatabaseEngine/html
FAQDB
Component
1..*
Browse
1..*
Database
Components
1..*
Category
1
1
MainPage 1
1..*
GenericIssue
1 1
ContactInfo 1
Ref. Card
0..*
0..1
0..* SearchResults 0..*
1..*
17
0..*
FAQIssue
 Figure 21 : Email Phase Class Diagram
DatabaseEngine
ProblemDB Component
html Component
DBConnectionThread
LogI
n
1
DBRoot
serveDB()
1
MainPage
OpenIssue
1
ProblemDBThread
1
serveDB()
 Figure 22 : Phone Phase Class Diagram
DatabaseEngine
PhoneDB Component
DBConnectionThread
DBRoot
serveDB()
PhoneDB Component
PhoneHistoryItem
HistoryItem
PhoneDBThread
Time
serveDB()
18
 Figure 23 : Chat Class Diagram
DatabaseEngine
ChatDB Component
Chat Database Component
DBConnectionThread
DBRoot
serveDB()
HistoryItem
Time
ChatLogDBThread
ChatHistoryItem
serveDB()
 Figure 24 : Chat SubSystem Component Diagram
DatabaseEngine
ChatDB Component
<<sockets>>
ChatServer
<<tcp/ip>
>
ChatClient
19
Physical View
 Figure 25 : System Deployment Diagram
TCP/IP
USER
SERVER
Windows PC
HTML Interface
Email
DB Logic
Telephone
FAQ DB
Reference Cards
Email Server
Phone
Line
Email Tracking
DB
HELP OPERATOR
Reference Card
Storage
Switch Board
Help Staff 1..N
20
Download