Uploaded by kajanan thevaraja

ilide.info-database-design-and-development-assignment-pr 48bc931bd31951a96548dbfa8c294053

advertisement
Higher Nationals
Internal verification of assessment decisions – BTEC (RQF)
INTERNAL VERIFICATION – ASSESSMENT DECISIONS
Programme title
Assessor
HND in Computing
Internal
Verifier
Unit 04: Database Design & Development
Unit(s)
Data base system for the SmartMovers Transport Company
Assignment title
A G Dinithi Nimesha Ranathunga
Student’s name
List which assessment criteria
the Assessor has awarded.
Pass
Merit
Distinction
INTERNAL VERIFIER CHECKLIST
Do the assessment criteria awarded match
those shown in the assignment brief?
Y/N
Is the Pass/Merit/Distinction grade awarded
justified by the assessor’s comments on the
student work?
Has the work been assessed
accurately?
Y/N
Y/N
Is the feedback to the student:
Give details:
• Constructive?
Y/N
Y/N
Y/N
• Linked to relevant assessment criteria?
• Identifying opportunities for improved
performance?
• Agreeing actions?
Does the assessment decision need
amending?
Y/N
Y/N completed
Confirm action
Remedial action taken
Assessor
signature
Give
details:
Date
Internal Verifier
signature
Assessor
signature
Programme Leader signature (if required)
Internal Verifier
signature
Date
Date
Date
Date
Programme Leader
signature (if required)
A.G.D.N.Ranathunga
01
Date
1
Database Design & Development
Assignment No.
grades decisions have been agreed at the assessment board.
Assignment Feedback
Formative Feedback: Assessor to Student
A.G.D.N.Ranathunga
01
2
Database Design & Development
Assignment No.
Action Plan
Summative feedback
Feedback: Student to Assessor
Assessor
signature
Date
Student
signature
Date
A.G.D.N.Ranathunga
01
3
Database Design & Development
Assignment No.
Pearson Higher Nationals in
Computing
Unit 04: Database Design & Development
Assignment 01
General Guidelines
1.
A Cover page or title page – You should always attach a title page to your assignment. Use
previous page as your cover sheet and make sure all the details are accurately filled.
2.
Attach this brief as the first section of your assignment.
A.G.D.N.Ranathunga
01
4
Database Design & Development
Assignment No.
3.
All the assignments should be prepared using a word processing software.
4.
All the assignments should be printed on A4 sized papers. Use single side printing.
5.
Allow 1” for top, bottom , right margins and 1.25” for the left margin of each page.
Word Processing Rules
1. The font size should be 12 point, and should be in the style of Time New Roman.
2. Use 1.5 line spacing. Left justify all paragraphs.
3. Ensure that all the headings are consistent in terms of the font size and font style.
4. Use footer function in the word processor to insert Your Name, Subject, Assignment No,
and Page Number on each page. This is useful if individual sheets become detached for any
reason.
5. Use word processing application spell check and grammar check function to help editing
your assignment.
Important Points:
1. It is strictly prohibited to use textboxes to add texts in the assignments, except for the
compulsory information. eg: Figures, tables of comparison etc. Adding text boxes in the body
except for the before mentioned compulsory information will result in rejection of your
work.
2. Carefully check the hand in date and the instructions given in the assignment. Late
submissions will not be accepted.
3. Ensure that you give yourself enough time to complete the assignment by the due date.
4. Excuses of any nature will not be accepted for failure to hand in the work on time.
5. You must take responsibility for managing your own time effectively.
6. If you are unable to hand in your assignment on time and have valid reasons such as illness,
you may apply (in writing) for an extension.
7. Failure to achieve at least PASS criteria will result in a REFERRAL grade .
8. Non-submission of work without valid reasons will lead to an automatic RE FERRAL. You will
then be asked to complete an alternative assignment.
9. If you use other people’s work or ideas in your assignment, reference them properly using
HARVARD referencing system to avoid plagiarism. You have to provide both in-text citation
and a reference list.
10. If you are proven to be guilty of plagiarism or any academic misconduct, your grade could be
reduced to A REFERRAL or at worst you could be expelled from the course
Student Declaration
A.G.D.N.Ranathunga
01
5
Database Design & Development
Assignment No.
I hereby, declare that I know what plagiarism entails, namely to use another’s work and to present
it as my own without attributing the sources in the correct form. I further understand what it
means to copy another’s work.
1. I know that plagiarism is a punishable offence because it constitutes theft.
2. I understand the plagiarism and copying policy of Edexcel UK.
3. I know what the consequences will be if I plagiarise or copy another’s work in any of the
assignments for this program.
4. I declare therefore that all work presented by me for every aspect of my program, will be my
own, and where I have made use of another’s work, I will attribute the source in the correct
way.
5. I acknowledge that the attachment of this document signed or not, constitutes a binding
agreement between myself and Pearson, UK.
6. I understand that my assignment will not be considered as submitted if this document is not
attached to the assignment.
Anua009183@esoft.academy
Student’s Signature:
(Provide E-mail ID)
Date: 14-05-2021
(Provide Submission Date)
Higher National Diploma in Computing
Assignment Brief
A.G.D.N.Ranathunga
01
6
Database Design & Development
Assignment No.
Student Name /ID Number
A G Dinithi Nimesha Ranathunga 009183
Unit Number and Title
Unit 4: Database Design & Development
Academic Year
2020/21
Unit Tutor
MR. H N B Herath
Assignment Title
Data base system for the SmartMovers Transport
Company
Issue Date
Submission Date
04-05-2021
IV Name & Date
Submission format
Part 1: The submission should be in the form of an individual written report written in a
concise, formal business style using single spacing and font size 12. You are required to
make use of headings, paragraphs and subsections as appropriate, and all work must be
supported with research and referenced using Harvard referencing system. Please also
provide in-text citation and bibliography using Harvard referencing system. The
recommended word limit is 3,000–3,500 words, although you will not be penalised for
exceeding the total word limit.
Part 2: The submission should be in the form of a fully functional relational database
system demonstrated to the Tutor; and an individual written report (please see details in
Part 1 above).
Part 3: The submission should be in the form of a witness statement of the testing
completed by the Tutor; technical documentation; and a written report (please see
details in Part 1 above).
Unit Learning Outcomes:
LO1 Use an appropriate design tool to design a relational database system for a
substantial problem.
LO2 Develop a fully functional relational database system, based on an existing system
design.
LO3 Test the system against user and system requirements.
LO4 Produce technical and user documentation.
Assignment Brief and Guidance:
A.G.D.N.Ranathunga
01
7
Database Design & Development
Assignment No.
Assignment brief
Case study
You are employed as a Database Developer for a large IT development company. The
company has been approached by a transport company called SmartMovers which
has grown to a level where they need to have an automated system to handle day
today operational activities to meet customer demands. You are given the job to
design and develop a database solution for SmartMovers to meet their business
requirements. The company transports chemical products from one location to
another on behalf of registered customers. Customers are of three types namely
Catogory1, 2 and 3. Each customer is given a unique customer number and his or her
details have to be recorded in the system.
Each transport operation is called a job, which involves picking up one or more loads
of the products from a customer requested start location and delivers it to a customer
requested destination. A unique number is given for each job and for each load when
they are created.
A Load is transported using a particular transport unit, which consists of a lorry, a
driver, assistant, and a container (for carrying the product) A container is fixed to a
trailer so it needs to be coupled to a lorry at the start of a Job. (Single container can
transport only one chemical product due to safety requirements)
Payments for a job depends on customer type, product type (No Risk, High risk) and
the load type (small, medium and large). Transport operations are run from 9 regional
depots. Jobs are allocated to individual depots to service. Depots hold, manage and
maintain their own transport units which are permanently allocated to them to
service Jobs. Normally transport units are held at the base Depot they belong.
The final system should be able to provide the required information for management
decision making and to handle daily operations efficiently and effectively.
A.G.D.N.Ranathunga
01
8
Database Design & Development
Assignment No.
A.G.D.N.Ranathunga
01
9
Database Design & Development
Assignment No.
Activity 1
Design and produce a comprehensive database design document for the above
scenario and it should cover the below mentioned points.
1)
•
•
•
•
•
•
User and system requirements
Complete normalized(up to 3rd normal form) ER Diagram
Complete Logical database design.
Validations that used to validate data in the tables
Simple interfaces to input and output data to the tables
Critical evaluation and access the effectiveness of the user and system
requirements with the database design
Activity 2
2)
Develop a comprehensive database system based on the database design
document which is provided under Activity 1
•
Implement the database according to the provided ER diagram and use DDL
statements.
•
Implement a GUI based system to view,insert,update,delete data in the tables.
•
Implement validation methods explained in the Activity 1.
•
Implement join queries display the details payment with the job details and the
customer details
•
Implement and access DML (select,update,delete) by giving meaningful examples
from the developed database
•
Explain and implement the security mechanisms in the developed database(EX:
User groups, access permissions).
•
Explain and implement the below mentioned SQL statements from the developed
database by giving meaningful examples.
•
(Group by,Order by,Having,Between,Where)
A.G.D.N.Ranathunga
01
10
Database Design & Development
Assignment No.
Activity 3
3) Test the developed database system which has created in the Activity 2.
•
•
•
•
Create a test plan to test the system against user and system requirements.
Create test cases to test the developed database.
Explain and access how the selected test data can be used improve the
effectiveness of testing.
Get independent feedback and evaluate the effectiveness on the developed
database solution from the non-technical users and some developers.
Activity 4
4) Produce a technical documentation for the developed database system that
contains a user guide, UML diagrams (Use case diagram, class diagram, flow charts,
DFD level 0 and 1) and evaluate the database suggesting future enhancements to
be implemented to ensure continuous effectiveness of the system.
A.G.D.N.Ranathunga
01
11
Database Design & Development
Assignment No.
Grading Criteria
Achieved
Feedback
LO1 Use an appropriate design tool to design a relational
database system for a substantial problem
P1 Design a relational database system using appropriate
design tools and techniques, containing at least four
interrelated tables, with clear statements of user and
system requirements.
M1 Produce a comprehensive design for a fully functional
system that includes interface and output designs, data
validations and data normalization.
D1 Assess the effectiveness of the design in relation to user
and system requirements.
LO2 Develop a fully functional relational database system,
based on an existing system design
P2 Develop the database system with evidence of user
interface, output and data validations, and querying across
multiple tables.
P3 Implement a query language into the relational database
A.G.D.N.Ranathunga
01
12
Database Design & Development
Assignment No.
system
M2 Implement a fully functional database system that
includes system security and database maintenance.
M3 Assess whether meaningful data has been extracted
using query tools to produce appropriate management
information.
LO3 Test the systems against user and system requirements
P4 Test the system against user and system requirements.
M4 Assess the effectiveness of the testing, including an
explanation of the choice of test data used.
LO2 & LO3
D2 Evaluate the effectiveness of the database solution in
relation to user and system requirements, and suggest
improvements.
LO4 Produce technical and user documentation
P5 Produce technical and user documentation.
M5 Produce technical and user documentation for a fully
functional system, including diagrams showing movement
of data through the system, and flowcharts describing how
the system works.
A.G.D.N.Ranathunga
01
13
Database Design & Development
Assignment No.
D3 Assess any future improvements that may be required
to ensure the continued effectiveness of the database
system.
Table of Contents
List of figures………………………………………………………………………………………..
………………………………………19
Task 01……………………………………………………………………………………………………………………………….20
1.1 Database ……………………………………………………………………………………………………………………..20
A.G.D.N.Ranathunga
01
14
Database Design & Development
Assignment No.
1.2 Comparison between manual & electronic database …………………………………………………..21
1.3 Advantages & disadvantages of using electronic database …………………………………………..21
1.4 What is a Database Management System (DBMS)? ………………………………………………..22
1.5
Types
of
requirement………………………….………………………….
……………………………………….23
1.5.1 User Requirements ………………………….………………………….……………………………
23
1.5.2 System requirements ………………………….……………………………………………………
24
1.6
Identifying
key
fields
………………………….………………………….
normalization?
………………………….………………………….
………………………………………..25
1.7
What
is
…………………………………….27
1.8 Entities ………………………….………………………….………………………….………………………………………31
1.9 Attributes ………………………….………………………….………………………….………………………………….31
1.10 Primary keys ………………………….………………………….………………………………………………….31
2.1 Interfaces to input and output data ………………………….………………………….………………………33
2.2 SQL DDL statements ………………………….………………………….…………………………………………
37
3.1
Validation
mechanism
………………………….………………………….
……………………………………..42
3.1.2 Validation methods ………………………….………………………….……………………………………………42
3.2
Join
query
………………………….………………………….………………………….
…………………………….44
3.3 Test plan ………………………….………………………….………………………….……………………………………44
3.3.1
Levels
of
testing
………………………….………………………….
………………………………………………….45
A.G.D.N.Ranathunga
01
15
Database Design & Development
Assignment No.
4.1
User
manual
………………………….………………………….
…………………………………………………….48
4.2 UML ………………………….………………………….………………………….…………………………………….49
4.2.1
Use
case
diagram
………………………….………………………….
………………………………………….49
4.2.2 Flow charts ………………………….………………………….………………………….…………………………….51
List of figures
Figure 1: Types of database ………………………….………………………….…………………………………………
20
Figure 2: Types requirements ………………………….………………………….………………………………………
23
Figure 3: software requirements categorized by logically ………………………….……………………….25
Figure
4:
ER
diagram
………………………….………………………….………………………….
………………………..30
Figure 4: Logical design ………………………….………………………….………………………………………………32
Figure 5: Customer User Interface ……..………………………….………………………………………………….33
Figure 6: Job user interface ………………………….………………………….…………………………………………33
Figure 7: Payment user interface ………………………….………………………….………………………………..34
Figure 9: Load user interface ………………………….………………………….………………………………………35
Figure
10:
Depot
user
interface
………………………….………………………….
…………………………………..35
Figure
11:
Transport
unit
user
interface
………………………….
………………………………………………….36
Figure
12:
SQL
server
DDL
statement
for
customer
table
………………………….
………………………..37
Figure 13: SQL server DDL statement for Job table ………………………….…………………………………38
A.G.D.N.Ranathunga
01
16
Database Design & Development
Assignment No.
Figure
14:
SQL
server
DDL
statement
for
Payment
table
………………………….
………………………….39
Figure 15: SQL server DDL statement for Product table ………………………….………………………….39
Figure
16:
SQL
server
DDL
statement
for
Load
table
………………………….
……………………………….40
Figure 17: SQL server DDL statement for Depot table …………………………………………………………
40
Figure 18: SQL server DDL statement for Transport unit table ………………………………………….
….41
Figure
19:
range
check
………………………….………………………….………………………….
…………………….42
Figure 20: drop down box ………………………….………………………….……………………………………………
43
Figure
22:
Testing
login
1
………………………….………………………….
login
2
………………………….………………………….
…………………………………………….45
Figure
23:
Testing
…………………………………………….46
Figure
24:
Testing
deleting
details
………………………….………………………….
……………………………….46
Figure 25: Testing deleting actual result ………………………….………………………….………………………
46
Figure
26:
User
manual
………………………….………………………….
……………………………………………….47
Figure 27: Use case diagram ………………………….………………………….……………………………………….50
Figure 28: Flowchart ………………………….………………………….…………………………………………………..51
Task 01
1.1 Data Base
A.G.D.N.Ranathunga
01
17
Database Design & Development
Assignment No.
Data
- Raw fact or unorganized form. (Such as alphabets, numbers or symbols)
Information- Knowledge, Intelligence, a particular piece of data with a special meaning of
a function.
i.
A database is a collection of related data.
(A shared collection of logically related data and a description of this data, designed to
meet the information needs of an organization.)
There are two types of database.
DATABASE
Manual
database
Electronic
database
Figure 1: Types of database
Source : Author developed
Manual Database
A manual database is a hard-file storage system that consists of paper records, folder and
filling cabinets or storage boxes.
(Staff, W.2020)
Electronic Database
An electronic database is, any collection of data or information, that is specially organized for
rapid search, update, delete and retrieve by computer.
1.2 Comparison between manual & electronic databaseX
A.G.D.N.Ranathunga
01
18
Database Design & Development
Assignment No.
Manual Database
- limited storage space available
- difficult to access
- very difficult to share
Electronic database
- can store very large amount of data
- allow easy input and editing of data
- sharing is very easy
- allow centralized use of information
- extra cost of storing multiple copies
- worse when new items are frequently
amongst many users over a network
being inserted or deleted
- improved backup and recovery services
- less data security
- data security is very high
- data inconsistency
- data consistency
Table 1: Manual database and electronic database comparison
Source: author developed
1.3 Advantages & disadvantages of using electronic database
XAdvantages
Disadvantages
- Data independence
- Efficient data access
- Data integrity and security
- Data administration
- Concurrent access and crash recovery
- reduced application development time
- Complexity
- Size
- Cost of DBMS system
- Additional hardware costs
- Cost of conventions
- Higher impact of failure
Table 2: advantages and disadvantages of electronic database
Source: author developed
Uses of database

