Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 42

[Project]

SOFTWARE DESIGN SPECIFICATION

Project Code: PCV

Document Code: PCV-DD – v1.0

FU/002 Internal use 1/42


<Project code> - Software Design Specification vx.x

RECORD OF CHANGE

*A - Added M - Modified D – Deleted

Effective Changed Items A* Change Description New


Date M, D Version

17/11/2010 System Architechture A*

18/11/2010 Common Package A*

19/11

FU/002 Internal use 2/42


<Project code> - Software Design Specification vx.x

SIGNATURE PAGE

ORIGINATOR:<Name> <Date>

<Position>

REVIEWERS: <Name> <Date>

<Position>

<Name, if it’s needed> <Date>

<Position>

APPROVAL: <Name> <Date>

<Position>

FU/002 Internal use 3/42


<Project code> - Software Design Specification vx.x

TABLE OF CONTENTS

1 INTRODUCTION............................................................................................................6

1.1 Purpose.........................................................................................................................6
1.2 Definitions, Acronyms and Abbreviations.........................................................................6
1.3 References....................................................................................................................7
1.4 Overview.......................................................................................................................7
2 SYSTEM ARCHITECTURE..............................................................................................8

3 SCREEN FLOW..............................................................................................................9

4 COMMON PACKAGE AND MECHANISM.......................................................................10

4.1 Common package.........................................................................................................10


4.1.1 Class diagram...................................................................................................................10
4.1.2 XXX class.........................................................................................................................10
4.2 Error, exception handling..............................................................................................11
4.2.1 Class Diagram..................................................................................................................11
4.2.2 Usage mechanism............................................................................................................11
4.3 Log, trace and debug...................................................................................................11
4.4 Performance optimizing mechanism...............................................................................11
4.5 Multilingual processing..................................................................................................11
5 DIAGRAMS..................................................................................................................12

5.1 Customer management.................................................................................................12


5.1.1 Add customer...................................................................................................................12
5.1.2 Update customer..............................................................................................................13
6 PACKAGES..................................................................................................................14

6.1 xxx Package.................................................................................................................14


6.1.1 Class diagram...................................................................................................................14
6.1.2 External interface.............................................................................................................14
6.1.3 XXX class.........................................................................................................................14
6.2 ...................................................................................................................................15
7 DATABASE...................................................................................................................16

7.1 ERDs...........................................................................................................................16

FU/002 Internal use 4/42


<Project code> - Software Design Specification vx.x

7.2 XXX table.....................................................................................................................16


8 OTHER CONSIDERATIONS.........................................................................................18

9 APPENDIX...................................................................................................................19

FU/002 Internal use 5/42


<Project code> - Software Design Specification vx.x

1 INTRODUCTION

1.1 Purpose

This part will give general description of the document including:

 Purpose of document.

 What are contained in the doc

 Reader of document

 Other description about scope of document, limitation,...

Ex.

XXX class design document contains descriptions of all classes of the YYYY system
including:

Class diagrams that describe the static relation of all classes in the system

Dynamic diagrams such as collaboration diagram, sequence diagram, activities diagram

Description of class in detail

Common mechanism in implementing is also defined in this document

Developer and tester will base on this design to implement classes and unit test.

1.2 Definitions, Acronyms and Abbreviations

Abbreviations Description Comment

TBD To be decided It means “not decided yet”


Windows Windows Device Development Kit from Microsoft
DDK Development Kit to develop device driver for
Windows 2000/XP/Server 2003
OS
ESC/P Escape Printing A page description language

FU/002 Internal use 6/42


<Project code> - Software Design Specification vx.x

command used on Epson ink jet printers

1.3 References

List all the reference document such as: other document of the system, or the technical
article,...

Document Number Title

01 Data design document

1.4 Overview

General overview of the detail design such as what is the structure of the document

FU/002 Internal use 7/42


<Project code> - Software Design Specification vx.x

2 SYSTEM ARCHITECTURE

2.1 System Overview

report()
Control System

report()
logIn() validateLogIn

inputReport
requestNecessaryInformation()
Top Package::Operator vehicle
report()
emergencyService
traffic
solutionSelect replyRequest()
schedule
Top Package::databaseController

