Download Design Description

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Database model wikipedia , lookup

Object-relational impedance mismatch wikipedia , lookup

Clusterpoint wikipedia , lookup

Transcript
PARTool
Design Description
Version 1.0
Doc. No.:
Project Name: Profile Analysis and Reconciliation tool
Design Description
Version:
1.0
Date: 2011-10-26
Revision History
Date
2011-10-26
Version
0.9
Description
Initial Draft
Author
Matija
Hanžić
Inderjeet Singh
and
Page 3
Project Name: Profile Analysis and Reconciliation tool
Design Description
Version:
1.0
Date: 2011-10-26
Table of Contents
1.
Introduction
5
1.1
1.2
1.3
1.4
Purpose of this document
Intended Audience
Scope
Definitions and acronyms
1.4.1 Definitions
1.4.2 Acronyms and abbreviations
1.5 References
5
5
5
5
5
5
5
2.
External interfaces
5
3.
Software architecture
6
3.1
3.2
3.3
3.4
7
7
7
8
4.
Detailed software design
4.1
4.2
5.
Conceptual design
Software architecture in general
System specification
Error handling
Class Diagram
Communication
Approvals
9
9
10
11
Page 4
Project Name: Profile Analysis and Reconciliation tool
Design Description
1.
Version:
1.0
Date: 2011-10-26
Introduction
1.1
Purpose of this document
The purpose of this document is to give an insight into the design of PARTool. It will show the main
idea of how this project will be realized and also provide a more detailed view into its architecture.
1.2
Intended Audience
Intended audience for this document is:
 Project members
 Project supervisor
 Customer
1.3
Scope
The scope of this document is for the PARTool project only. It will show a system architecture which
is specific for this project and cannot be applied directly to other projects.
1.4
Definitions and acronyms
1.4.1
Definitions
Keyword
1.4.2
Definitions
Acronyms and abbreviations
Acronym or
abbreviation
PARTool
HTML
CSS
GUI
MVC
CDR
JS
Definitions
Profile analysis and reconciliation tool
HyperText Markup Language
Cascading Style Sheets
Graphical User Interface
Model, view and controller
Calls Details Records
JavaScript
1.5
References
2.
External interfaces
The External interface will be the GUI consisting of some web pages that could be accessible in all the
major browsers. The pages will be created by the use of HTML/CSS and JavaScript. Authentication
would be the initial page which will ask credentials form Agent to verify. Then there is next page
which will contain some things like setting parameter, selecting subscriber etc. Visualization library
will be used to display data on web page in the form of graphs. Figure 1 shows the login page.
Page 5
Project Name: Profile Analysis and Reconciliation tool
Design Description
Version:
1.0
Date: 2011-10-26
Figure 1
Figure 2
Figure 2 shows main page how the data will be displayed through graphs.
Page 6
Project Name: Profile Analysis and Reconciliation tool
Design Description
3.
Software architecture
3.1
Conceptual design
Version:
1.0
Date: 2011-10-26
`Figure 2
The system is designed with standard client-server architecture. Our application will be hosted on a
web server which is accessible over the internet. Only thing needed on the client’s side is a standard internet
browser. When a client request data from the server, server will connect to a database and retrieve the data client
requested. All data gathering and processing will be done on the server side. Client is only responsible for data
visualization of the data received from the server.
3.2
System Architecture in General
Page 7
Project Name: Profile Analysis and Reconciliation tool
Design Description
Version:
1.0
Date: 2011-10-26
Figure 3
The system will be divided mainly into 3 tiers, which is shown in the figure 3. Database tier contains
Database which will be in PostgreSql as given by customer. Above database there is application tier
where main logic exists. Application contains two main sub components i.e. core module which will be
responsible for main logic and will be written by using play web framework and security module that
will also use play web framework and will take care about data access through JDBC. Sub modules in
play will get the request from the Agent though GUI and then these two sub module will process it
based on request. The top tier is client which will be responsible for the getting input from agent and
displaying result. The GUI will be created by using the HTML/CSS and JavaScript language and
special library which is Raphaël will be used to create graphs.
3.3
System Specification
The concrete specification is now clear that is a mixture of specification given by customer and team
members. This is the web application with few web pages. So we decided to use HTML/CSS and
JavaScript for client side. As it is not complex web application we decided to use Play web framework
instead of JSF. Play web framework based on MVC concept. Glassfish will be web server on UNIX
machine. Database will be created in PostGreSql as said by customer. So the short summary of
specification is given below.
1.
2.
3.
4.
5.
GUI: HTML/CSS and JavaScript
Visualization: Raphaël JS library
Web Framework: Play ! based on MVC.
Web Server: Glassfish on UNIX machine
Database: PostGreSql
Page 8
Project Name: Profile Analysis and Reconciliation tool
Design Description
3.4
Version:
1.0
Date: 2011-10-26
Error handling
Error
Action
Database Connection Proper details would be sent
error
Visualization error
Agent will be notified with detail information
Runtime Error
Agent need to contact system administration
4.
Detailed software design
4.1
Class Diagram
Figure 4
In the figure 4, it shows the basic class diagram of Partool project. It consists of mainly four classes in which
one is isolated from other three which is only for authentication. Security module is also sort of independent in
this class which is provided by play web framework. Then agent_provide_info class is class used to display
information both from CDR_INFO and profile_detail, because it contains object of both the class which will be
empty in the beginning but filled after agent will ask for information through GUI. Where profile_detail
contains the information of profile of customer like customer imsi, customer number etc. CDR_info will be
responsible for the information related to CDR data like start call, end call etc. so agent_profile_info is
composed by both profile_details class and CDR_Info class.
4.2
Communication Overview
For our project it is very important to have an efficient communication schema to increase the response
time. To provide the agent with a more responsive interface and to avoid long page loads during which an agent
cannot do anything it has been decided that all the subscriber data will be requested using AJAX. For each
subscriber’s data there will be a separate AJAX request to the server. When the agent makes an initial request to
Page 9
Project Name: Profile Analysis and Reconciliation tool
Design Description
Version:
1.0
Date: 2011-10-26
access the main PARTool page the server will check to see if he is logged in and redirect him to a login page if
necessary.
Page 10
Project Name: Profile Analysis and Reconciliation tool
Design Description
5.
Version:
1.0
Date: 2011-10-26
Approvals
Name
Marin Orlić
Title
Date
yyyy-mm-dd
Signature
Supervisor
Page 11