Store large number of records

Read and modify data

Atomicity

Secured data collection
A.G.D.N.Ranathunga
01
19
Database Design & Development
Assignment No.
Components of database system
-
Hardware
-
Software
1. DMBS
2. Application software
-
People
1. Users
2. Practitioners
-
data
1.4 What is a Database Management System (DBMS)?
A Database Management System (DBMS) is a software designed by using technology to
store, retrieve, define and manage data in a database.
What is a requirement?
Requirements convey the expectations of users from the software. The requirements can be
known or unknown, obvious or hidden, expected or unexpected from client’s point of view.
1.5 Types of requirements
A.G.D.N.Ranathunga
01
20
Database Design & Development
Assignment No.
Requirments
User
Requirements
System
Requirments
Software
Specification
Hardware
specification
Figure 2: Types requirements
Source: Author developed
1.5.1 User Requirements
Simply, user requirements can be referred as user needs. It describes what the user does with
the system.
In a database system, identifying user requirements are the main task. According to the above
scenario of smart movers, there are can be identified a lot of user requirements.
i.
Finding customer details
ii.
Daily reports should be created
iii.
Generating daily cash flow
iv.
Preparing employee’s salary sheets
v.
Managing transportation details
vi.
Finding details about daily loads and daily jobs
vii.
Generating month end reports
viii.
Generating daily payment reports
ix.
Find available driver details.
x.
Getting security alert details
xi.
Store records for future needs
A.G.D.N.Ranathunga
01
21
Database Design & Development
Assignment No.
In the above scenario all these user requirements should be fulfilled for future usage to take
best decisions, improve customer service and improve software effectiveness.
User requirements can be defined using natural language, charts, tables and diagrams.
1.5.2 System requirements
The system requirements define what software programs or hardware devices should require
to operate the program.
-
Software requirement
Gathering software requirement is a main task of a software development process. In
the given scenario following are some of software requirements.
Functional Requirements
i.
Searching requested details
ii.
Printing requested invoices
iii.
Comply administrative functions
Non-functional requirements
i.
Security
ii.
Storage
iii.
Logging
iv.
Performance
v.
Cost
vi.
Accessibility
vii.
Maintenance
viii.
Disaster recovery
Windows operating system is a good OS for run a database system.
According to above scenario above software requirements should be considered.
There are four types of requirements which are categorized logically as,
A.G.D.N.Ranathunga
01
22
Database Design & Development
Assignment No.
Figure 3: software requirements categorized by logically
Source: lecture presentation
-
Hardware requirement
To run a database system very efficiently there are should be very good hardware
devices.
i.
There should be much hard disk space
ii.
To run the system fast can be used a SSD
iii.
A RAM which can handle database process
iv.
A processor which can handle a database.
1.6 Identifying key fields
Identifying key field for tables is the main task of creating a database.
A key is an attribute or set of attributes which helps to identify a row (tuple) in a relation
(table). Keys allow to find the relationship between two tables. Several types of keys can be
defined in DBMS as per those;
1. Super key
A super key is a loop of single or multiple keys which identifies row in a table. A
super key may have additional attributes which are not needed for identification.
A.G.D.N.Ranathunga
01
23
Database Design & Development
Assignment No.
2. Candidate key
Candidate key is a set of attributes that uniquely identify tuples in a table. It is a super
key with no repeated attributes. The primary key should be selected from the
candidate keys. Every table must have at least a single candidate key.
3. Primary key
Primary key is the attribute or set of attributes which uniquely identify every tuple in
the table. The values of the primary key cannot be repeated. The table cannot have
more than one primary key.
4. Alternate key
A table can have multiple choices for a primary key but only one can be set as the
primary key. All the keys which are not set as primary key are known as alternate
keys.
5. Composite key
Composite key is a combination of two or more attributes which uniquely identify
rows in a table.
6. Foreign key
Foreign key is an attribute that create a relationship between two tables. It acts as a
cross reference between two tables and a foreign key always references the primary
key of another table.
Source: (Lecture notes, 03rd January 2021)
A.G.D.N.Ranathunga
01
24
Database Design & Development
Assignment No.
1.7 What is normalization?
Normalization is a database design technique that reduces data redundancy and eliminates
undesirable characteristics like Insertion, Update and Deletion Anomalies. Normalization
rules divides larger tables into smaller tables and links them using relationships. The purpose
of Normalization in SQL is to eliminate redundant (repetitive) data and ensure data is stored
logically.
(guru99, 2021)
Normalization with examples
1. 1NF (FIRST NORMAL FORM)
Stu_I
D
Stu_name Stu_contact
001
Kamal
Perera
002
Nimal
Silva
003
Saman
Bandara
0774635001,
0257880480
0711825400,
0754848500
1
0662284418,
0725845875
crc_I
D
crc00
5-Jun-97
1
dob
crc_fee
crc_duratio
n
Teacher
Rs.
150,000.00
6 months
Jehan
Fernando
5-Jun-98
crc00
1
Rs.
150,000.00
6 months
Jehan
Fernando
25-Apr-96
crc00
2
Rs.
200,000.00
10 months
Suesh
Bandara
Table 3: example for 1NF
Source: author developed
In 1NF each cell should contain a single value and each record needs to be unique.
2. 2NF (SECOND NORMAL FORM)
-
It should be in first normalized form.
-
Partial dependencies must be removed.
-
Primary keys must be selected for separated tables.
A.G.D.N.Ranathunga
01
25
Database Design & Development
Assignment No.
Student Table
Stu_I
D
001
002
003
Fname
Lname
Kamal
Nimal
Saman
Perera
Silva
Bandara
Stu_contact1 Stu_contact2 dob
774635001
711825400
662284418
257880480
7548485001
725845875
5-Jun-97
5-Jun-98
25-Apr-96
Table 4: example for 2NF
Source: author developed
Primary Key : Stu_ID
Course Table
crc_ID
crc00
1
crc00
1
crc00
2
crc_fee
crc_duration
Rs. 150,000.00
6 months
Rs. 150,000.00
6 months
Rs. 200,000.00
10 months
Teacher
Jehan
Fernando
Jehan
Fernando
Suesh
Bandara
Table 4: example for 2NF
Source: author developed
3. 3NF (THIRD NORMAL FORM)
It should be in second normalized form and existing transitive dependencies must be
removed.
A.G.D.N.Ranathunga
01
26
Database Design & Development
Assignment No.
Student Table
Stu_I
D
Fname
Lname
Stu_contact
1
001
Kamal
Perera
774635001
257880480
002
Nimal
Silva
711825400
7548485001
003
Saman
Bandara
662284418
725845875
Stu_contact2 dob
crc_ID
5-Juncrc001
97
5-Juncrc001
98
25crc002
Apr-96
Table 4: example for 3NF
Source: author developed
Course Table
crc_ID
crc00
1
crc00
1
crc00
2
crc_fee
crc_duration
Rs. 150,000.00
6 months
Rs. 150,000.00
6 months
Rs. 200,000.00
10 months
Teacher
Jehan
Fernando
Jehan
Fernando
Suesh
Bandara
Table 4: example for 3NF
Source: author developed
A.G.D.N.Ranathunga
01
27
Database Design & Development
Assignment No.
Assist_ID
Driver_ID
TUnit_ID
Container_ID
Lorry_No
Depot_ID
Depot_na
me
Depot_loc
Pay_ID
Figure 4: ER diagram
Source: author developed
A.G.D.N.Ranathunga
01
28
Database Design & Development
Assignment No.
1.8 Entities
1. Customer
2. Job
3. Payment
4. Product
5. Load
6. Depot
7. Transport unit
1.9 Attributes
1. Customer – (Cus_ID, Cus_lname, Cus_fname, Cus_address1, cus_address2,
Cus_contact , Cus_type)
2. Job – (Job_ID, Job_date, depot_ID, Cus_ID, start_loc, end_loc)
3. Payment – (Pay_ID, Load_type, Cus_type, product_type)
4. Product – (product_ID, product_type, product_name, product_qty)
5. Load – (Load_ID, Load_date, Load_type, product_ID)
6. Depot – (Depot_ID, Depot_name, Depot_loc)
7. Transport unit – (Driver_ID, assist_ID, Tunit_ID, container_ID, Lorry_no)
1.10 Primary keys
1. Customer – Cus_ID
2. Job – Job_ID
3. Payment - Pay_ID
4. Product - product_ID
5. Load - Load_ID
A.G.D.N.Ranathunga
01
29
Database Design & Development
Assignment No.
6. Depot - Depot_ID
7. Transport unit – Tunit_ID
Figure 4: Logical design
Source: author developed
A.G.D.N.Ranathunga
01
30
Database Design & Development
Assignment No.
Task 02
2.1 Interfaces to input and output data
Figure 5: Customer User Interface
Source: author developed
A.G.D.N.Ranathunga
01
31
Database Design & Development
Assignment No.
Figure 6: Job user interface
Source: author developed
Figure 7: Payment user interface
Source: author developed
A.G.D.N.Ranathunga
01
32
Database Design & Development
Assignment No.
Figure 8: product user interface
Source: author developed
Figure 9: Load user interface
Source: author developed
A.G.D.N.Ranathunga
01
33
Database Design & Development
Assignment No.
Figure 10: Depot user interface
Source: author developed
Figure 11: Transport unit user interface
Source: author developed
A.G.D.N.Ranathunga
01
34
Database Design & Development
Assignment No.
2.2 SQL DDL statements
Creating Database
CREATE DATABASE Smartmovers_Transport_Service;
Creating tables
Customer Table
CREATE TABLE Customer(
Cus_ID varchar(5),
Fname varchar(50),
Lname varchar(50),
addressline1 varchar(50),
addressline2 varchar(50),
contactNo varchar(10),
cus_type varchar(10),
PRIMARY KEY (Cus_ID),
);
A.G.D.N.Ranathunga
01
35
Database Design & Development
Assignment No.
Figure 12: SQL server DDL statement for customer table
Source: author developed
Job table
CREATE TABLE Job(
Job_ID varchar(5),
Job_date varchar(50),
Depot_ID varchar(5),
Cus_ID varchar(5),
start_location varchar(50),
end_location varchar(50),
Load_ID varchar(5),
PRIMARY KEY (Job_ID),
);
A.G.D.N.Ranathunga
01
36
Database Design & Development
Assignment No.
Figure 13: SQL server DDL statement for Job table
Source: author developed
Payment Table
CREATE TABLE Payment(
Payment_ID varchar(5),
Load_type varchar(50),
Cus_ID varchar(5),
Product_type varchar(50),
Job_ID varchar(5),
PRIMARY KEY (Payment_ID),
);
Figure 14: SQL server DDL statement for Payment table
Source: author developed
Product table
CREATE TABLE Product(
Product_ID varchar(5),
A.G.D.N.Ranathunga
01
37
Database Design & Development
Assignment No.
Product_type varchar(50),
Product_name varchar(50),
Product_qty varchar(50),
PRIMARY KEY (Product_ID),
);
Figure 15: SQL server DDL statement for Product table
Source: author developed
Load table
CREATE TABLE Load(
Load_ID varchar(5),
Load_date varchar(50),
Load_type varchar(50),
Product_ID varchar(5),
PRIMARY KEY (Load_ID),
);
Figure 16: SQL server DDL statement for Load table
A.G.D.N.Ranathunga
01
38
Database Design & Development
Assignment No.
Source: author developed
Depot table
CREATE TABLE Depot(
Depot_ID varchar(5),
Depot_name varchar(50),
Depot_location varchar(50),
Tunit_ID varchar(5),
PRIMARY KEY (Depot_ID),
);
Figure 17: SQL server DDL statement for Depot table
Source: author developed
Transport unit table
CREATE TABLE Transport_unit(
Tunit_ID varchar(5),
Driver_ID varchar(5),
Assistant_ID varchar(5),
Container_ID varchar(5),
Lorry_NO varchar(10),
PRIMARY KEY (Tunit_ID),
);
A.G.D.N.Ranathunga
01
39
Database Design & Development
Assignment No.
Figure 18: SQL server DDL statement for Transport unit table
Source: author developed
3.1 Validation mechanism
What is validation?
Validation is an automatic check to ensure that the data entered is sensible and feasible.
Validation cannot ensure data is actually accurate.
A.G.D.N.Ranathunga
01
40
Database Design & Development
Assignment No.
These are needed because it is easier to try and prevent users from entering garbage than
attempting to fix mistakes later.
3.1.2 Validation methods
Range check
A range check ensures that data is between an upper and lower acceptable value, within a
certain range.
According to the above scenario all telephone numbers should between the ranges 0 to 10.
Figure 19: range check
Source: author developed
Drop Down Box
A drop down box ensures the user can only choose a predefined option from a list, reducing
the chances of spelling mistakes or unwanted responses.
A.G.D.N.Ranathunga
01
41
Database Design & Development
Assignment No.
Spelling mistakes would cause problems whilst performing searches on the data, with
some records being accidentally missed out of the results.
Allowing people to enter endless options for certain responses could make the data
unworkable in some situations.
Drop down boxes and lists are an easy way to help reduce these issues, but are obviously not
suited to all types of questions.
(Database Validation - Computer Science GCSE GURU, 2021)
According to above scenario, user can only choose a predefined option from a list, reducing
the chances of spelling mistakes or unwanted responses.
Figure 20: drop down box
Source: author developed
3.2 Join query
A.G.D.N.Ranathunga
01
42
Database Design & Development
Assignment No.
Figure 21: Join query
Source: author developed
3.3 Test plan
What is testing?
Testing is the process of evaluating a system or its component(s) with the intent to find
whether it satisfies the specified requirements or not. In simple words, testing is executing a
system in order to identify any gaps, errors, or missing requirements in contrary to the actual
requirements.
According to ANSI/IEEE 1059 standard, Testing can be defined as - A process of analyzing
a software item to detect the differences between existing and required conditions (that is
defects/errors/bugs) and to evaluate the features of the software item.
(Software Testing - Quick Guide - Tutorialspoint, 2021)
There are two types
-
Manual testing
-
Automation testing
3.3.1 Levels of testing
A.G.D.N.Ranathunga
01
43
Database Design & Development
Assignment No.
Unit testing
Integration testing
Validation testing
-
Regression testing
-
Alpha testing
-
Beta testing
Acceptance testing
Test planning
The test plan defines the scope of the work to be performed. The test report documents what
occurred when the test scripts were run.
Test plan for the smartmovers (pvt) ltd.
Smartmovers is a transportation company which delivers chemical products. Main objective
of testing is to show all the functions perform perfectly, To confirm user and system
requirements involvement to the database, to check all the calculations complete well and
properly, to improve manageability and performance.
Test login when entering valid username and password
Tes t Cas e
Input Data
expected res ult
Actual Res ult
Tes t outcome
entering valid
us ername and
pas s word
Us ername:
Smovers
pas s word:
abc@123
Mes s agebox
"Login
Succes s full"
Dis played
"Login
Succes s full"
Pas s
Figure 22: Testing login 1
Source: author developed
Test login when entering invalid username and password
A.G.D.N.Ranathunga
01
44
Database Design & Development
Assignment No.
Tes t Cas e
Input Data
expected res ult
Actual Res ult
Tes t outcome
entering invalid
us ername and
pas s word
Us ername:
fas tmovers
pas s word:
abc@123
Mes s agebox
"Login
Succes s full"
Dis played
"Invalid
us ername or
pas s word"
Pas s
expected res ult
Actual Res ult
Tes t outcome
Mes s agebox
"Succes s fully
deleted"
Dis played
"Are you s ure?"
Pas s
Figure 23: Testing login 2
Source: author developed
Test when deleting details
Tes t Cas e
Input Data
entering deleta a Delete * from
data in a row of cus tomer
a table
Figure 24: Testing deleting details
Source: author developed
Figure 25: Testing deleting actual result
Source: author developed
A.G.D.N.Ranathunga
01
45
Database Design & Development
Assignment No.
Technical and user documentation
Figure 26 : User manual
Source: author developed
A.G.D.N.Ranathunga
01
46
Database Design & Development
Assignment No.
4.1 User manual
A user manual is a technical communication document intended to give assistance to people
on how to use a product. A good user manual assists users on how to use a product safely,
healthily and effectively. Author used simple language to describe manual because it helps
users to understand it. User manual includes all the details to use the system step by step.
Database system of smartmovers
Smartmovers is a transportation company which delivers chemical products one place to
another. It is the main process of the system. The registration tasks of the system are
customer, payment, and product and load etc. all the records are store in a database.
1. If the system user have an account, they can access the system by entering username
and password correctly and clicking login. If it will invalid system shows a warning
message.
2. Main menu display all the tabs in the system. User can select the suitable one and by
clicking it user can access the next interface.
Ex. If user wants to edit customer details then user have to click Customer tab.
3. Each interface has INSERT, DELETE, UPDATE and SEARCH buttons. User can do
the actions about above options.
4. User can print receipts and labels by using print option of viewing each detail form
and accessing database.
5. User can logging out by the system using Log out button.
From user manual users can execute the system well.
-
Login in to the system
A.G.D.N.Ranathunga
01
47
Database Design & Development
Assignment No.
-
Edit and view details
-
Buy products and do transactions.
4.2 UML
UML, short for Unified Modeling Language, is a standardized modeling language
consisting of an integrated set of diagrams, developed to help system and software
developers for specifying, visualizing, constructing, and documenting the artifacts of
software systems, as well as for business modeling and other non-software systems. The
UML represents a collection of best engineering practices that have proven successful in
the modeling of large and complex systems. The UML is a very important part of
developing object oriented software and the software development process. The UML uses
mostly graphical notations to express the design of software projects. Using the UML helps
project teams communicate, explore potential designs, and validate the architectural design
of the software.
(What is Unified Modeling Language (UML)?, 2021)
4.2.1 Use case diagram
Purposes of use case diagrams can be as follows:
-
Used to gather requirement of a system
-
Used to get an outside view of a system
-
Identify external and internal factors influencing the system
-
Show the interacting among the requirements and actors
A.G.D.N.Ranathunga
01
48
Database Design & Development
Assignment No.
Figure 27: Use case diagram
Source: author developed
A.G.D.N.Ranathunga
01
49
Database Design & Development
Assignment No.
4.2.2 Flow charts
Figure 26: Flowchart
Source: author developed
A.G.D.N.Ranathunga
01
50
Database Design & Development
Assignment No.
Bibliography
Visual-paradigm.com. 2021. What is Unified Modeling Language (UML)?. [online]
Available at: <https://www.visual-paradigm.com/guide/uml-unified-modelinglanguage/what-is-uml/> [Accessed 14 May 2021].
Tutorialspoint.com. 2021. Software Testing - Quick Guide - Tutorialspoint. [online]
Available at:
<https://www.tutorialspoint.com/software_testing/software_testing_quick_guide.htm#:~:text
=Testing%20is%20the%20process%20of,contrary%20to%20the%20actual
%20requirements.> [Accessed 14 May 2021].
Computer Science GCSE GURU. 2021. Database Validation - Computer Science GCSE
GURU. [online] Available at: <https://www.computerscience.gcse.guru/theory/databasevalidation> [Accessed 14 May 2021].
Guru99.com. 2021. What is Normalization? 1NF, 2NF, 3NF, BCNF Database Example.
[online] Available at: <https://www.guru99.com/database-normalization.html> [Accessed 29
April 2021].
Staff, W.2020, What is an example of manual database? Accessed on 12th December 2020,
https://www.reference.com/world-view/example-manual-database-432e345e60c4b0d
A.G.D.N.Ranathunga
01
51
Database Design & Development
Assignment No.
Download