processAndProposeSolution()

Solution

Communication Interface

inform() requestEmergency() inform()


inform()

FU/002 Internal use 8/42


<Project code> - Software Design Specification vx.x

2.2 Context Model

Security System

Policemen Database

Control System

Reporter Operator

Maintenance System

This context model illustrate the structure of the PCV-CS System. We see that the Control
system connect to the Reporter, Policemen, Database. The Operator is incharge of control
system.

FU/002 Internal use 9/42


<Project code> - Software Design Specification vx.x

2.3 Sequence Model

Top Package::Reporter Top Package::Operator Top Package::Policemen


Database
Control System Policemen

Contact Connect

Confirm Connect

Respond

Report Input

Request Information

Transfer

Respond to Report Validate Report

Display
Send Request

Respond to Request
Send Information

Send Information

Send Feedback

Report

The Sequence Model Diagram that is shown the way the system and its context react in particular
way.

FU/002 Internal use 10/42


<Project code> - Software Design Specification vx.x

2.4 Class Diagram

Schedule GPS
-ID : long -Data
-Address : string * -Position
-Vehicle : Vehicle +showMap()
-Time : long +showCamera()
+getInform() -send

* -sendSchedule Operator
-ID
Report
-Name EmergencyServices
-ID : long -Date of Birth
-Type : string -ID : long
-Position
-ReporterName : string -Type : string
ControlSystem +getInformation() -Address : string -sendEmergencyServices
-Place : string -send
+send() -ID : long +getInform()
+sendTo() -accept -Operator : Operator * +call() *
-process Road
+saveToDB() * +acceptReport()
* -ID : long
+parseReport()
-accept call * -intervenedRoad : Road
-processSchedule* +validateReport()
-length : float
Vehicle -process +findSolution() *
* -call * -status : bool
-ID : long +sendAck()
* +callEmergency() * +getInform()
-Type : string
* +saveLog() *-processRoadInform +sendInform()
-Status : bool -sendRoadInform
-ack +view() * +updateInform()
-PoliceID : long *
-Area : long -send +acceptFeedback()
+showInformation() Message
*
+acceptAck() -ID : long
* -acceptFeedback *
+requestHelp() -Report : Report
-accept ack -Map
* -sendVehicleInform

Displayer

-parseVehicleInform
+showVehicleInformation() Log
+showReportInformation() * Feedback
* +showFeedback() -ID : long
-ProblemType -Operator : Operator
+showEmergencyServices() -SolutionPropose *
+showRoadMap() -parseEmergencyServices -Report : Report
+send() +create()
+saveToDB()
-parseRoadMap * * -sendFeedback

FU/002 Internal use 11/42


<Project code> - Software Design Specification vx.x

3 SCREEN FLOW

Log In

Subselect and
type additional
text here

Main Screen

Subselect and
type additional
text here

Incident Report Log create and


View Communication
save

Subselect and Subselect and Subselect and Subselect and


type additional type additional type additional type additional
text here text here text here text here

View Emergency
View Map View Vehicle
Service

Subselect and Subselect and Subselect and


type additional type additional type additional
text here text here text here

Figure 3.1 Screen Flow Diagram

No Screen Name Description

01 Log in Log in interface


02 Main Main window
03 Input Incidents Provide a form to Input Incidents
04 View Open a view window
05 Communication Open a communication window with a vehicle

FU/002 Internal use 12/42


<Project code> - Software Design Specification vx.x

06 Log create and save Provide a form to create log and save to
database
07 View Vehicle View the vehicle list
08 View Map View the map
09 View Emergency services View the Emergency Services

1. Log in screen

Log in

ID Agent1

Password **************

Log in Forgot your password

FU/002 Internal use 13/42


<Project code> - Software Design Specification vx.x

2. Main

Police Vehicle Command – Control System

Incidents Report View Vehicle Map Communication Save Log to DB

FU/002 Internal use 14/42


<Project code> - Software Design Specification vx.x

3. Incident Report

Reporter

Name Enter Text

ID Enter Text

Type of Fire Accident Terrioism


Incidents

Rate of Disastrous
incident

Place Enter Text

Specific help Enter Text

Send

4. View

FU/002 Internal use 15/42


<Project code> - Software Design Specification vx.x

a. View Map

Police Vehicle Map

Calculate Best Route Find out the nearest Car Reload the Database

FU/002 Internal use 16/42


<Project code> - Software Design Specification vx.x

b. View Vehicle

Police Vehicle Route Map

Next Previous Inform

c. View Emergency Services

5. Communication

FU/002 Internal use 17/42


<Project code> - Software Design Specification vx.x

6. Log create and save

Form Title

You are logging as Agent1 Signed Out

Update
Database

Update Cancel

FU/002 Internal use 18/42


<Project code> - Software Design Specification vx.x

4 COMMON PACKAGE AND MECHANISM

4.1 Common package

4.1.1 Class diagram

Schedule GPS
-ID : long -Data
-Address : string * -Position
-Vehicle : Vehicle +showMap()
-Time : long +showCamera()
+getInform() -send

* -sendSchedule Operator
-ID
Report
-Name EmergencyServices
-ID : long -Date of Birth
-Type : string -ID : long
-Position
-ReporterName : string -Type : string
ControlSystem +getInformation() -Address : string -sendEmerge
-Place : string -send
+send() -ID : long +getInform()
+sendTo() -accept -Operator : Operator * +call() *
+saveToDB() * +acceptReport() -process
+parseReport() *
-accept call *
-processSchedule* +validateReport()
Vehicle -process +findSolution() *
-ID : long * +sendAck() -call
-Type : string * +callEmergency() *
-Status : bool * +saveLog() -processRoadInform
*
-PoliceID : long -ack +view() *
*
-Area : long -send +acceptFeedback()
Road
+showInformation() *
+acceptAck() -ID : long
* -acceptFeedback * -intervenedRoad : Road
+requestHelp()
-accept ack -length : float
* -status : bool
* -sendVehicleInform
+getInform()
+sendInform()
-sendRoadInform +updateInform()

Displayer

-parseVehicleInform
+showVehicleInformation() Log
+showReportInformation() * Feedback
* +showFeedback() -ID : long
-ProblemType -Operator : Operator
+showEmergencyServices() -SolutionPropose *
+showRoadMap() -parseEmergencyServices -Report : Report
+send() +create()
+saveToDB()
-parseRoadMap * * -sendFeedback

FU/002 Internal use 19/42


<Project code> - Software Design Specification vx.x

No Class Name Description


01 ControlSystem The main class of the process. It accept data from the other classes,
process these data, find out the solution and send acknowledgement
to appropriate class.
02 Displayer Accept data from the other classes. Process and format, and display
them to user. Can display both text and non-text data.
03 EmergencyService Information about an Emergency service. It contains: services type,
their address, their status. You can call or getInformation about this
services.
04 Feedback Store the feedback information from the police vehicle sends back to
the control system. Control system can use this
05 GPS Store the information that requested from the GPS (Global
Positioning System). Its data is used to generate the map and the
traffic status
06 Operator Information store about the operator. It is used to create the log file.
07 Log Information about an incident that is created by the operator. It is an
aggregation of two classes: operator and report.
08 Report The class that is used to store the information about an incident that
provided from the Reporter or Policemen.
09 Road Store information about a road. It contain the length of the road, an
array of interconnected road, and their traffic status. It is used to
estimate the time and find out the best route
10 Schedule Store the schedule of patroling police vehicle in that day. It contains
the ID, address of the area,
11 Vehicle Store the information about a vehicle. It contains the ID, the vehicle
type, the Policemen ID that control that vehicle.
12 Message
4.1.2 ControlSystem class

The main class of the process. It accept data from the other classes, process these data,
find out the solution and send acknowledgement to appropriate class.

Attributes

No Attribute Type Defaul Note Description


t
01 ID Long Public The ID of for each session of operation

FU/002 Internal use 20/42


<Project code> - Software Design Specification vx.x

02 operator Operator Public The operator variable to store the information


about the operator that execute this session

Methods

No Method Description
01 acceptReport() Accept the report from the reporter (through phone, the Police
Reporter Machine, through radio wave…). It automatically send an
acknowledgement to reporter to inform they that the report have been
accepted. Otherwise, error code will be sent
02 parseReport() Parse the report to the information into an XML object format.
03 validateReport() Validate the report (using the XML object above) whether it is real or
not report. System connect to the database and using services provide
by the GPS, and other connected institution and universities. Operator
is in charge deciding whether real or unreal report.
04 damagedEstimate() If it is a real report, then the process proceed to this phase. Depend on
the information from XML object, it will calculate the estimate damaged
(properties damaged and humanities damaged). This function can be
called manually or automatically.
05 addToQueue() Add the incident to the queue according to its priortity
06 findSolution() This include these operation:

 Automatically choose from the queue of incidents, the highest


priority incident to process it.

 Solve the problem by: learning from the old log file (Artificial
Intelligent), problem analysis and estimate and proposed
solution.
07 sendAck() Send a message to a police vehicle through a communication interface.
This interface was built in the police system and not included in this
system. Some of type to transfer the message: internet, telephone
lines (fax), radio wave (WiMAX). The message contains the incident
details and the route to the incidents
08 callEmergency() Call for an emergency services, with the message object as above.
09 saveLog() Connect to the database to save the log file about the incident that has
been solved lately. This function can function in these mode:

 Automatically Mode: when there are many concurrent


incidents happen. The log file is automatically saved to the

FU/002 Internal use 21/42


<Project code> - Software Design Specification vx.x

database

 Behalf Mode: The Incidents information are temporarily save


on local disk. Operator can return later and manually save the
log file.

 Manual Mode: The save log form is open. It requires a one-


time log in to database. Log form is shown and operator fill in
this form manually and save to the database.
10 view() Open a view window. This function have several small windows:

 Map and Vehicle Position view

 Incident detail view


11 acceptFeedback() Accept the feedback. Send an acknowledgement back to an vehicle
that already send feedback. The feedback is resolve by returning to the
findSolution() module.
12 logIn() Log user in to the system.
13 logOut() Log user out the system.

<acceptReport()> method

Syntax: acceptReport(Report)

Accept the report from the reporter (through phone, the Police Reporter Machine, through radio
wave…). It automatically send an acknowledgement to reporter to inform they that the report have
been accepted. Otherwise, error code will be sent

Parameters & return

No Paramete Type In/ou Default Description


r t
01 Report Report The report object that the system is about to
accept

Implementation

How to implement the method, it can be in pseudo code or activity diagram or just words

<parseReport()> method

Syntax:parseReport(Report)

FU/002 Internal use 22/42


<Project code> - Software Design Specification vx.x

Parse the report into the XML format

Parameters & return

No Paramete Type In/ou Default Description


r t
01 Report Report The report object that the system is about to
accept

Implementation

How to implement the method, it can be in pseudo code or activity diagram or just words

4.1.3 Feedback
Store the feedback information from the police vehicle sends back to the control system. Control
system can use this information from the Feedback object to update the temporarily database and re-
process the system to find out the new solution.

Attributes

No Attribute Type Default Note Description


01 problemType String The problem type in the feedback. It may be:
traffic
02 solutionProposal String The solution propose by the sender. The system
will analyse and base on this proposal and propose
the solution

Methods

No Method Description
01 Send Send the information to the control system. When this function is
invoked, the most suitable transfer way is chosen.
4.1.4 EmergencyService class
Information about an Emergency service. It contains: services type, their address, their status. You
can call or getInformation about this services. This class is referenced by the police vehicle and the
control system. The police vehicle can send the request directly to the emergency services if they feel
that it is more convenient and faster instead of send the request back to the control system.

FU/002 Internal use 23/42


<Project code> - Software Design Specification vx.x

Attributes

No Attribute Type Defaul Note Description


t
01 ID Long The identification number of the emergency
services
02 serviceType String The service type provide by the emergency
services.
03 address String The address of the emergency services
04 phone String The phone number of the services

Methods

No Method Description
01 getInform() Get information about this services. Use to create a list of
appropriate services in control system to find out the solution.
02 acceptCall() An acknowledgement information from the emergency services send
back to the requester. It may express their status (ready, busy, out
of services etc….)
4.1.5 GPS class
Store the information that requested from the GPS (Global Positioning System). Its data is used to
generate the map and the traffic status.

Attributes

No Attribute Type Defaul Note Description


t
01 data Bitmap The data about the map store as bitmap
02 Position Point The position of each vehicle specifies in the vehicle
list by the control system

Methods

No Method Description
01 sendMap() Send the data to the displayer to display. Data is in bitmap format in
RGBA(32 bit) pixel color.
02 requestVehicle() Request vehicle list from the control system. The GPS system will
automatically locate each police vehicle in the list and send it back to
the control system in the map data.

FU/002 Internal use 24/42


<Project code> - Software Design Specification vx.x

4.1.6 Operator class


Information store about the operator. It is used to create the log file.

Attributes

No Attribute Type Default Note Description


01 ID Long The Identification Number of the operator that is
currently operate the system.
02 Name String The Name of the operator
03 dateOfBirth Date The date of birth of the operator
04 position String The position of the operator

Methods

No Method Description
01 getInformation Get the information about the operator. It is used to view the list of
operator and to save in the log file
4.1.7 Log class
Information about an incident that is created by the operator. It is an aggregation of two classes:
operator and report.

Attributes

No Attribute Type Default Note Description


01 ID Long The Identification Number of the Log object.
02 Operator Operator The Operator object that referenced to the
operator that create this log
03 Report Report The report object that create by the operator. This
can be create automatically, behalf, or manually

Methods

No Method Description
01 createLog() Create the log file. Temporarily save it on the hard disk. If in
automatically mode, the log file will be immediately saved to the
database. Otherwise, it is reserved for later use.

FU/002 Internal use 25/42


<Project code> - Software Design Specification vx.x

02 saveToDatabase() Save the log file to the database. This function is carried out after
the createLog() function has been invoked.
4.1.8 Report class
The class that is used to store the information about an incident that provided from the Reporter or
Policemen. This class is also used in other class such as Log class to save in database

Attributes

No Attribute Type Default Note Description


01 ID Long The Identification Number of the Report object.
02 Type String Usual The type of the incidents. Its type according to six
type of incidents type propose by the FBI of the
United States of America
03 Rating Long 0 The rating number is rate from 0 to 5. The bigger
the number the more dangerous the incident is.
04 reporterName String The name name of the reporter. The reporter can
be referenced later for further investigate
05 reporterID Long The reporter identification number
06 Place String The place where the incident takes place. This
information is provided by the reporter or the GPS
system (locate by using the telephone wave)

Methods

No Method Description
01 send() Broadcast the report in the system. This function invokes a
commnunication interface to transfer the data to the control system.
( telephone line, radio wave, WiMAX, 3G).
02 sendTo() Send the report file to a specific location that can process the data.
The sender can send report to the control system, or the other
vehicle or emergency services that support the PVC-CS system.
03 saveToDB() Save the report to the report database. Use for referenced later.
4.1.9 Road class
Store information about a road. It contain the length of the road, an array of interconnected road,
and their traffic status. It is used to estimate the time and find out the best route .

FU/002 Internal use 26/42


<Project code> - Software Design Specification vx.x

Attributes

No Attribute Type Default N Description


ot
e
01 ID Long The Identification Number of the Road object.
02 intervenedRoa Array An array of intervened road to this road. Use in the
d Djikstrak algorithm to calculate the minimum route.
03 length Float 0 The length of the road object.
04 status Boolean 1 The status of the road. It could be available or
(available) unavailable
05 trafficFlowRate Float The traffic flow rate of the road objec t in number
of vehicles/seconds

Methods

No Method Description
01 getInform() Return the information about the road object.
02 sendInfom() Send the information of this road object for further processing.
03 UpdateIn Save the report to the report database. Use for referenced later.
4.1.10 Schedule class
Store the schedule of patroling police vehicle in that day. It contains the ID, address of the area, the
police vehicle ID that patrol that area and the time. This class is used for choosing the appropriate list
of police vehicles to send to the incidents place.

Attributes

No Attribute Type Default N Description


ot
e
01 ID Long The Identification Number of the Schedule object.
02 area String Area that the police vehicle is patrolling
03 policeID Long The police vehicle ID that is patrolling in the area.
04 time Time The time of the tour of duty of the police vehicle

Methods

No Method Description
01 getInform() Return the information about the schedule object.

FU/002 Internal use 27/42


<Project code> - Software Design Specification vx.x

02 sendInfom() Send the information of this schedule object for further processing.
4.1.11 Vehicle class
Store the information about a vehicle. It contains the ID, the vehicle type, the Policemen ID that
control that vehicle.

Attributes

No Attribute Type Default N Description


ot
e
01 ID Long The Identification Number of the Vehicle object.
02 Schedule Schedule The schedule object relate to this Vehicle. This
schedule object is changed every day.
03 policeID Long The police id that control this vehicle
04 status Boolean The status of this vehicle whether available or not
05 type String The type of the vehicle

Methods

No Method Description
01 getInform() Return the information about the Vehicle object.
02 sendInfom() Send the information of this Vehicle object for further processing.
03 acceptAck() Send back an acknowledgement to the control system if the vehicle
is received the message (there is no signal loss).
4.1.12 Message class
Store the information message. The message object is sent back and forth to the police vehicle and
the control system. It contains the information about the incidents, and the best route to the
incidents place generate by the system.

Attributes

No Attribute Type Default N Description


ot
e
01 ID Long The Identification Number of the Message
02 Report Report The report object that is sent to the police vehicle
contain the details about the incidents
03 Map Bitmap The bitmap that generate

FU/002 Internal use 28/42


<Project code> - Software Design Specification vx.x

Methods

No Method Description

4.2 Error, exception handling

4.2.1 Class Diagram

Describe class like in common package

4.2.2 Usage mechanism

Common mechanism of exception handling

4.3 Log, trace and debug

4.4 Performance optimizing mechanism

4.5 Multilingual processing

FU/002 Internal use 29/42


<Project code> - Software Design Specification vx.x

5 DIAGRAMS

This is the chart of some functionality in the system.

Incidents Report and Validate System

Incidents Handler System


Validate Log in

Input Incidents

View Vehicle Map

Call for Emergency

Communicate with
Operator Vehicle
Reporter Policemen
Report Traffic

Save Log to DB

Send Information Report Incidents

Connect

Database System Emergency Services System


Input New Vehicles

Accept Message

traffic Information
Send Information Call Emergency
Database Controller Force

Patrol Schedule Emergency Services Operator


Feedback to
Connect
Control System

Input Emergency
Services

5.1 Incidents Report and Validate System

5.1.1 Report a incidents

FU/002 Internal use 30/42


<Project code> - Software Design Specification vx.x

srcReportIncident

1: validateReport()

createReport()
Control Systems IncidentsDatabase

logIn()
sendBackFeedback()
validateLogIn()

temporarilySaveReport()
saveReportIncident()

Figure 1 Report an Incident sequence diagram

5.1.2 Report Traffic

srcTrafficIncident

createTrafficReport()
Control Systems TrafficDatabase

logIn()
sendBackFeedback()
validateLogIn()

saveTrafficIncident()

Figure 2 Traffic Report Sequence Diagram

FU/002 Internal use 31/42


<Project code> - Software Design Specification vx.x

5.2 Incidents Handler System

5.2.1 Log in

Control System Account Database

ID + password

validateAccount()

acceptLogIn()

Top Package::Operator

Figure 3. Log in Sequence diagram

5.2.2 View Vehicle Map

Control System GPS System Vehicle Database Scheduler Database

requestData()

sendData()
requestVehicleList()

sendData()
requestData()

sendData()
Top Package::Operator

processDisplay()

Figure 4. View Vehicle Map sequence diagram

5.2.3 Communication with Vehicle

FU/002 Internal use 32/42


<Project code> - Software Design Specification vx.x

Control System
Communication Interface

send send()
Vehicle

Top Package::Operator

Figure 5. Communication with Vehicle Diagram

5.2.4 Save Log to DB

FU/002 Internal use 33/42


<Project code> - Software Design Specification vx.x

Control System Account Database Log Database

validateLogIn()

returnValidateResult()

createLogFile()

user id + password
saveToDatabase()
Top Package::Operator
saveFinishAck()

Figure 6. Save Log to Database sequence diagram

FU/002 Internal use 34/42


<Project code> - Software Design Specification vx.x

6 PACKAGES

No Package Language Description


01 <package C++, Java <brief description of package; can be one sentence tell what the
name> method does>

6.1 xxx Package

6.1.1 Class diagram

<Class diagram figure>

No Class Name Description


01 <Name of class> <Brief description about class ex. One sentence to tell what the class
is for, what does it encapsulate>
6.1.2 External interface

Describe the external interface of the package (exported classes, methods).

6.1.3 XXX class

<Class description>

Attributes

No Attribute Type Default Note Description


01 <Attribute int Public/ <Description of attribute>
name> Static

Methods

No Method Description
01 <method name> <brief description of method. can be one sentence tell what the

FU/002 Internal use 35/42


<Project code> - Software Design Specification vx.x

method does>

xxxx method

<Method declaration>

<method description, it must be compliance with the brief description in the upper class list>

Parameters & return

No Paramete Type in/out Default Description


r
01 <paramete int <Description of parameter, the special
r name> criteria such as boundary should be stated>

<return >

Implementation

<How to implement the method, it can be in pseudo code or activity diagram or just words>

6.2 ......

FU/002 Internal use 36/42


<Project code> - Software Design Specification vx.x

7 DATABASE

Sơ đồ quan hệ ERD (khác với class diagram) . Nó dùng để lưu trữ dữ liệu ghi thật sự xuống
database

7.1 ERDs

No Table Name Description

01 tblOperator List of Operator


02 tblVehicle List of Vehicle
03 tblEmergencyService List of Emergency Services
s
04 tblRoad List of road
05 tblReport List of report
06 tblLog List of Log

FU/002 Internal use 37/42


<Project code> - Software Design Specification vx.x

7.2 tblOperator

No Field Name Type P/F Default Description


Key

01 ID int Code of Operator.


Autonumber
02 Name Text Name of operator
03 dateOfBirth Date/time Date of birth
04 Position Text Position of the
operator

7.3 tblVehicle

No Field Name Type P/F Default Description


Key

01 ID Number Code of Vehicle.


Autonumber
02 Schedule Schedule The schedule object
of this vehicle
03 policeID Number The id of the police
that control this
vehicle
04 Status Boolean Status of this vehicle
05 Type Text Type of this vehicle

7.4 tblEmergencyServices

No Field Name Type P/F Default Description


Key

01 ID int Code of
EmergencyServices.

FU/002 Internal use 38/42


<Project code> - Software Design Specification vx.x

Autonumber
02 serviceType Text Name of the services
03 Address Text Address of the
services
04 Phone Number The phone number
of this services

7.5 tblRoad

No Field Name Type P/F Default Description


Key

01 ID int Code of Road.


Autonumber
02 roadName Text Name of road
03 interveneRoad Array List of intervened
road with this
road
04 Length Number Length of this
road
05 Status Boolean The traffic status
of this road
06 trafficFlowRate Number The traffic flow
rate of this road

7.6 tblReport

No Field Name Type P/F Default Description


Key

01 ID int Code of Report.


Autonumber
02 Type Text Type of the incident
03 Rating Number Rating of this
incident
04 reporterNam Text Name of the reporter

FU/002 Internal use 39/42


<Project code> - Software Design Specification vx.x

e
05 reporterID Number The ID number of
reporter
06 Place Text The place where the
incident happened
07 roadID Number The road ID nearest
to the incident

7.7 tblLog

No Field Name Type P/F Default Description


Key

01 ID int Code of Log.


Autonumber
02 operatorID Number ID of the operator
03 reportID Number ID of the report
04 emergencyS Number ID of the emergency
ervices Services
05 policeID Number The ID of the police

FU/002 Internal use 40/42


<Project code> - Software Design Specification vx.x

8 OTHER CONSIDERATIONS

<[This section provides a description of other design elements that were considered as alternatives
in selection process for the above class design, i.e. a brief explanation of advantages and
disadvantages of the selected package relationships and/or class implementation in comparison
with others. It should be a clear answer to the question why the above class design is selected for
this system, not the others.>

FU/002 Internal use 41/42


<Project code> - Software Design Specification vx.x

9 APPENDIX

FU/002 Internal use 42/42

You might also like