Uploaded by Janaka Perera

U04 Database Sample Assignment

advertisement
Higher Nationals
Internal verification of assessment decisions – BTEC (RQF)
INTERNAL VERIFICATION – ASSESSMENT DECISIONS
Programme title
BTEC HND in Computing
Assessor
Internal
Verifier
Unit 04: Database Design & Development
Unit(s)
Assignment title
Database Solution for Polly Pipe
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?
Is the Pass/Merit/Distinction grade awarded
justified by the assessor’s comments on the
student work?
Has the work been assessed
accurately?
Is the feedback to the student:
Give details:
• Constructive?
• Linked to relevant assessment
criteria?
• Identifying opportunities for
improved performance?
• Agreeing actions?
Does the assessment decision need
amending?
Y/N
Y/N
Y/N
Y/N
Y/N
Y/N
Y/N
Y/N
Assessor signature
Date
Internal Verifier signature
Date
Programme Leader signature (if
required)
Date
Confirm action completed
Remedial action taken
Give details:
Assessor signature
Date
Internal Verifier
signature
Date
1
Programme Leader
signature (if required)
Date
2
Higher Nationals - Summative Assignment Feedback Form
Student Name/ID
Unit Title
Unit 04:
Assignment Number
1
Database Design & Development
Assessor
Date
Received 1st
submission
Submission Date
Date Received 2nd
submission
Re-submission Date
Assessor Feedback:
LO1 Use an appropriate design tool to design a relational database system for a substantial problem
Pass, Merit & Distinction
Descripts
P1
M1
D1
LO2 Develop a fully functional relational database system, based on an existing system design
Pass, Merit & Distinction
Descripts
P2
P3
M2
M3
D2
LO3 Test the system against user and system requirements.
Pass, Merit & Distinction
Descripts
M4
D2
LO4 Produce technical and user documentation.
Pass, Merit & Distinction P5
M5
Descripts
D3
Grade:
P4
Assessor Signature:
Date:
Resubmission Feedback:
Grade:
Assessor Signature:
Date:
Internal Verifier’s Comments:
Signature & Date:
*
Please note that grade decisions are provisional. They are only confirmed once internal and external moderation has taken place and
grades decisions have been agreed at the assessment board.
3
Assignment Feedback
Formative Feedback: Assessor to Student
Action Plan
Summative feedback
Feedback: Student to Assessor
Assessor
signature
Date
Student
signature
Date
4
Pearson Higher Nationals in
Computing
Unit 04: Database Design & Development
Assignment 01
5
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.
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.
2.
3.
4.
The font size should be 12 point, and should be in the style of Time New Roman.
Use 1.5 line spacing. Left justify all paragraphs.
Ensure that all the headings are consistent in terms of the font size and font style.
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
6
Student Declaration
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.
Student’s Signature:
(Provide E-mail ID)
Date:
(Provide Submission Date)
7
Higher National Diploma in Computing
Assignment Brief
Student Name /ID Number
Unit Number and Title
Unit 4: Database Design & Development
Academic Year
2021/22
Unit Tutor
Assignment Title
Data base system for Polly Pipe
Issue Date
Submission Date
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:
8
Assignment brief
Polly Pipe is a water sports provider and installer based in Braintree, England. They need you
to design and implement a database that meets the data requirements. These necessities are
defined in this scenario and below are samples of the paper records that the Polly Pipe
preserves.
Polly Pipe is focused in placing aquariums at business customers. Customers can request
several installations, but each installation is tailor-made for a specific customer. Facilities are
classified by type. One or more employees are assigned to each facility. Because these
facilities are often very large, they can include carpenters and masons as well as water
installers. The facilities use equipment such as aquariums, air pumps and thermostats. There
can be multiple computers in a facility.
Below are examples of paper records that Polly Pipe currently maintains.
Staff Management Record
Staff Number
SHA1
SHA8
SHA2
SHA11
SHA23
SHA66
SHA55
Name
Dave Clark
John Smith
Freddy Davies
McCloud
Satpal Singh
Winstn Kodogo
Alison Smith
Type
Plumber
Installation Manager
Aquatics installer
Aquatics installer
Plumber
Aquatics installer
Brick Layer
Equipment Type Table
Type
Tanks
Thermostats
Air Pumps
Filters
Equipment
20 gallon tank, 50 gallon tank, 100
gallon tank, 200 gallon tank
Standard, Super
Standard, Super
Air driven, Undergravel
9
Instillation Management Form
Installation
ID
Installation
Type
Installation Customer Equipment
Name and
Address
Types of Staff
Required
234
Freshwater Oak
Tropical
House, 17
Wroxton
Road,
Hertfordsh
ire, H5 667
Lee A.
sun
1 x Carpenter
1 x Aquatics
installer
1 x Electrician
654
Freshwater Bayliss
Cold
House,
Orange
Street,
Kent, K7
988
Sally
Dench
767
Marine
Eaglestone
Castle,
Eaglestone
, Kent
Perry
Vanderru
ne
943
Marine
23
Sackville
Street,
Wilts. W55
Eric
Mackinto
sh
157
Freshwater Humbertso Perry
Tropical
n Castle,
Vanderru
Kent, K8
ne
2 air
pumps
200 gallons
fish tank
1x
standard
thermostat
2 air
pumps
200 gallons
fish tank
Large
Gravel Bag
2x
standard
thermostat
s
2 x 200
gallons fish
tanks
500 Wood
panels
5x
Carpenters
1x
Installation
Manager
1 x Aquatics
installer
1 x Plumber
3 x Labourers
Period of
Staff
assignm
ent
From 1st
Septemb
er 2012
1st June
2005 –
1st June
2011
10 x
From
Carpenters
30th June
2x
2012
Installation
Manager
1 x Aquatics
installer
1 x Plumber
3 x Labourers
No staff required
2 air
pumps
200 gallons
fish tank
1x
standard
thermostat
2 air
1 x Aquatics
pumps
installer
400 gallons
fish tank
3x
standard
thermostat
1st
Septemb
er 2005
– 1st
Septemb
er 2012
10
Activity 1
1.1. Identify the user and system requirements to design a database for the above scenario
and design a relational database system using conceptual design (ER Model) by including
identifiers (primary Key) of entities and cardinalities, participations of relationships.
Convert the ER Model into logical database design using relational database model
including primary keys foreign keys and referential Integrities. It should contain at least
five interrelated tables. Check whether the provided logical design is normalised. If not,
normalize the database by removing the anomalies.
(Note:-It is allowed to have your own assumptions and related attributes within the scope of the case study
given)
1.2.
Design set of simple interfaces to input and output for the above scenario using
Wireframe or any interface-designing tool. Evaluate the effectiveness of the given design
(ERD and Logical design) in terms of the identified user and system requirements.
Activity 2
Activity 2.1
a. Develop a relational database system according to the ER diagram you have created
(Use SQL DDL statements). Provide evidence of the use of a suitable IDE to create a
simple interface to insert, update and delete data in the database. Implement proper
security mechanisms in the developed database.
Evaluate the database solution developed and its effectiveness with relevant to the
user and system requirements identified, system security mechanisms (EX: -User
groups, access permissions) and the maintenance of the database.
Activity 2.2
a. Explain the usage of DML with below mentioned queries by giving at least one single
example per each case from the developed database. Assess the usage of the below
SQL statements with the examples from the developed database to prove that the
data extracted through them are meaningful and relevant to the given scenario.
Select/ Where / Update / Between / In / Group by / Order by / Having
11
Activity 3
Activity 3.1
Provide a suitable test plan to test the system against user and system requirements.
provide relevant test cases for the database you have implemented. Assess how the
selected test data can be used to improve the effectiveness of testing.
Note:- Learner needs to give expected results in a tabular format and screenshots of the actual results with
the conclusion
Activity 3.2
Get independent feedback on your database solution from the non-technical users and
some developers (use surveys, questioners, interviews or any other feedback collecting
method) and make recommendations and suggestions for improvements in a separate
conclusion/recommendations section.
Activity 4
Produce a technical documentation and a user guide for the developed database system.
Suitable diagrams diagrams (Use case diagram, class diagram, flow charts, DFD level 0 and
1) should be included in the technical documentation to show data movement in the system.
Assess the developed database by suggesting future enhancements to ensure the
effectiveness of the system.
12
13
Acknowledgment
Table of content
Acknowledgment ................................................................................................................ 14
Table of content .................................................................................................................. 14
Table of figures ................................................................................................................... 23
List of tables........................................................................................................................ 28
Introduction......................................................................................................................... 29
Abbreviation ....................................................................................................................... 30
User and system requirements ............................................................................................. 30
User requirements ........................................................................................................... 30
Examples for user requirements ................................................................................... 31
14
User requirements of “Poly Pipes” company ................................................................ 31
System requirements ....................................................................................................... 31
Functional requirements .............................................................................................. 31
Non-functional requirements ....................................................................................... 32
Entities, attributes and relationships of Poly Pipe Company ............................................. 32
Customer table............................................................................................................. 33
Installations table ......................................................................................................... 33
Worker table ................................................................................................................ 33
Stores table .................................................................................................................. 34
Supply table ................................................................................................................. 34
Payments table............................................................................................................. 34
Data models ........................................................................................................................ 34
Entity relationship data model ......................................................................................... 34
Entity........................................................................................................................... 34
Attribute ...................................................................................................................... 35
Relationship ................................................................................................................ 35
Keys ................................................................................................................................ 35
ER diagram for Poly Pipe Company ................................................................................ 36
About ER diagram ........................................................................................................... 36
Logical database diagram ................................................................................................ 37
Customer entity ........................................................................................................... 38
Payment entity ............................................................................................................. 38
Installation entity ......................................................................................................... 38
Supply entity ............................................................................................................... 38
Worker entity .............................................................................................................. 38
Stores entity................................................................................................................. 38
Converting ER diagram into logical database diagrams (Tables) ...................................... 38
Customer entity into customer table ............................................................................. 39
Payment entity into payment table ............................................................................... 39
Installation entity into installation table ....................................................................... 39
Supply entity into supply table ..................................................................................... 39
Store entity into store table .......................................................................................... 39
Worker entity in to worker table .................................................................................. 39
Data redundancy.............................................................................................................. 40
15
How to reduce data redundancy? ................................................................................. 40
First normalization (1 NF) ........................................................................................... 40
Second normalization (2 NF) ....................................................................................... 40
Third normalization (3 NF) .......................................................................................... 40
Advantages and disadvantages of normalization .............................................................. 41
Anomalies ....................................................................................................................... 41
Examples for first normalization ...................................................................................... 42
Examples for second normalization ................................................................................. 43
Example for third normalization ...................................................................................... 44
Workers details ............................................................................................................ 44
Work details ................................................................................................................ 45
Material details ............................................................................................................ 45
Category details ........................................................................................................... 45
Interface design and development .................................................................................... 45
Welcome page ............................................................................................................. 47
Logging page ............................................................................................................... 47
Menu page ................................................................................................................... 48
Customer interface (customer page) ............................................................................. 49
Supply page ................................................................................................................. 49
Payments page ............................................................................................................. 50
Store page.................................................................................................................... 50
Worker page ................................................................................................................ 51
Validation (Informatica, 2021) ........................................................................................ 52
Why perform data validation? ...................................................................................... 52
How writer used validating mechanisms to Poly Pipe Company .................................. 52
Examples for validation in Poly Pipe ........................................................................... 53
Validation and verification (PP.Pankaj, 2020) ................................................................. 55
The connection between user and system ......................................................................... 55
*Evaluate the effectiveness of system and user requirements ............................................... 56
Effectiveness of system design .................................................................................... 58
Why writer used these validation methods for this system ........................................... 59
Relationship with UIs and ER diagrams ....................................................................... 59
Null values .................................................................................................................. 59
Data base system (DB system) ............................................................................................ 59
16
What is the DB system? ............................................................................................... 60
User interfaces and their outputs ...................................................................................... 60
Payments data saving ................................................................................................... 60
Supply data saving ....................................................................................................... 61
Store data inserting ...................................................................................................... 61
Customer data inserting ............................................................................................... 62
Installation data saving ................................................................................................ 62
Examples for querying across multiple tables .............................................................. 64
Delete data................................................................................................................... 64
Data updating .............................................................................................................. 65
Examples for validation ............................................................................................... 66
How writer used the most appropriate data type ........................................................... 67
Writer was inserted message systems for correct and wrong data types. ....................... 67
Query language ................................................................................................................... 69
Querying for build a database in SQL Server ................................................................... 69
Create a unique database for Poly Pipe Company ........................................................ 69
Create an Installation Table ......................................................................................... 69
Create a Customer table ............................................................................................... 70
Create a Supply table ................................................................................................... 70
Create a Payments table ............................................................................................... 70
Create a Store table ...................................................................................................... 71
Create a Workers01 table ............................................................................................. 71
Create a Workers02 table ............................................................................................. 71
Created tables .............................................................................................................. 72
SELECT query ............................................................................................................ 72
INSERT query ............................................................................................................. 73
UPDATE query ........................................................................................................... 73
DELETE query............................................................................................................ 74
SELECT query ............................................................................................................ 74
ADD query .................................................................................................................. 75
DROP column ............................................................................................................. 75
Coding a Logging Button............................................................................................. 76
Coding a Next Button .................................................................................................. 76
Coding an Exit Button ................................................................................................. 76
17
Coding the tabs in menu .............................................................................................. 77
Make a connection between SQL server and Visual studio .......................................... 77
Coding an Insert Button ............................................................................................... 78
Coding an Update Button............................................................................................. 78
Coding a Delete Button................................................................................................ 79
Coding a Search Button ............................................................................................... 79
Data base security ............................................................................................................... 80
Why database security important? ................................................................................... 80
What can we do for secure database system? ................................................................... 80
Security mechanisms were used in Poly Pipe Company ................................................... 80
Writer used strong password and user name for system................................................ 80
External security .......................................................................................................... 81
Who can access this database? ......................................................................................... 82
Database maintaining (OfficeTooles, 2015) ..................................................................... 83
Index Defragmentation ................................................................................................ 83
Log File Maintenance .................................................................................................. 83
File/Data Compaction .................................................................................................. 83
Integrity Check ............................................................................................................ 84
Maintain schedule for Poly Pipe Company ...................................................................... 84
Backup plans ................................................................................................................... 85
Incremental backup ..................................................................................................... 85
Data types ........................................................................................................................... 87
Meaningful data .............................................................................................................. 87
Information management ................................................................................................. 87
Insert data .................................................................................................................... 88
Group by ..................................................................................................................... 89
Order by ...................................................................................................................... 90
Between query ............................................................................................................. 90
Where Query ............................................................................................................... 91
Database testing .................................................................................................................. 92
What is the testing? ......................................................................................................... 92
Why is database testing important? .................................................................................. 92
What should I test? .......................................................................................................... 92
How to test a databases .................................................................................................... 93
18
Database testing tools ...................................................................................................... 93
Black Box Testing ....................................................................................................... 94
White Box Testing ....................................................................................................... 94
Black box testing and white box testing ....................................................................... 95
Integration testing ............................................................................................................ 95
System testing ................................................................................................................. 96
System testing types .................................................................................................... 96
Justification about system testing ................................................................................. 96
How to use system testing types to test DB system .......................................................... 96
Scalability testing ........................................................................................................ 96
Reliability testing ........................................................................................................ 96
Documentation testing ................................................................................................. 97
Security testing ............................................................................................................ 97
Graphic and User interface testing ............................................................................... 97
Stress testing................................................................................................................ 97
Hardware requirements.................................................................................................... 97
Testing user and system requirements .............................................................................. 98
Test plan.......................................................................................................................... 98
Testing schedule .......................................................................................................... 99
Interface testing ................................................................................................................... 99
Test the payments table ................................................................................................... 99
Insert testing in payment table ..................................................................................... 99
Actual result for insert testing in payment table ......................................................... 100
Search testing in payment table .................................................................................. 100
Actual result search testing in payment table .............................................................. 100
Delete testing in payment table .................................................................................. 101
Actual result for delete testing in payment table ........................................................ 101
Update testing in payment table ................................................................................. 102
Actual result for update testing in payment table ........................................................ 102
Insert testing in supply table ...................................................................................... 103
Actual result for insert testing .................................................................................... 103
Update testing in supply table .................................................................................... 103
Actual result for update in supply table ...................................................................... 104
Delete testing in supply table ..................................................................................... 104
19
Actual result for delete testing in supply table ............................................................ 104
Search testing in supply table ..................................................................................... 105
Actual result for delete testing in supply table ............................................................ 105
Testing a store table ....................................................................................................... 105
Insert testing in store table ......................................................................................... 105
Actual result for insert testing .................................................................................... 106
Update testing in store table ....................................................................................... 106
Actual result for update testing in store table ............................................................. 106
Delete testing in store table ........................................................................................ 107
Actual result for delete testing in store table............................................................... 107
Search testing in store table ....................................................................................... 107
Actual result for search testing in store table .............................................................. 108
Testing a worker table ................................................................................................... 108
Insert testing in worker table ...................................................................................... 108
Actual result for insert testing in worker table ............................................................ 108
Update testing in worker table ................................................................................... 109
Actual result for update testing in worker table .......................................................... 109
Delete testing in worker table .................................................................................... 109
Actual result for delete testing in worker table ........................................................... 109
Search testing in worker table .................................................................................... 110
Actual result for search testing in worker table .......................................................... 110
Testing a customer table ................................................................................................ 111
Insert testing for customer table ................................................................................. 111
Actual result for insert testing in customer table......................................................... 111
Update testing for customer table ............................................................................... 111
Actual result for update testing in customer table ....................................................... 112
Delete testing for customer table ................................................................................ 112
Actual result for delete testing on customer table ....................................................... 112
Search testing for customer table ............................................................................... 113
Actual result for search testing in customer table ....................................................... 113
Insert testing in installation table................................................................................ 113
Actual result for insert testing in installation table...................................................... 113
Update testing in installation table ............................................................................. 114
Actual result for update testing in installation table .................................................... 114
20
Delete testing in installation table .............................................................................. 114
Actual result for delete testing in installation testing .................................................. 115
Search testing for installation table ............................................................................ 115
Actual result for search testing in installation table .................................................... 115
What are the objectives of security testing?................................................................ 115
Data base attacks ........................................................................................................... 116
SQL Injection ............................................................................................................ 116
Privilege Elevation in Database ................................................................................. 116
Denial of Service ....................................................................................................... 116
Unauthorized Access to data ...................................................................................... 116
Identity Spoofing ....................................................................................................... 116
Data Manipulation ..................................................................................................... 117
Database Security Testing Techniques ........................................................................... 117
Penetration Testing .................................................................................................... 117
Risk Finding .............................................................................................................. 117
Zed Attack Proxy....................................................................................................... 117
Paros ......................................................................................................................... 117
Social Engineer Toolkit ............................................................................................. 117
Skip fish .................................................................................................................... 118
Vega .......................................................................................................................... 118
Wapiti ....................................................................................................................... 118
Web Scarab ............................................................................................................... 118
Testing with correct username and correct password .................................................. 118
Testing with incorrect username and incorrect password............................................ 119
Testing with incorrect username and correct password............................................... 119
Testing with correct username and incorrect password............................................... 119
Insert testing .............................................................................................................. 120
Actual result .............................................................................................................. 120
System speed testing .................................................................................................. 120
User friendliness ........................................................................................................ 121
Test outcome’s summery ............................................................................................... 122
*The effectiveness of the database solution in relation to user and system requirements, and
suggest improvements. ...................................................................................................... 123
Evaluation of the database system ................................................................................. 123
Project feedback ............................................................................................................ 123
21
Comment review ........................................................................................................... 123
Feedback form............................................................................................................... 124
Feedback review ............................................................................................................ 126
Question 01 ............................................................................................................... 126
Question 02 ............................................................................................................... 126
Question 03 ............................................................................................................... 127
Question 04 ............................................................................................................... 127
Question 05 ............................................................................................................... 128
Question 06 ............................................................................................................... 128
Question 07 ............................................................................................................... 129
Question 05: - ............................................................................................................ 129
Question 06: - ............................................................................................................ 129
Summary of user feedback ............................................................................................ 129
Suggestions and future improvements of database system in Poly Pipe Company .......... 130
User documentation........................................................................................................... 131
User manual .................................................................................................................. 131
About the system ....................................................................................................... 131
System interfaces........................................................................................................... 132
Welcome interface ..................................................................................................... 132
Logging interface ...................................................................................................... 132
Menu interface........................................................................................................... 133
Customer interface..................................................................................................... 134
Supply interface ......................................................................................................... 134
Payments ................................................................................................................... 135
Installation................................................................................................................. 136
Stores ........................................................................................................................ 136
Worker 01 ................................................................................................................. 137
Worker 02 ................................................................................................................. 138
Test results .................................................................................................................... 138
System documentation ...................................................................................................... 139
Letter had received from Poly Pipe Company to request a DB system ........................... 139
Reply from Software Development Company ................................................................ 140
Technical documentation ............................................................................................... 141
ER diagram ................................................................................................................... 141
22
Logical database diagram .............................................................................................. 142
Class diagram for Poly Pipe Company DB system ......................................................... 143
Use case diagram between customer, receptionist and cashier ........................................ 144
Use case diagram between customer and worker ........................................................... 145
Use case diagram between store keeper and worker ....................................................... 145
Floor charts famous functions in the database system .................................................... 146
Floor chart for insert data........................................................................................... 146
Floor chart for update data ......................................................................................... 147
Floor chart for delete data .......................................................................................... 148
Floor chart for search data ......................................................................................... 149
Floor chart for search ................................................................................................. 150
*Evaluate the database in terms of improvements needed to ensure the continued effectiveness
of the system. ................................................................................................................... 151
Database improvement .................................................................................................. 151
Importance of database improvements ....................................................................... 151
How to improve our database system ......................................................................... 151
Faster page loading .................................................................................................... 152
Faster and interactive applications ............................................................................. 153
Reference .......................................................................................................................... 154
Reference list .................................................................................................................... 154
Gantt chart ........................................................................................................................ 157
Table of figures
Figure 1.1.1: Relationships between entities and attributes .................................................. 35
Figure 1.1.2: ER diagram .................................................................................................... 36
Figure 1.1.3: Logical database diagram ............................................................................... 37
Figure 1.2.1: Anomalies ...................................................................................................... 42
Figure 1.2.2: Visual Studio .................................................................................................. 46
Figure 1.2.3: SQL Server ..................................................................................................... 46
Figure 1.2.4: Welcome interface .......................................................................................... 47
Figure 1.2.5: Logging page .................................................................................................. 47
Figure 1.2.6: Manu page ...................................................................................................... 48
23
Figure 1.2.7: customer page................................................................................................. 49
Figure 1.2.8: Supply page .................................................................................................... 49
Figure 1.2.9: Payments page ................................................................................................ 50
Figure 1.2.10: store page ..................................................................................................... 50
Figure 1.2.11: Worker’s page .............................................................................................. 51
Figure 1.2.12: Worker’s page 02 ......................................................................................... 51
Figure 1.2.13: Structure validation (Primary key using) ....................................................... 53
Figure 1.2.14: Data type validation (Integer type)................................................................ 53
Figure 1.2.15: Data type validation (varchar type) ............................................................... 53
Figure 1.2.16: Data type validation (Varchar type)............................................................... 53
Figure 1.2.17: Data type validation (Varchar type)............................................................... 54
Figure 1.2.18: Code validation (Coded for search by Primary key type) ............................... 54
Figure 1.2.19: Code validation............................................................................................. 54
Figure 1.2.20: Code validation............................................................................................. 54
Figure 2.1.1: Inserting payments data .................................................................................. 60
Figure 2.1.2: Inserting supply data ....................................................................................... 61
Figure 2.1.3: Inserting store data ......................................................................................... 61
Figure 2.1.4: Inserting customer data ................................................................................... 62
Figure 2.1.5: Inserting installation data ................................................................................ 62
Figure 2.1.6: Inserting workers data..................................................................................... 63
Figure 2.1.7: Inserting workers02 data ................................................................................. 63
Figure 2.1.8: Examples for multiple queries ........................................................................ 64
Figure 2.1.9: data deleting ................................................................................................... 64
Figure 2.1.10: output of delete ............................................................................................. 65
Figure 2.1.11: Data updating ............................................................................................... 65
Figure 2.1.12: Output for data updating ............................................................................... 65
Figure 2.1.13: Examples for data validation ......................................................................... 66
Figure 2.1.13: Customer table .............................................................................................. 67
Figure: 2.1.14: Error messages ............................................................................................ 67
Figure: 2.1.15: Error messages ............................................................................................ 67
Figure: 2.1.16: Error messages ............................................................................................ 68
Figure 2.2.1: Create db ........................................................................................................ 69
Figure 2.2.2: Create Installation table .................................................................................. 69
Figure 2.2.3: Create customer table ..................................................................................... 70
24
Figure 2.2.4: Create supply table ......................................................................................... 70
Figure 2.2.5: Create payments table ..................................................................................... 70
Figure 2.2.6: Create store table ............................................................................................ 71
Figure 2.2.7: Create workers01 table ................................................................................... 71
Figure 2.2.8: Create workers table ....................................................................................... 71
Figure 2.2.9: Created tables in database ............................................................................... 72
Figure 2.2.9: Select query .................................................................................................... 72
Figure 2.2.10: Insert query .................................................................................................. 73
Figure 2.2.11: Update query ................................................................................................ 73
Figure 2.2.12: Delete query ................................................................................................. 74
Figure 2.2.13: SELECT query ............................................................................................. 74
Figure 2.2.14: Add query..................................................................................................... 75
Figure 2.2.15: Drop query ................................................................................................... 75
Figure 2.2.16: Coding logging button .................................................................................. 76
Figure 2.2.17: Coding next button ....................................................................................... 76
Figure 2.2.18: Coding exit button ........................................................................................ 76
Figure 2.2.19: Coding tab buttons ........................................................................................ 77
Figure 2.2.20: Connecting to SQL connection ..................................................................... 77
Figure 2.2.21: Coding save button ....................................................................................... 78
Figure 2.2.22: Coding update button.................................................................................... 78
Figure 2.2.23: Coding delete button ..................................................................................... 79
Figure 2.2.24: Coding search button .................................................................................... 79
Figure 2.3.1: Success logging .............................................................................................. 81
Figure 2.3.2: logging not success ......................................................................................... 81
Figure 2.3.3: incremental backup (www.google.com) .......................................................... 86
Figure 2.4.1: Information management ................................................................................ 88
Figure 2.4.2: Data insertion ................................................................................................. 88
Figure 2.4.3: Searching........................................................................................................ 89
Figure 2.4.4: group by ......................................................................................................... 89
Figure 2.4.5: order by .......................................................................................................... 90
Figure 2.4.6: between .......................................................................................................... 90
Figure 2.4.7: where query .................................................................................................... 91
Figure 3.1.1: Manual testing ................................................................................................ 94
Figure 3.1.2: white box testing ............................................................................................ 94
25
Figure 3.1.3: White box testing............................................................................................ 94
Figure 3.1.4: integrate testing .............................................................................................. 95
Figure 3.1.4: Gantt chart for testing schedule ....................................................................... 99
Figure 3.2.1: insert data into payments table ........................................................................ 99
Figure 3.2.2: actual result for insert testing in payment table ............................................. 100
Figure 3.2.3: search testing in payment interface ............................................................... 100
Figure 3.2.4: Actual result for search testing in payment interface ..................................... 100
Figure 3.2.5: delete testing in payment table ...................................................................... 101
Figure 3.2.6: Actual result for delete testing in payment table ............................................ 101
Figure 3.2.7: update testing in payment table ..................................................................... 102
Figure 3.2.8: actual result for update testing in payment table ............................................ 102
Figure 3.2.9: insert testing in supply table.......................................................................... 103
Figure 3.2.10: actual result for insert testing in supply table .............................................. 103
Figure 3.2.11: actual result for update testing in supply table ............................................. 103
Figure 3.2.12: actual result for update in supply table ........................................................ 104
Figure 3.2.13: delete testing in supply table ....................................................................... 104
Figure 3.2.14: actual result for delete testing in supply table .............................................. 104
Figure 3.2.15: search testing in supply table ...................................................................... 105
Figure 3.2.16: Actual result for search testing in supply table ............................................ 105
Figure 3.2.17: Insert testing in store table .......................................................................... 105
Figure 3.2.18: Actual result for insert testing in store table ................................................ 106
Figure 3.2.19: update testing in store table ......................................................................... 106
Figure 3.2.20: actual result for update testing in store table ................................................ 106
Figure 3.2.21: delete testing in store table .......................................................................... 107
Figure 3.2.22: actual result for delete testing ..................................................................... 107
Figure 3.2.22: search testing in store testing ...................................................................... 107
Figure 3.2.24: actual result for search testing in store table ................................................ 108
Figure 3.2.25: Insert testing in worker table ....................................................................... 108
Figure 3.2.26: actual result for insert testing in worker table .............................................. 108
Figure 3.2.27: update testing in worker table ..................................................................... 109
Figure 3.2.28: actual result for update testing in worker table ............................................ 109
Figure 3.2.29: Delete testing in worker table ..................................................................... 109
Figure 3.2.30: actual result for delete testing in worker table ............................................. 110
Figure 3.2.31: search testing in worker table ...................................................................... 110
26
Figure 3.2.32: actual result for search testing in worker table ............................................. 110
Figure 3.2.33: insert testing for customer table .................................................................. 111
Figure 3.2.34: Actual result for insert testing in customer table .......................................... 111
Figure 3.2.35: update testing for customer table................................................................. 111
Figure 3.2.36: actual result for update testing in customer table ......................................... 112
Figure 3.2.37: delete testing for customer table .................................................................. 112
Figure 3.2.38: Actual result for delete testing on customer table ........................................ 112
Figure 3.2.39: search testing for customer table ................................................................. 113
Figure 3.2.40: actual result for search testing in customer table ......................................... 113
Figure 3.2.41: Insert testing in installation table................................................................. 113
Figure 3.2.42: actual result for insert testing in installation table ........................................ 113
Figure 3.2.43: update testing in installation table ............................................................... 114
Figure 3.2.44: actual result for update testing in installation table ...................................... 114
Figure 3.2.45: delete testing in installation table ................................................................ 114
Figure 3.2.46: actual result for delete testing in installation testing .................................... 115
Figure 3.2.47: Search testing for installation table ............................................................. 115
Figure 3.2.48: Actual result for search testing in installation table ..................................... 115
Figure 3.2.49: Testing 01 ................................................................................................... 118
Figure 3.2.50: Testing 02 ................................................................................................... 119
Figure 3.2.51: Testing 03 ................................................................................................... 119
Figure 3.2.52: Testing 04 ................................................................................................... 119
Figure 3.2.53: Testing 05 ................................................................................................... 120
Figure 3.2.54: actual result for testing ................................................................................ 120
Figure 3.2.55: System size ................................................................................................. 121
Figure 3.3.1: Feedback form 01 ......................................................................................... 124
Figure 3.3.2: feedback form 02 .......................................................................................... 125
Figure 3.3.3: Question 01 .................................................................................................. 126
Figure 3.3.4: Question 02 .................................................................................................. 126
Figure 3.3.5: Question 03 .................................................................................................. 127
Figure 3.3.6: Question 04 .................................................................................................. 127
Figure 3.3.7: Question 05 .................................................................................................. 128
Figure 3.3.8: Question 06 .................................................................................................. 128
Figure: 3.3.9: Question 07 ................................................................................................. 129
Figure 3.3.10: WhatsApp conversation .............................................................................. 130
27
Figure 4.1.1: Welcome interface introduction .................................................................... 132
Figure 4.1.2: logging interface introduction ....................................................................... 132
Figure 4.1.3: menu interface introduction .......................................................................... 133
Figure 4.1.4: customer interface introduction ..................................................................... 134
Figure 4.1.5: Supply interface introduction ........................................................................ 134
Figure 4.1.6: payment interface introduction ..................................................................... 135
Figure 4.1.7: installation interface introduction .................................................................. 136
Figure 4.1.8: store interface introduction ........................................................................... 136
Figure 4.1.9: worker 01 interface introduction ................................................................... 137
Figure 4.1.10: workers 02 interface introduction ................................................................ 138
Figure 4.2.1: user’s requesting letter .................................................................................. 139
Figure 4.2.2: Reply from ABC Software Development Company ...................................... 140
Figure 4.2.3: Entity Relationship diagram for poly pipe company database system ............ 141
Figure 4.2.4: Logical database diagram ............................................................................. 142
Figure 4.2.5: Class diagram ............................................................................................... 143
Figure 4.2.6: Use case diagram between customer, receptionist and cashier ....................... 144
Figure 4.2.7: Use case diagram between customer and worker ........................................... 145
Figure 4.2.8: Use case diagram between store keeper and worker ...................................... 145
Figure 4.2.9: floor chart for logging process ...................................................................... 146
Figure 4.2.10: floor chart for insert data into database system ............................................ 147
Figure 4.2.11: floor chart for update data into database system .......................................... 148
Figure 4.2.12: floor chart for delete data from database system.......................................... 149
Figure 4.2.13: floor chart for search data from database system ......................................... 150
Figure: Gantt chart ............................................................................................................ 157
List of tables
Table 1.1: Entities and Attributes ........................................................................................ 32
Table 1.1.2: customer table .................................................................................................. 39
Table 1.1.3: payment table................................................................................................... 39
Table 1.1.4: installation table ............................................................................................... 39
Table 1.1.5: supply table ..................................................................................................... 39
Table 1.1.6: Store table ........................................................................................................ 39
Table 1.1.7: worker’s table .................................................................................................. 39
Table 1.2.1: Advantages and disadvantages of normalization .............................................. 41
Table 1.2.2: Before normalization ....................................................................................... 42
28
Table 1.2.3: After normalization .......................................................................................... 43
Table 1.2.4: Before normalization ....................................................................................... 43
Table 1.2.5: After normalization .......................................................................................... 43
Table 1.2.6: Before normalization ....................................................................................... 44
Table 1.2.7: After normalization .......................................................................................... 44
Table 1.2.8: validation and verification ................................................................................ 55
Table 1.3.1: how developer fulfil user and system requirements .......................................... 56
Table 1.3.2: how developer fulfil user and system requirements .......................................... 58
Table 1.3.3: Null values....................................................................................................... 59
Table 2.3.1: Security self-assessment .................................................................................. 82
Table 2.3.2: Security self-assessment .................................................................................. 82
Table 2.4.3: Maintains schedule 01...................................................................................... 84
Table 2.4.4: Maintains schedule 02...................................................................................... 85
Table 2.4.1: Data types ........................................................................................................ 87
Table 3.1.1: deference of black box testing and white box testing (Hamilton, 2021) ............ 95
Table 3.1.2: user and system requirements testing ............................................................... 97
Table 3.1.3: user and system requirements testing ............................................................... 98
Table 3.1.4: test schedule .................................................................................................... 98
Table 3.2.1: speed testing .................................................................................................. 120
Table 3.2.2: Test outcomes ................................................................................................ 122
Table 3.3.1: feedback summary ......................................................................................... 129
Table 4.1.1: Review of test results ..................................................................................... 138
Introduction
DDD is the subject which is given knowledge about data store, data analysing and teach how
protect our data. In this assignment writer going to describe about how writers team establish
the data base system in Polly Pipe company. Poly pipe is a water sports provider and installer
based in Braintree, England.
Executive summery
In this document writer was discussed about the database system in Poly Pipe Company. Writer
was invent database system and crated a plan to develop it, protect it and maintain as well.
Not only has that write described about the background of data basing and the importance about
it. This database system is to handle their day to day tasks and duties. Writer has been created
this database system as the database specialist in highly demanded IT Company.
29
Abbreviation
DB: - Data base
DBS: - Data base system
PPC: - Poly Pipe Company
PCs: - Personal computer
SRS: - Software requirement specification
UIs: - User interfaces
User and system requirements
User requirements
User requirements or user needs that can be described as which user expect from the system he
or she need. Not only that user requirements are written as statements, in a natural language
plus diagrams, of what services the system is expected to provide to system users and the
constraints under which it must operate. The user requirements may vary from broad statements
of the system features required to detailed, precise descriptions of the system functionality.
This is the first stage of software building. In this stage developer should be written all
requirements of user and make a document that mentioning each necessary things that customer
need. Also this document is helped to system building, developments and future
troubleshooting.
After written down all the needs developer can be identified primary keys, foreign keys, entities
and relationships between these things.
30
Examples for user requirements
 Keep notes and records about customer needs.

Identify unique categories in this records.

Add unique functionalities for identify customers and customer needs separately (IDs,
Telephone numbers or Email address).
User requirements of “Poly Pipes” company
Poly pipe is the company which service for people in England by supplying their all kinds of
pipe works and pipe needs. They have lots of customers in England and they note these
customer requirements and details in books as written documents. But it is not easy to do for
huge number of customers and the management of poly Pipe Company was decided to change
this book keeping into computerised database system. So the management of poly pipe was
selected writer company for develop a system for achieve their targets and requirements.
They mentioned their requirements as well as their conditions.

Customers can be request installations

Separate customers for tailor-made installations

Need to keep records about customers

Need to keep records about other requirements and services.

Should be classify all facilities by types

Point workers for works and let they know about works and customer’s details
Writer could be able to fulfil these requirements.
System requirements
System requirements are more detailed descriptions of the software system’s functions,
services, and operational constraints. The system requirements document (sometimes called a
functional specification) should define exactly what is to be implemented. It may be part of the
contract between the system buyer and the software developers.
Writer was divided these requirements for two parts as Functional requirements and nonfunctional requirements. Those two parts are the most important thing in this system and it is
depending on these functionalities.
Functional requirements
Functional requirements directly depend on main tasks that user was expected. Also these
requirements must be fulfil is definitely need to keep company active and continue their works.
Ex:31

Should be able to keep records about customers, store data, workers data and other
important information.

Should be need to update, delete, and search functions.

Should be need reminder system for keep the workers active.
Non-functional requirements
These requirements are necessary but not mandatory. However these things need to increase
the usefulness.
Ex:
Should be user friendly

Should be take a very small space in servers

Should be attractive

Should be low cost

Should be easy to maintain

Should be able to develop

Should be protected from vires and malwares

Should be easy to update
A System Requirements Specification (SRS) (also known as a Software Requirements
Specification) is a document or set of documentation that describes the features and behavior
of a system or software application. It includes a variety of elements that attempts to define the
intended functionality required by the customer to satisfy their different users.
Entities, attributes and relationships of Poly Pipe Company
Table 1.1: Entities and Attributes
Entity
Attribute
Primary
Relationship
with
key
Customers
Telephone number,
Customer
Pay (M:N)
Payments
Customer ID, category,
ID
Service (1;1)
Installation
Installation ID, Name of
Installation
Service (1:1)
Customer
place, Place address, Type
ID
Working (M:N)
Worker
Name (First name, Last
Workers
Working (M:N)
Installation
name), category, Worker’s
ID
Supply (M:1)
Stores
Name, Email
Installation
Worker
32
ID, Email, Telephone
(Primary
number, item number, work key)
number, work place
number.
(Work
numbers
and item
numbers
are foreign
keys)
Stores
Item ID, Issued date,
Item ID
Responsible person, item
Supply (1:M)
Worker
Store (1:1)
Supply
price
Supply
Payments
Total price, Item no, Price
Item
Store (1:1)
Stores
per 01, Quantity, Purpose
Number
Pay (M:1)
Payments
Buyer’s name, category,
Bill
Pay (1:M)
Pay
Bill no, Date
number
Buy (M:N)
Buy
Customer table
In customer entity has only one key. It is customer ID. Customer ID is working as primary key
in customer table as well. So user need to search anyone in customer table, he or she should be
used customer ID to search it. Also the customer ID is unique and not null attribute. Telephone
number, category, email and customer names were used to keep records about customer details.
Installations table
In this entity developer was used installation ID as primary key which helps to search all
functionalities in installations table. Not only that this is a unique and not null attribute as well.
Installation type used to identify the installation category as well as place name and address
used to calculate the destination to work place and cost of transport.
Worker table
Workers table was used to record the details about workers in Poly Pipe Company that
developer identified eight attributes in worker’s table according to user requirements. Workers
ID is the primary key of this table and there are several foreign keys have worker’s table. So
worker’s ID is used to search every things in worker table.
33
There are two foreign keys in this table such as item number and work number. Those keys
work as primary key in other table.
Also the telephone number is the multivalued attribute because one customer may have more
than one telephone number.
Stores table
Item ID is the primary key of store table. Store table is used to keep records about distributed
items, used items and other records. Store keeper is the responsible to manage this table and he
should insert, update, search and delete records in store table.
Supply table
Supply table is helped to manage logistics in the company and keep the supply chain in active
level. Item number is the primary key of this table and it is helped to all searches. So developer
inserted a derived attribute into this table. It is total price because total price can be calculated
from price per one item and quantity.
Payments table
Payments table is the last table in this system. So bill no is the primary key of this table. Also
other columns are buyer’s name, category, bill no and date is used to record payments details.
Bill number, the primary key is used to search data, update data or delete data. All incomes are
being recording in this table. All managers and cashiers cab be accessed to this payments table
to see records.
Data models
A data model is a diagram used by programmers and data analysts to show a how database
system will work.
Entity relationship data model
This is an object based data model system which show the relationship between entities and
attributes.
Entity
Entity is an object, a place or a person that describe the user environment.
34
Attribute
Attribute is a property or characterises of an entity.
Relationship
Relationship is the connectivity between entity and attribute.
Figure 1.1.1: Relationships between entities and attributes
Keys
Primary key: Column or a set of columns in a table whose values uniquely identify a row in the table. Primary
key is always unique and not null.
Foreign key: Column or a set of columns in a table whose values correspond to the values of the primary
key in another table. This key is helped to link a table to other table.
35
ER diagram for Poly Pipe Company
Figure 1.1.2: ER diagram
About ER diagram
ER diagram is a graphical diagram which shows the relationship of entities and attributes.
Writer was divided the given scenario into groups and identified their entities, attributes and
relationships. It was helped to make tables by using Structure Quarry Language (SQL). Also
this ER diagram was being helped to develop database, troubleshooting and maintain.
36
According to this ER diagram writer was identified six separate groups and their attributes and
relationships in Poly Pipe Company. All the identified system and user requirements were
inserted to this ER diagram and it shows how entities and attributes with each other.
Logical database diagram
Figure 1.1.3: Logical database diagram
This is the figure of the logical database diagram was created for database system in Poly Pipe
Company. This diagram was made by using Edrow Max software through crow root method.
37
Customer entity
This entity has five attributes and two relationships. Customer entity is the most important part
of this company. Customer ID is the primary key of this entity. Customer entity is related with
payments entity through doing relationship and installation entity through service relationship.
Also this relationship is describe that how customer deal with company. All other tables are
having relationships with other entities as well as customer table.
Payment entity
Payment entity was related with other two entities and it has four attributes. Payment bill
number is the primary key of this entity.
Installation entity
Installation entity is the base of this entity. This company’s basic services are given as
installations. Installation ID is the primary key of this company.
Supply entity
Supply is very important to continue company works and it must need to pay a proper service.
Item number is the primary key of this entity. Also this entity has a derived attribute because
total price can be calculate by using item price and quantity.
Worker entity
Workers entity has five attributes and two relationships. Workers are very important to fulfil
and to maintain company works.
Stores entity
Stores helped to keep an extra lots for company and it is helped to face an emergency situations.
Item ID is the primary key of this entity.
After design ER diagram writer was created tables for Poly Pipe Company according to ER
diagram.
Converting ER diagram into logical database diagrams (Tables)
(Underlined words in following tables are primary keys and foreign keys)
38
Customer entity into customer table
Table 1.1.2: customer table
Customer ID First name
Last name
Telephone
Email
category
Payment entity into payment table
Table 1.1.3: payment table
Bill number
Date
category
Buyer’s name
Place address
Installation type
Installation entity into installation table
Table 1.1.4: installation table
Installation ID
Place name
Supply entity into supply table
Table 1.1.5: supply table
Item number
Item name
Price per 1 item
quantity
total
Store entity into store table
Table 1.1.6: Store table
Item ID
Item name
Item price
Responsible
Issued date
Rack No
person ID
Worker entity in to worker table
Table 1.1.7: worker’s table
Worker’s First Last Category Telephone Work
ID
name name
no.
No
Work
Item
Used
place No.
no
item
Writer was made six logical diagrams by using upper ER diagram.
39
Data redundancy
Data redundancy occurs when the same piece of data is stored in two or more separate places
and is a common occurrence in many database systems. (telend, 2021)
This thing is reasoned to reduce the internal storage in servers and data centers. Also it is effect
to minimize the effectiveness of software and other operation systems and make other
obstacles.
How to reduce data redundancy?
Normalization is the method to avoid this data redundancy. There are three normalization
methods can be used for reduce redundant.
Normalization
There are three common normalization methods. Such as first normalization second
normalization and third normalization methods as well. 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 data and ensure data is stored logically.
First normalization (1 NF)
Each field in a table holds particular information. For example, in a specialist overview, every
one table may hold stand apart origination date field. In this stage skip all anomalies were
repeated.
Second normalization (2 NF)
Each field in a table that isn’t a determiner of the substance of a substitute field must itself be
a limit of substitute fields in the table. In this stage system designers separate table in to partial
tables that they were created.
Third normalization (3 NF)
Any change to an origination date would normally be reflecting in all tables that association
with the origination date table. In this stage created tables separate further to other tables as
well.
40
Advantages and disadvantages of normalization
Table 1.2.1: Advantages and disadvantages of normalization
Advantage
Disadvantage
A more modest information base can be kept More tables to join as by spreading out
up as standardization disposes of the copy information into more tables, the need to join
information. Generally speaking size of the table’s increments and the undertaking turns
out to be drearier. The information base gets
information base is diminished thus.
more enthusiastically to acknowledge too.
Better execution is guaranteed which can be
connected to the above point. As information Tables will contain codes as opposed to
bases become lesser in size, the goes through genuine
information
as
the
rehashed
the information turns out to be quicker and information will be put away as lines of
more limited in this way improving reaction codes instead of the genuine information.
Thusly, there is consistently a need to go to
time and speed.
the query table.
Narrower
tables
are
conceivable
as
standardized tables will be tweaked and will As the typical structure type advances, the
have lesser segments which considers more exhibition turns out to be increasingly slow.
information records per page.
Proper information is needed on the different
Fewer files per table guarantees quicker ordinary
support assignments (file modifies).
structures
to
execute
the
standardization cycle effectively. Reckless
use may prompt awful plan loaded up with
Also understands the choice of joining just
the tables that are required.
significant peculiarities and information
irregularity.
Anomalies
Anomalies are the columns which repeat unnecessary data in this columns. The process of
normalization system developers remove these anomalies from their tables for reduce data
redundancy. Also this process is helped to make simple UIs and save database space.
Writer was identified several anomalies in customer table and remove these anomalies in first
normalization.
41
Figure 1.2.1: Anomalies
Writer was identified that the status and category as anomalies. In the following normalization
stage writer was removed these anomalies from customer table.
Examples for first normalization
Before normalization
Table 1.2.2: Before normalization
Customer Status First
Last
ID
name
name
Telephone Email
category
0235
Mr
John
Lockwood 456-12365
john@gmail.com
Sale
0236
Mrs
Mary
Monston
251-23165
mary@gmail.com
Sale
0237
Mr
Trewo
Denis
854-12365
denis@gmail.com
Work
0238
Mr
Jonathon Smole
794-25894
smole@gmail.com
Sale
0239
Mr
Tom
Smith
321-52865
tom@gmail.com
Work
0240
Mrs
Froster
Hudson
564-26423
hudson@gmail.com Repair
42
After normalization
Table 1.2.3: After normalization
Customer ID First name
Last name
Telephone
Email
0235
John
Lockwood
456-12365
john@gmail.com
0236
Mary
Monston
251-23165
mary@gmail.com
0237
Trewo
Denis
854-12365
denis@gmail.com
0238
Jonathon
Smole
794-25894
smole@gmail.com
0239
Tom
Smith
321-52865
tom@gmail.com
0240
Froster
Hudson
564-26423
hudson@gmail.com
Before normalization customer table has six columns as “Customer ID, Status, First name, last
name, Telephone number and Email”. In first normalization should be removed redundancies
data in tables. Customer table has two repeated data columns and it was removed in first
normalization. After that the table was refereed to second normalization.
Examples for second normalization
Table 1.2.4: Before normalization
Item ID
Item name Item price
Responsible
($)
Issued date
Rack No
(Issued)
person ID
0645
½” Pipe
3.90
A21
03/25
02
0354
½” L-bows
1.20
A21
03/25
03
0354
½” L-bows
1.20
A21
03/25
03
0354
½” L-bows
1.20
C21
03/26
03
0852
1” “T” Joint
2.60
A15
03/27
01
Table 1.2.5: After normalization
Responsible (Issued) person ID
Issued date
Rack No
Item ID
A21
03/25
02
0645
A21
03/25
03
0354
A21
03/25
03
0354
C21
03/26
03
0354
A15
03/27
01
0852
43
Item ID
Item name
Item price ($)
0645
½” Pipe
3.90
0354
½” L-bows
1.20
0354
½” L-bows
1.20
0354
½” L-bows
1.20
0852
1” “T” Joint
2.60
In second normalization repeated columns separated two or more tables. It was helped to reduce
data redundancy.
Example for third normalization
Table 1.2.6: Before normalization
Worker First Last
Category
Telephon
Wor
Work
Item
Used
e no.
k No
place No. no
item
’s ID
name
name
A04
Tim
Lee
Repair
145-36524 05
26/5
0645
L-bows
A04
Tim
Lee
Repair
145-36524 05
485B/1
0354
T-socket
A02
John
Moos
Repair
245-65892 021
95A
0395
T-socket
A06
Kim
Benet
Replacing
482-98756 041
35-54/1
0652
½’ pipes
Table 1.2.7: After normalization
Workers details
Worker’s ID
First
Last name
Telephone no.
name
A04
Tim
Lee
145-36524
A04
Tim
Lee
145-36524
A02
John
Moos
245-65892
A06
Kim
Benet
482-98756
44
Work details
Work No
Work place No.
Item no.
05
26/5
0645
05
485B/1
0354
021
95A
0395
041
35-54/1
0652
Material details
Item no.
Used item
0645
L-bows
0354
T-socket
0395
T-socket
0652
½’ pipes
Category details
Category
Workers ID
Repair
A04
Repair
A04
Repair
A02
Replacing
A06
Third normalization is helped to further reduce data redundancy.
Interface design and development
Interfaces are the external appear of a software or a database system. So interface design is the
most important part in developing. Also developing companies have interface designer teem
for doing this work perfectly.
As a worker in a leading IT company writer was selected Microsoft Visual Studio for interface
designing and system building as well as SQL server was used to make database.
45
Figure 1.2.2: Visual Studio
Figure 1.2.3: SQL Server
First of all writer was designed a cover interface (Welcome interface) for proper attract. After
that Logging page, Manu page and other sub interfaces was created by writer for Poly Pipe
Company. Before interface designing writer was drown rough notes that it was helped to make
a proper and perfect interfaces.
46
Welcome page
Figure 1.2.4: Welcome interface
Writer was created this welcome page for appropriate with company background. So writer
was selected simple and relevant photo from internet and insert into welcome interface. In this
interface has only one button it is “Next” using for go to next page (Logging page).
Logging page
Figure 1.2.5: Logging page
Writer was designed this page with eye comfort design and including company logo. Only used
little amount of buttons in this page and added “Username”& “Password” for system security.
47
Writer used company Email Address as username and strong alphanumeric password than can
be easily kept their mind.
Also made message system for correct loggings and incorrect loggings and added an “Exit”
button for logout from system.
Menu page
Figure 1.2.6: Manu page
As the third interface writer was created “Manu” page. In this page has six tabs for main table
interfaces and used two buttons for back to previous and exit from system as well.
All tabs have their specific tasks and these are working separately for store, save, update and
delete data in this tables. Also inside of all tabs have search buttons for search data.
48
Customer interface (customer page)
Figure 1.2.7: customer page
In this customer page had included combo box for select category and it was helped to save
time for data saving process. Customer ID is the primary key of this table and it was used for
search data.
Supply page
Figure 1.2.8: Supply page
49
In the supply page writer was selected item number as primary key and it was used for
searching data in supply details.
Payments page
Figure 1.2.9: Payments page
Writer was included a calculator for payment tab and it was helped to calculate item prices
without an external calculator. Also writer was added a combo box for category section to save
time and select category without typing. In this window Bill number work as a primary key.
Store page
Figure 1.2.10: store page
50
This page has two search buttons because this details can be search by using Person ID and
Item ID. Store keeping is very important to manage supply chain and it is helped to work on
emergency situations.
Worker page
Figure 1.2.11: Worker’s page
Figure 1.2.12: Worker’s page 02
Worker’s page was created by writer by including all the details about workers. It is helped to
fulfil work tasks and make a perfect job. However writer insert two search tabs which can be
search by Worker’s ID and Work Number.
51
Validation (Informatica, 2021)
Data validation is the method that checking the accuracy and quality of data before using to
importing or processing data for data basing and other data processing purposes. Different
types of validation is depending on destination constraints or objectives. Data validation is a
method of data cleansing and reducing carefully.
Why perform data validation?
Data validation is very important to data processing and proper data managing. There are five
types of data such as,

Constraint validation: - Attributes of Min, Max, Step, Patterns and required validation.

Structured validation: - validation is to confirm legalize or prove that something

Data range validation: - Data range validation is used to check data count, amount, and
the data size.

Code validation: - Check the code of software or web site for checking it’s working is
called as code validation

Data type validation: - check the data type that it is string, integer or varchar is called
as data type validating
How writer used validating mechanisms to Poly Pipe Company
In the validation paragraph writer was mentioned the importance of data validation and how
do we do it. Writer was used many validation types for poly pipe company for better product.
So writer applied check boxes, combo boxes, validation codes, and checking systems for data
base system.

Writer was used string data type for all alphanumeric data, integer type for all number
data and varchar type for all letter types.

Combo boxes were used for select most appropriate answer for its space and keep it on
not null formatting.

Calculate method was used to record the correct prices and other countable data.
These are the validation mechanisms was applied by writer for Poly Pipe Company.
52
Examples for validation in Poly Pipe
Figure 1.2.13: Structure validation (Primary key
using)
According to this figure, user must insert numeric
values for customer ID
Figure 1.2.14: Data type validation (Integer type)
According to this figure user can only insert
integer values.
Figure 1.2.15: Data type validation (varchar type)
User can insert varchar values for email address.
Figure 1.2.16: Data type validation (Varchar type)
53
Figure 1.2.17: Data type validation (Varchar type)
Figure 1.2.18: Code validation (Coded for search
by Primary key type)
Figure 1.2.19: Code validation
Message box show to inform validation
Figure 1.2.20: Code validation
Message box show to inform validation
54
Validation and verification (PP.Pankaj, 2020)
Table 1.2.8: validation and verification
Validation
Verification
It includes checking documents, design, It includes testing and validating the actual
codes and programs.
product.
Verification is the static testing
Validation is the dynamic testing
It does not include the execution of the code. It includes the execution of the code.
Methods used in verification are reviews, Methods used in validation are Black Box
walkthroughs,
inspections
and
checking.
desk- Testing, White Box Testing and nonfunctional testing
It checks whether the software conforms to It checks whether the software conforms to
specifications or not
specifications or not
It can find the bugs in the early stage of the It can only find the bugs that could not be
development.
found by the verification process.
The goal of verification is application and The goal of validation is an actual product
software architecture and specification
It comes before validation.
It comes after verification
The connection between user and system
User is the person who using the system and the system is called as the software or mechanism
that service electronically for the user. These two factors have a relationship which reason to
run an organization properly.
In this company system developer was installed a database system for company day to day
activities. Now writer is going to show how system and user requirements were fulfilled by
developer.
55
Evaluate the effectiveness of system and user requirements
Table 1.3.1: how developer fulfil user and system requirements
Req. type
Requirement
Result
User
Identify unique categories in Completed from “Menu” page
requirement
this records.
Writer identified all unique characters in the
system and divide sections according with
these requirements.
Add unique functionalities for Completed from each pages by using
identify
customers
customer
needs
and “Primary keys”.
separately Writer used ID, TP number or Email as the
(IDs, Telephone numbers or primary key. Because of that these values
Email address).
are unique from each other.
Keep notes and records about Built a database system for keep records.
customer needs.
Writer created database tables for insert
each records which will necessary for
further assessments and services.
Customers can be request Customer can be request installations
installations
through Emails and calls.
By giving one single TP call or email
message, customer can be reserved a service
for convenient time and date.
Separate customers for tailor- Installation section was separated into
made installations
categories for better and relevant service.
Writer divided installation interface and its
functions relevant with proper installation.
Need to keep records about Users can be kept a record about other
other
requirements
services.
and requirements and services through DB
system.
Point workers for works and Installed an auto reminder system.
let they know about works and Writer built an automatic reminding system
customer’s details
for keep time schedule for avoid missing
56
System
Should be user friendly
requirements
Writer design a system by using very simply
for easy use.
User had only operate GUIs to insert, update
delete and search data.
Should be take a very small System only had 35Mb.
space in servers
System size is very small. It can be used for
any PC with best performance.
Should be attractive
Interfaces were designed by using beautiful
and simple designs.
All UIs have images that relevant with its
tasks.
Should be low cost
Writer could be try to decrease system cost.
Should be easy to maintain
This system was very easy to maintain and
troubleshooting. Because system was built
with C# programming language and it is
very common and reliable programming
language can be maintained
Should be able to develop
System had been made by keeping space to
future developments.
Writer has enough knowledge about the
system and it can be updated to new versions
that
relevant
with
customer’s
future
purposes.
Should be protected from Installed vires guards for all machines in
vires and malwares
company.
Should be easy to update
Easy to update via online
Poly Pipe company had many customers and little amount of users. So writer was decided to
give priority to customer side. Also they were needed to give a comfortable service for their
customers. Writer could be able to achieve this target by using latest methods and technologies.
57
Effectiveness of system design
Writer could be able to create a most relevant database system for user requirements. All the
system requirements were checked by using selected users and customers which it is helped to
create a perfect final product.
Table 1.3.2: how developer fulfil user and system requirements
UI
Logging
purpose
Used validation method
For secure the system from non- Structure and code validation
authorized parties
Menu
To select correct page (table) to No validation included
record data
Customer
To record customer information
Code and data type validation
Payments
To record payments information Code and data type validation
and issue bills and invoices
Installation To record installation information Code and data type validation
and calculate the installation
values
Workers
To record worker’s information Code and data type validation
and their duties, completed works
and give tasks
Stores
To record store information and Code and data type validation
manage item lots
Supply
To record supply information and Code and data type validation
keep active supply chain
58
Why writer used these validation methods for this system
Considering a logging page, it is the wall that separate users and DB system. So writer inserted
complex validation methods to it. Such as,

Coded a logging button for access only the given username and password.

Varchar type for username text box and password text box

If user logging successfully, message box show “Logging Success!”
In the menu page has no special validation methods included. After successful logging anyone
can be gone to each table.
Considering a customer page writer implement a code to show a message box for inform save,
update and delete. Also that user can only insert customer ID from integer values.
As well as other UIs have these validation methods to validate the inserted data.
Relationship with UIs and ER diagrams
ER diagram can be described as a cat log of this DB system. All the entities in ER diagram
have UIs as pages. All the attributes in ER diagram have UIs as labels. All the primary keys
work as the main function of each table and all foreign keys work as the connection of other
tables. So writer created this ER diagram according to user requirements and all UIs were
created with this ER diagram.
Null values
All the important data such as customer name, item price, telephone number, as well as other
necessary data must be inserted. However user can be skipped last name, Email address as well
as other unnecessary data for save time.
Table 1.3.3: Null values
Null values
Not null values
Emails, Last name, place name, number of All values other than null values
participations, workers address, customers
address.
Data base system (DB system)
Data base system was developed to record day to day activities, deals, services and details in
this company. Writer was used Microsoft SQL server for build DB system in Poly Pipe
Company.
59
What is the DB system?
A database is an organized collection of structured information, or data, typically stored
electronically in a computer system. Together, the data and the DBMS, along with the
applications that are associated with them, are referred to as a database system, often shortened
to just database. (Orecle, 2021)
User interfaces and their outputs
Payments data saving
Figure 2.1.1: Inserting payments data
This is the payment interface. User was using this to inset a details about a sale and output
shows the data was inserted by the user has been recorded in database table. All the values
were inserted by user that show properly in DB table.
60
Supply data saving
Figure 2.1.2: Inserting supply data
This is the supply table. This interface show how inserted data in supply interface has been
saved in supply table. All the inserted data properly inserted into supply table
Store data inserting
Figure 2.1.3: Inserting store data
This figure shows how store data saving in store table. This table have two search options.
Because of that item number is the primary key of this table. Also can be searched by person
ID. Person ID isn’t a primary key but the value of person ID is always not null and unique.
61
Customer data inserting
Figure 2.1.4: Inserting customer data
Customer table have view button. Because someone need to see records about customers he
or she can see this details by using this view button.
Installation data saving
Figure 2.1.5: Inserting installation data
62
Figure 2.1.6: Inserting workers data
As the store table worker’s table has two search options and two interfaces. Because worker’s
entity has many data to insert. So writer divided worker’s interface into two work interfaces
for proper management.
Figure 2.1.7: Inserting workers02 data
63
Examples for querying across multiple tables
Figure 2.1.8: Examples for multiple queries
Delete data
The unnecessary data or incorrect data need to erase from database diagrams. Because these
data are reasoned reduce storage in storage devises and reduce system performance. So writer
was inserted a delete button to remove data in database. First of all user need search these
details from primary key. Then click delete button. All the records from this primary key will
be deleted.
Deleting
Figure 2.1.9: data deleting
64
Output
Figure 2.1.10: output of delete
Data updating
Incorrect data in data base system want to change to correct data. So writer used update button
for this process. After searching relevant data and change it. After that user can be used update
button for save this updated data.
Figure 2.1.11: Data updating
Figure 2.1.12: Output for data updating
65
Examples for validation
Figure 2.1.13: Examples for data validation
Writer was used multiple tables in this database system and validation technics. All activities
were done on Microsoft Visual Studio by using C# language.
66
How writer used the most appropriate data type
Figure 2.1.13: Customer table
According to this figure writer was applied integer and varchar data types for all tables. Because
these tables have deferent types of data. Also writer used integer type for all number data and
varchar type for other data types. Such as letters, characters and symbols.
Writer was inserted message systems for correct and wrong data types.
Figure: 2.1.14: Error messages
Developer was made database system for standard data types. So date is not correct in interface
and message box say what is the error.
Figure: 2.1.15: Error messages
67
In this interface has inserted an incorrect data type. So message box show what is the error.
Figure: 2.1.16: Error messages
This message box show about incomplete data. Because the textbox of used item is empty.
68
Query language
What is the query language in a database?
A query language is a special programming language for searching, maintaining and changing
the contents of a database. Although the term originally use to a sublanguage for only searching
(querying) the contents of a database. Latest query languages such as SQL are general
languages for interacting with the DBMS, including statements for defining and changing the
database schema, populating the contents of the database, searching the contents of the database
and updating the contents of the database. In SQL use queries for insert data, update data, delete
data, create databases, create tables, modifying tables and databases and etc. (Springer Science,
2020)
Querying for build a database in SQL Server
Create a unique database for Poly Pipe Company
Figure 2.2.1: Create db
This is the query for create a database. By using this query writer was made a database as
“poly_pipe_company”.
Create an Installation Table
Figure 2.2.2: Create Installation table
This is the query to make tables. Writer was created seven tables for poly_pipe_company data
base.
69
Create a Customer table
Figure 2.2.3: Create customer table
Create a Supply table
Figure 2.2.4: Create supply table
Create a Payments table
Figure 2.2.5: Create payments table
70
Create a Store table
Figure 2.2.6: Create store table
Create a Workers01 table
Figure 2.2.7: Create workers01
table
Create a Workers02 table
Figure 2.2.8: Create workers
table
71
Created tables
Figure 2.2.9: Created tables in
database
SELECT query
Figure 2.2.9: Select query
72
INSERT query
Figure 2.2.10: Insert query
This query is used to insert data into created databases.
UPDATE query
Figure 2.2.11: Update query
Update query is used to update the data has been inserted. By using this query developer can
be update all kinds of data in the tables in database system.
73
DELETE query
Figure 2.2.12: Delete query
Delete, insert and update queries are the most important and useful commands in this database
system. Also these are very helpful to maintain data and keep all information in active position.
SELECT query
Figure 2.2.13: SELECT query
74
ADD query
Figure 2.2.14: Add query
DROP column
Figure 2.2.15: Drop query
Add and drop functions are needed to insert new or remove old columns to database system.
75
Coding a Logging Button
Figure 2.2.16: Coding logging button
Coding a Next Button
Figure 2.2.17: Coding next button
Coding an Exit Button
Figure 2.2.18: Coding exit button
Next button is helped to go next page and exit button is needed to exit from program.
76
Coding the tabs in menu
Figure 2.2.19: Coding tab buttons
Make a connection between SQL server and Visual studio
Figure 2.2.20: Connecting to SQL connection
77
Coding an Insert Button
Figure 2.2.21: Coding save button
Coding an Update Button
Figure 2.2.22: Coding update button
78
Coding a Delete Button
Figure 2.2.23: Coding delete button
Coding a Search Button
Figure 2.2.24: Coding search button
Writer was used SQL queries and C# programing language for build this project. In this project
writer was made queries and language commands to proper work and fulfil company
requirements. Coding and querying also need to make database system. After design all
79
interfaces developers start coding or querying the system. The end of this procedure developer
can be taken a semi completed result as a database software.
Data base security
Why database security important?
So let us first understand what database security, Database security is measures, controls, and
tools that are designed to preserve as well as establish the integrity, confidentiality, and
availability of the database. Confidentiality is the most important thing of data security because
this is help to get satisfaction and make a trustiness in customer’s and developer’s lives.
The database security should be capable of addressing and protecting the data available in the
database, the DBMS or the database management system, any of the applications that are
associated with it, the server of the physical database or the underlying hardware and the virtual
database server and the network or the computing infrastructure that is used to access the
database. Database security is depended on the physical and technical security components.
(Sarangam, 2020)
What can we do for secure database system?

Should be used strong usernames and passwords to system.

Should be used security internet connections.

Should be changed passwords at least twist a year.

Make sure your system password is secret.

Should be used strong vires and malware protection.

Should be used quality hardware devices.

Should be maintained database system properly

Should be updated your system.
Security mechanisms were used in Poly Pipe Company
Writer used strong password and user name for system
According to company requirement writer used company email address as their username and
gave chance to give an appropriate and strong password for system. This is the first security
mechanism was inserted by writer into system. If username and password are correct, user can
80
logging enter into the system. However username or password is incorrect user cannot logging
to the system. If anyone need to logging, the username and password must need to be correct
for logging.
If logging was succeed message box will show “Logging Success!” and if not succeed message
box show “logging not success”.
Figure 2.3.1: Success logging
Figure 2.3.2: logging not success
External security
For protect company data and information from external persons or organizations, developer
was given instructions to responsible persons in Poly Pipe Company,

Should be keep username and password protected.

Should be select a person to maintain database who can trust.

Should be update system and virus protection.
Before receiving database system to the company writer got a self-assessment about system
security.
81
Table 2.3.1: Security self-assessment
Section
Security
System logging security
Highly protected
Database
Protected
System software
Protected and it is relevant to user’s
operation system
Virus and malware protection
Security is depend on user’s virus guard.
However
software
protection
methods
implemented.
Other options
Whole system is relevant with user’s devices,
such as printers, scanners, barcode readers
and etc.
Who can access this database?
All the responsible persons who can be accessed to the database system. But these persons have
one special part or section to manage and data control.
Table 2.3.2: Security self-assessment
Section/ table
Responsible person
Logging
All the responsible users
Customer
Receptionist
Payments
Cashier
installation
Installation manager
Stores
Store keeper
Supply
Supply chain manager
Worker01 and worker02
Manager HR
General Manager of a Poly Pipe Company was given username and password for these users
to logging to this system and gave instructions to protect this username and password by
themselves. After giving these secret things users have a responsibility to protect and keep it
secretly.
82
Database maintaining (OfficeTooles, 2015)
Database maintenance is a method which used to describe a set of tasks that are all run with the
intention to improve the database system. There are routines meant to help performance, free
up disk space, check for data errors, and check for hardware faults, update internal statistics,
and many other important facilities.
Database Maintenance program can be divided into four parts

Index Defragmentation

Log File Maintenance

File/Data Compaction

Integrity Check
Index Defragmentation
SQL databases contain objects called ‘indexes’ that work a lot like the Dewey Decimal system
of a library. Each table inside of your Office Tools Professional database contains at least one
indexed column that we use when we need to search for a specific value (such as a Customer
or a Work Code).
Log File Maintenance
SQL Databases contain a ‘Log File’ that keeps track of every single transaction that happens
in the database. Using these log files, you can actually restore a database to the state it was at
any point in time before. So if something bad happens to your database (either corruption,
accidentally, or maliciously), you can recover your data as it was the instant before the event
happened. So the Log files are extremely important parts of the system, and they require their
own special maintenance as well.
File/Data Compaction
As you use your SQL database, the file size both grows and shrinks. Each time the file needs
more space, it grows by a certain increment. And as data is added to the database, it is saved
into any spot that has enough memory to store that chunk. Unfortunately, the data is not always
stored close to other data from the same table. The data itself becomes fragmented, just like the
indexes we talked about before. In order to resolve this issue, we run what is called a ‘Data
Compaction’, which reorganizes the file by grouping all associated data together. This not only
83
groups data together, but it can also free up space inside the file as well, which can then be
reclaimed by the operating system as free disk space on your hard disc.
Integrity Check
Over time, your database will go through numerous changes. Data will be added and removed,
tables will be added, modified, and removed. The database’s overall schema will change.
Indexes will be added, rebuild, deleted, and re-created. Data columns will be added, modified,
and removed. The database will go through thousands upon thousands of changes just as a
natural course of its lifespan. But each change, no matter how small, has the potential to
introduce corruption into the database.
Maintain schedule for Poly Pipe Company
Table 2.4.3: Maintains schedule 01
Duty
Daily
Weekly Monthly Annually
Check DB connectivity
Update Vires protection
Update operating system
Change Wi-Fi passwords
Change other passwords
Check all the hard ware devices
Cleanup all the discs
Cleanup unnecessary files
Check notifications
Clean all devices
This maintain schedule was created by the maintaining panel in software Development
Company and take two copies from it. Also simplified maintain schedule was given to the Poly
Pipe Company. This following maintain schedule is the simplified maintain schedule was given
to Poly Pipe Company.
84
Table 2.4.4: Maintains schedule 02
Purpose
Time
Checking
Updating
Duty
Responsible person
09.00 to 10.00
Roughly check all devises
Selected user in
Every day
before start daily works
company
17.00 to 18.00 first
Check devices and replace
Selected user in
day of month
broken items
company
16.00 to 17.00
Update vires protection
Selected user in
Friday or Monday
and other soft wares
company who have
IT literacy
Cleaning
08.00 to 09.00
Clean daily using items
Cleaner
Once a day in each
Change items for relevant
Selected user
month
purposes
Enough time in
Take a final assessment
each year
about the Data base
every Monday
Changing
Assessment
Selected user
Backup plans
A backup is the copy that developers make to data for self-keeping. This backup pans are used
to better protection for the stored data in database systems. The backup should then be stored
somewhere safe so that it can be retrieved safely if required.
There are several types of backup methods can be used to protect our data from emergency
situations.

Full back up: - this is a complete backup of all of stored data

Incremental backup: - start from full backup and continue incremental backup.

Differential backup: - like an incremental backup but overall product is like full
backup
From these three backup methods writer was selected incremental backup to Poly Pipe
Company backup plane.
Incremental backup
An incremental backup is one in which successive copies of the data contain only the small
parts that has changed since the preceding backup copy was made. When a full recovery is
needed, the restoration process would need the last full backup plus all the incremental backups
until the point of restoration. (tend, 2021)
85
Figure 2.3.3: incremental backup
(www.google.com)
This backup method is the most relevant backup plan for this company. Because Poly Pipe
Company isn’t need a long previous data records. So writer was developed this backup plan
for this company and reserved a file server for this backup process. Also this backup plan can
be kept records from last six months. They were satisfied about it and the technical officer in
this company was responsible to maintain it.
86
Data types
Each types of software read only relevant data types. Because all software were made for
special purposes and tasks. This data types are helped to understand information to computer.
Data types were classify for special data such as numbers, letters, characters and etc.
Table 2.4.1: Data types
Data type
Relevant data
Integer
Numbers only
Floating Point
Floats only
Character
Special characters
String
Any types
Boolean
Booleans
Enumerated type
Enumerate type only
Array.
Aries only
Date.
Numbers letters and special characters
Meaningful data
User should be responsible to enter correct data type for record real data and information.
Although system developers make proper options to record valuable data into database system.
As an example user going to insert first name as ‘Abc’, it’s not matter but user need to insert a
company name as ‘Trade50’, it’s difficult to do. Because the name ‘Trade50’ isn’t meaningful
to enter as first name, it is a company name or trade mark. So user should be always need to
enter valuable and correct data into system.
Information management
Insert, update, delete and search functions are used to system information management. As a
perfect DB system, Poly Pipe Company’s DB system has these all functionalities for manage
data and information.
87
Figure 2.4.1: Information management
Insert data
Figure 2.4.2: Data insertion
User is inserting a new information set through repair category. After he or she inserted this
information message box show to indicate the save. In the DB table can be seen the insertion.
88
Figure 2.4.3: Searching
Group by
Figure 2.4.4: group by
Group by query is used to make a group some selected data in a table. In this figure writer was
queried for group customer’s first name and telephone number.

First of all should need to select a table name for group.

In second step need mention about which columns we are integrating.
89

After that should need to mention the name of the column that we select to organize.

Finally give “group by” command with needed column name.
Order by
Figure 2.4.5: order by
By using order by query can be made an ordered data selection from alphabetical order or
ascension order.

In the first step, should be selected the data range from a table.

After that mention the table name.

Finally mention the column name for order the data range
Between query
Figure 2.4.6: between
90
Between queries is used to take a selected data range. It can be used integer values only. So
this query is helped to get an idea about data range of a day, week or month.

Should select the data range first.

After that should be mentioned the table name.

Should mention the column name with where statement

Type the required data range with between statement
Where Query
Figure 2.4.7: where query
Where query is used to organize a data range from table.

Should select the data range first

Select the table name

Should query the command for necessary data range
91
Database testing
What is the testing?
Database testing is the process of checking that everything is in order with regards to the
database. This is done under a controlled testing environment. The process is also known as
back-end testing or data testing. Database testing involves checking things such as the schema,
tables, or triggers. Also this testing is used to fulfil and recover customer’s requirements.
(reqtest, 2017)
Database testing is mainly composed of constructing SQL queries to assert and validate
different database operations, structures, and attributes required by the application the database.
Database testers work with application developers to properly test the scenarios in which the
database is to operate. A database tester should fully understand the business rules of the
application in addition to being familiar with the database structure.
Why is database testing important?
When the integrity of data in an application is compromised, it can lead to huge monetary
losses.

To prevent attacks

Ensuring that network issues or power outage do not affect the integrity of data or lead
to data loss or corrupted data

To remove errors from the database to maintain the quality of data

To verify that every piece of data is being stored in the right format

To validate relationships between entities within the database
What should I test?
The first set of test cases are for the Create, Read, Update, and Delete (CRUD) operations that
your application performs. This is to ensure that data is being stored and retrieved in ways that
assure data integrity. A tester can do this directly from the application interface or use a
database management system (DBMS) to run queries using SQL data manipulation language
(DML) commands.
92
How to test a databases
If you would rather not test manually, you may be relieved to know that automated database
testing is very similar to automating tests on application code. The major difference is that this
time, your tests are running queries instead of application code. The following steps found in
testing application code also applies:

Prepare your test environment

Run your tests using a test runner (e.g. Selenium)

Check and validate your results

Report your assertions
This is why a database tester’s best attribute is being able to craft SQL queries for every
required test case.
Database testing tools
There are loads of database testing tools out there. The database testing tool you choose will
depend on one or more of the following

Testing strategy (manual, automated or hybrid)

Database type (SQL or No-SQL)

Database vendor (MySQL, MSSQL, Oracle, or other)
Source: - (Adepoju, 2021)
There are many testing types such as,

Unit testing.

Component testing.

Smoke testing.

Sanity testing.

Regression testing.

Integration testing.

API testing.

UI testing.
93
Figure 3.1.1: Manual testing
The main target of testing is increase software quality.
Black Box Testing
Black Box Testing is a software testing method in which the functionalities of software
applications are tested without having knowledge of internal code structure, implementation
details and internal paths. Black Box Testing mainly focuses on input and output of software
applications and it is entirely based on software requirements and specifications. It is also
known as Behavioral Testing
Figure 3.1.2: black box testing
White Box Testing
White Box Testing is software testing technique in which internal structure, design and coding
of software are tested to verify flow of input-output and to improve design, usability and
security. In white box testing, code is visible to testers so it is also called Clear box testing,
open box testing, transparent box testing, Code-based testing and Glass box testing.
Figure 3.1.3: White box testing
94
Black box testing and white box testing
Table 3.1.1: deference of black box testing and white box testing (Hamilton, 2021)
Black Box Testing
White Box Testing
The main focus of black box
White Box Testing (Unit Testing) validates internal
testing is on the validation of
structure and working of your software code
your functional requirements.
Black
box
gives
To conduct White Box Testing, knowledge of
and
underlying programming language is essential.
focuses on testing effort on the
Current day software systems use a variety of
software system behavior.
programming languages and technologies and its not
abstraction
testing
from
code
possible to know all of them.
Black box testing facilitates
White box testing does not facilitate testing
testing communication amongst
communication amongst modules
modules
Integration testing
Integration testing refers to testing individual components and assessing how well they will
perform when combined. Integration testing is a type of testing meant to check the
combinations of different units, their interactions, and the way subsystems unite into one
common system, and code compliance with the requirements. The developer who writes the
code is responsible for performing the integration of modules. Then after checking the modules
for their integration it will be passed on to the Q.A. team, Here it will be the responsibility of
the Q.A
Figure 3.1.4: integrate testing
95
System testing
System testing, also referred to as system-level tests or system-integration testing, is the process
in which a quality assurance (QA) team evaluates how the various components of an
application interact together in the full, integrated system or application.
System testing types

Scalability Testing.

Reliability Testing.

Documentation Testing.

Security Testing.

Graphical User Interface Testing (GUI)

Exception Handling.

Volume Testing.

Stress Testing.
The goal of software testing is to find errors, gaps, or missing requirements in comparison to
the actual requirements. When a software development project is going on, you need to know
that errors may appear in any phase of the life cycle. Few of them are known to be
undiscovered. Professionals who test software include QA Analysts, Test Engineers, QA Test,
Test Analysts, Software Testers, SQA, Quality Assurance, Engineers involve to this testing.
Justification about system testing
Writer was used system testing method for test the DB system in Poly Pipe Company.
How to use system testing types to test DB system
Scalability testing
Scalability testing is used to check the system which it is enough to fulfil system requirements.
Also in this testing developers test the size of database, size of the data which wish to insert
and hardware components that suitable with this DB system.
Reliability testing
In this testing type developers test the system for match it with system and user requirements.
So if it is passed developer could be satisfied about the system is reliable for user’s company.
96
Documentation testing
Documentation is the first step of system building. Developers test this documents after the
documentation process and before system building as well. Using this method developers can
be had a good giddiness to system building
Security testing
Security testing is very important to protect our system from unauthorized parties and other
treats. So writer describe further about security mechanism that used in Poly Pipe Company’s
system in the following steps.
Graphic and User interface testing
This testing method is used to the user friendliness of the system. Also developers test all
functions in the interfaces. So writer was used this method for test the system in Poly Pipe
Company.
Stress testing
Stress testing is used to check how system working on heavy load with multiple tasks. Also the
speed testing is the part of this testing.
Hardware requirements
Table 3.1.2: user and system requirements testing
Operating system
Windows 8, 8.1,10
Processor
Up to intel core i3
Storage
512Gb to up hard disk
Ram
8Gb to up
Monitor
24” to up
Internet quality
802.3 Ethernet
Writer and team were tested hardware requirements for install DB system before install user’s
PCs. Also writer had to see, all PCs in Poly Pipe Company had been completed with these
requirements. So writer’s team could be easily installed DB system into PP Company PCs.
97
Testing user and system requirements
Table 3.1.3: user and system requirements testing
Requirement/function
Testing/ suggestion
System speed
Passed
Code errors
Passed
Interface errors
Passed
Design
Passed
Reliability
Had small mistakes, those are solved in
second testing round.
System security
Passed
System capacity
Not enough space in first time, it was
corrected in second testing round by
decreasing data type size
User friendliness
Passed
Working frequency
Passed
Test plan
Test is used to manage the testing time and test categories. So it is helped to do better testing
without weaknesses. Also this test plan is made by the developers who was built this system or
software. After the planning, testers test the system part by part.
Table 3.1.4: test schedule
Test plan
Scheduled time
Documentation
2 Days
Scalability
1 Dar
Reliability
1 Day
Security
2 Days
Interface testing
3 Days
Stress testing
1 Day
98
Testing schedule
Figure 3.1.4: Gantt chart for testing schedule
Interface testing
Test the payments table
This part is very important to run company activities. Because all financial and deals were
recorded in this payments table. Also user (Cashier) was used his system for all billings and
those activities were recorded in this payments table.
Insert testing in payment table
Figure 3.2.1: insert data into payments table
According to the image below (Figure 3.1.5) the system tester going to test data inserting and
he was inserted data as this figure. So the tester expect the result as this inserted data must be
saved in payments table in MS SQL server. Also that it is the expected result.
99
Actual result for insert testing in payment table
Figure 3.2.2: actual result for insert testing in payment table
Actual result shows the inserted data in interface and it is show the testing is success for insert
function.
Search testing in payment table
Figure 3.2.3: search testing in payment interface
Writer typed the Bill number in the search text box first and click the search button. All the
empty text boxes were filled from correct data and it shows the success of search testing.
Actual result search testing in payment table
Figure 3.2.4: Actual result for search testing in payment interface
100
Delete testing in payment table
Figure 3.2.5: delete testing in payment table
In this testing writer could be inserted all the data into text boxes or could be searched by bill
number to delete data in payment table. After the clicking the delete button which the selected
data will be deleted into table.
Actual result for delete testing in payment table
Figure 3.2.6: Actual result for delete testing in payment table
According to the figure delete function is properly working. So writer could be taken an idea
about delete testing is success.
101
Update testing in payment table
Figure 3.2.7: update testing in payment table
If someone need to update data in this table who need to search the update data row first. He
can do it by using search function. After searching data, user need to make the changers and
click update button to complete the task.
Actual result for update testing in payment table
Figure 3.2.8: actual result for update testing in payment table
102
Insert testing in supply table
Figure 3.2.9: insert testing in supply table
Writer inserted data into supply table and it was inserted to supply table successfully.
Actual result for insert testing
Figure 3.2.10: actual result for insert testing in supply table
This figure show the inserted data by writer in supply table.
Update testing in supply table
Figure 3.2.11: actual result for update testing in supply table
103
Type all data in supply interface and click the update button to update data in supply table.
Writer is going to update finally included data in supply table.
Actual result for update in supply table
Figure 3.2.12: actual result for update in supply table
Delete testing in supply table
Figure 3.2.13: delete testing in supply table
Actual result for delete testing in supply table
Figure 3.2.14: actual result for delete testing in supply table
104
Search testing in supply table
Figure 3.2.15: search testing in supply table
Actual result for delete testing in supply table
Figure 3.2.16: Actual result for search testing in supply table
Testing a store table
Insert testing in store table
Figure 3.2.17: Insert testing in store table
105
Actual result for insert testing
Figure 3.2.18: Actual result for insert testing in store table
Update testing in store table
Figure 3.2.19: update testing in store table
Actual result for update testing in store table
Figure 3.2.20: actual result for update testing in store table
106
Delete testing in store table
Figure 3.2.21: delete testing in store table
Actual result for delete testing in store table
Figure 3.2.22: actual result for delete testing
Search testing in store table
Figure 3.2.22: search testing in store testing
107
Actual result for search testing in store table
Figure 3.2.24: actual result for search testing in store table
Testing a worker table
Insert testing in worker table
Figure 3.2.25: Insert testing in worker table
Actual result for insert testing in worker table
Figure 3.2.26: actual result for insert testing in worker table
108
Update testing in worker table
Figure 3.2.27: update testing in worker table
Actual result for update testing in worker table
Figure 3.2.28: actual result for update testing in worker table
Delete testing in worker table
Figure 3.2.29: Delete testing in worker table
109
Actual result for delete testing in worker table
Figure 3.2.30: actual result for delete testing in worker table
Search testing in worker table
Figure 3.2.31: search testing in worker table
Actual result for search testing in worker table
Figure 3.2.32: actual result for search testing in worker table
110
Testing a customer table
Insert testing for customer table
Figure 3.2.33: insert testing for customer table
Actual result for insert testing in customer table
Figure 3.2.34: Actual result for insert testing in customer table
Update testing for customer table
Figure 3.2.35: update testing for customer table
111
Actual result for update testing in customer table
Figure 3.2.36: actual result for update testing in customer table
Delete testing for customer table
Figure 3.2.37: delete testing for customer table
Actual result for delete testing on customer table
Figure 3.2.38: Actual result for delete testing on customer table
112
Search testing for customer table
Figure 3.2.39: search testing for customer table
Actual result for search testing in customer table
Figure 3.2.40: actual result for search testing in customer table
Testing a installation table
Insert testing in installation table
Figure 3.2.41: Insert testing in installation table
Actual result for insert testing in installation table
Figure 3.2.42: actual result for insert testing in installation table
113
Update testing in installation table
Figure 3.2.43: update testing in installation table
Actual result for update testing in installation table
Figure 3.2.44: actual result for update testing in installation table
Delete testing in installation table
Figure 3.2.45: delete testing in installation table
114
Actual result for delete testing in installation testing
Figure 3.2.46: actual result for delete testing in installation testing
Search testing for installation table
Figure 3.2.47: Search testing for installation table
Actual result for search testing in installation table
Figure 3.2.48: Actual result for search testing in installation table
Security testing (tutorialspoint, 2021)
The main target of database security testing is to find out vulnerabilities in a system and to
determine whether its data and resources are protected from potential intruders. Security testing
defines a way to identify potential vulnerabilities effectively, when performed regularly.
What are the objectives of security testing?

Authentication

Authorization

Confidentiality

Availability

Integrity

Resilience
115
Data base attacks
SQL Injection
This is most common type of attack in a database system where malicious SQL statements are
inserted in the database system and are executed to get critical information from the database
system. This attack takes advantage of loopholes in implementation of user applications. To
prevent this, user inputs fields should be carefully handled.
Privilege Elevation in Database
In this attack, a user already has some access in the database system and he only tries to elevate
this access higher level so that he/she can perform some unauthorized activities in database
system.
Denial of Service
In this type of attack, an attacker makes a database system or application resource unavailable
to its legitimate users. Applications can also be attacked in ways that render the application,
and sometimes the entire machine, unusable.
Unauthorized Access to data
Another type of attack is gaining unauthorized access to data within an application or database
system. Unauthorized access includes −

Unauthorized access to data via user based applications

Unauthorized access to by monitoring the access of others

Unauthorized access to reusable client authentication information
Identity Spoofing
In Identity Spoofing, a hacker uses the credentials of a user or device to launch attacks against
network hosts, steal data or bypass access controls to database system. Preventing this attack
requires IT-infrastructure and network-level mitigations.
116
Data Manipulation
In a data manipulation attack, a hacker changes data to gain some advantage or to damage the
image of database owners.
Database Security Testing Techniques
Penetration Testing
A penetration test is an attack on a computer system with the intention of finding security
loopholes, potentially gaining access to it, its functionality and data.
Risk Finding
Risk Finding is a process of assessing and deciding on the risk involved with the type of loss
and the possibility of vulnerability occurrence. This is determined within the organization by
various interviews, discussions and analysis.
Zed Attack Proxy
It is a penetration-testing tool for finding vulnerabilities in web applications. It is designed to
be used by people with a wide range of security experience and as such is ideal for developers
and functional testers who are new to penetration testing. It is commonly used for Windows,
Linux, and Mac OS.
Paros
All HTTP and HTTPS data between server and client, including cookies and form fields, can
be intercepted and modified using these scanners. It is used for Cross-platform, Java JRE/JDK
1.4.2 or above.
Social Engineer Toolkit
It is an open source tool and human elements are attacked rather than the system element. It
enables you to send emails, java applets etc. containing the attack code. It is preferred for Linux,
Apple Mac OS X and Microsoft Windows.
117
Skip fish
This tool is used to scan their sites for vulnerabilities. Reports generated by the tool are meant
to serve as a foundation for professional web application security assessments. It is preferred
for Linux, FreeBSD, Mac OS X, and Windows.
Vega
It is an open source, multiplatform web security tool that is used to find instances of SQL
injection, cross-site scripting (XSS), and other vulnerabilities in web applications. It is
preferred for Java, Linux, and Windows.
Wapiti
Wapiti is an open source and web-based tool that scans the web pages of the web application
and check for scripts and forms where it can inject data. It is built with Python and can detect
File handling errors, Database, XSS, LDAP and CRLF injections, Command execution
detection.
Web Scarab
It is written in Java and is used for analyzing the applications that communicate through
HTTP/HTTPS protocols. This tool is primarily designed for developers who can write code
themselves. This tool is not OS dependent.
Testing with correct username and correct password
Figure 3.2.49: Testing 01
118
Testing with incorrect username and incorrect password
Figure 3.2.50: Testing 02
Testing with incorrect username and correct password
Figure 3.2.51: Testing 03
Testing with correct username and incorrect password
Figure 3.2.52: Testing 04
119
Insert testing
Figure 3.2.53: Testing 05
Actual result
Figure 3.2.54: actual result for testing
Writer was tested each states that can be inserted to username and password. So writer was
satisfied about system security, because logging was succeed in only one time it is username
and password must be correct.
System speed testing
Table 3.2.1: speed testing
Test category
Processing time
System starting time
1.94 seconds
Data inserting time
0.70 seconds
Updating time
0.63 seconds
Deleting time
0.76 seconds
Searching time
1.08 seconds
120
System size = 4.00 KB (4,096 bytes)
Figure 3.2.55: System size
Writer was developed a very small software for Poly Pipe and it is helped to reduce data traffic.
User friendliness
System was made for company workers in Poly Pipe Company with mandatory IT literacy. So
writer was designed this system by using simple interfaces and simple mechanics.
Before the system was issued, developers gave the system for user’s company for trial. After
that it was passed. Finally writer and writer’s team installed this DB software into computers
in Poly Pipe Company.
121
Test outcome’s summery
Table 3.2.2: Test outcomes
Test Description
Expected Testing
Tables are present
Actual Outcome
It will show the names of the
Shows the names of the
tables with the 'Show Tables'
tables properly
Comment
Passed
command
Tables have proper Check each table with
Shows the tables with
data
records properly
SELECT * Table Name
Passed
Command
Insertion of data is
Check the outcome of the
Records are
possible
INSERT INTO commands
successfully inserted
Passed
into tables.
Table creation
Check the outcome of the
Tables are successfully
possible
CREATE TABLE command
created
Query 1 is running
Check whether the query 1 is
Showing the message
properly
executing properly or not
of the “Saving
Passed
Passed
successful”
(Inserting)
Query 2 is running
Check whether the query 2 is
Showing the message
properly
executing properly or not
of “Data updated”.
Query 3 is running
Check whether the query 3 is
It shows the Primary
properly
executing properly or not
key and message show
Passed
(Updating)
Passed
“Deleted”
(Deleting)
Query 4 is running
Check whether the query 5 is
It shows the list of all
properly
executing properly or not
the details of search
(Searching)
Passed
thing.
Query 5 is running
Check whether the query 6 is
Show added column
Passed
properly (Adding)
executing properly or not
Query 6 is running
Check whether the query 7 is
Deleting dropped
Passed
properly
executing properly or not
column
(Dropping)
122
The effectiveness of the database solution in relation to user and system requirements,
and suggest improvements.
Evaluation of the database system
As a developer writer was given a feedback form to users in Poly Pipe Company for get a selfevaluation. So this evaluation was helped to get a final assessment about DB system. Also it is
helped to get awareness about future improvements, update suggestions and problems in DB
system as well.
Project feedback
Writer’s team and writer was created a feedback form and it was given for responsible person
in company and requested to fill the feedback form. So writer was made google form as
feedback form. Because google forms could be taken an automatic assessment about feedback
questions.
There were seven questions and multiple choices for select. So it is very easy to mark and all
the selected users in Poly Pipe Company were selected marked this form and supported to us.
Feedback form link: https://docs.google.com/forms/d/e/1FAIpQLSfnLQkXm6HwpLJ8yCqu9M8iTwNphCmh35Z3vSd363QsT6ObA/viewform?usp=sf_link
Comment review
Writer was given a WhatsApp number for comment proposals and suggestion to improve this
system. So it was very useful to get an idea about overall product and commenting time was
allocated as two weeks. During these two weeks there were many replies had received by the
software development company through WhatsApp.
After the feedback form writer was displayed it as well.
123
Feedback form
Figure 3.3.1: Feedback form 01
This is the first page of feedback form and it was asked 3 questions about the user friendliness.
Writer was inserted multiple choice boxes to select and this form was delivered to their smart
phones or personal computers to fill. They were kind enough and marked all answers and gave
support to successes this project.
124
Figure 3.3.2: feedback form 02
This is the second page of feedback form and this page was asked other four questions about
system security, appearance and overall product. So users were answered for all questions as
well.
125
Feedback review
There ten workers who had computer literacy were answered to this feedback form.
Question 01
Figure 3.3.3: Question 01
In the question 01 writer wants to check the system user friendliness. Users in PP company
were answered it as “Yes” and through this answer writer could take an idea about the system’s
user friendliness is enough to company requirements.
Question 02
Figure 3.3.4: Question 02
Same as question 01 writer was added this question for get an idea about the user friendliness.
However users was given their individual idea as company system is user friendly. So writer
was satisfied about system user friendliness.
126
Question 03
Figure 3.3.5: Question 03
In question three writer got idea about system maintaining. According to user’s answer write
could get an idea as system is easy to maintaining.
Question 04
Figure 3.3.6: Question 04
In question four writer was got an idea about system security. Wrier was asked this from four
questions. System had a good logging, external and internal data security. But virus protection
was not enough. So writer and team was changed a virus protection in user’s computers. After
that writer able to get a good result about it.
Also writer double checked all security mechanisms as well.
127
Question 05
Figure 3.3.7: Question 05
Question 06
Figure 3.3.8: Question 06
128
Question 07
Figure: 3.3.9: Question 07
Question 05: In question five writer was asked about the reliability about system and company requirements.
It was completely matched with company requirements and writer didn’t need to recheck it.
Question 06: In question six writer was searched a weakness in interfaces and external appearance. So it was
reliable with company requirements.
Summary of user feedback
Table 3.3.1: feedback summary
Question
Answer
Can you easily logging to database system
Yes/No
Can you easily insert data, update, delete
Yes/No
or search data
Is this system easy to maintain
What do you think about logging security
What do you think about Virus and
Yes/No
Secured/ Not secured
Protected/Not protected
malware protection
What do you think about Internal data
Secured/ Not secured
security
What do you think about External security
Secured/ Not secured
129
Is this system reliable with company
Yes/No
requirements
What do you think about external figure
Worst/Good
of this system
Are you satisfied about overall system
Yes/No
Suggestions and future improvements of database system in Poly Pipe Company
Figure 3.3.10: WhatsApp conversation
This is the little part of the WhatsApp conversation between users and developer. So these
users commented their ideas about this database system via text messages. According to this
messages developer could be got an idea about the system. That it was succeed.
130
User documentation
User manual

About system

System interfaces



Welcome interface

Logging interface

Menu interface

Customer interface

Supply interface

Payments interface

Installation interface

Store interface

Worker 01 interface

Worker 02 interface
Test results

Scalability Testing.

Reliability Testing.

Documentation Testing.

Security Testing.

Graphical User Interface Testing (GUI)

Stress Testing
Maintaining

Maintain plan

Responsibility
About the system
This is the database system has been created for Poly Pipe Company LTD. This system can be
used to record data, update data delete or searching. This is the computer based system which
need an operator to operate this system. All the responsible person in this company were given
the access to logging this system. Username and password was attached in an envelope has
sealed.
131
System interfaces
Welcome interface
Figure 4.1.1: Welcome interface introduction
Welcome interface is the first interface of this system. Also it has only one button and it can be
used to go to next interface (Logging). Top left corner view the page icon and below that shows
the company logo. In the top right corner has three buttons. Respectively there are Minimize,
maximize and Exit button as well. The lower right corner has the Next button and it needs to
go to next interface.
Logging interface
Figure 4.1.2: logging interface introduction
132
This is the logging interface. This interface has two buttons in right side of interface for logging
and exit. This is the wall that separate the system from other world by security methods. So
this interface has been reserved space for type username and password. If username and
password must be corrected, user can logging to the system. After successful logging message
box show to inform logging success or not success as well. Also this interface shows the official
logo of Poly Pipe Company in right side. Interface logo as well as exit, minimize and maximize
buttons is being shown in the top of interface.
Menu interface
Figure 4.1.3: menu interface introduction
This is the menu interface. This interface has seven buttons to use and all buttons were coded
to deferent tasks. As well as other pages the interface icon and other functional buttons display
in the top of interface. Respectively from left side to right side in the interface have database
tabs. Such as, customer, supply, payments, installation, stores and workers. All these buttons
is used to go manage information in Poly Pipe Company. Back button was included to go
previous page and exit button was included to exit from whole system.
133
Customer interface
Figure 4.1.4: customer interface introduction
This is the customer interface. This interface can be used to record customer details. The
receptionist is responsible to manage this interface and he or she can data insert, update, search
or delete. Save button in this customer table can be used to insert data into company database.
Delete button for delete data, update button to update data and search button can be used to
search data. This search function is depended on primary key of the customer table.
Supply interface
Figure 4.1.5: Supply interface introduction
134
This is the supply interface. This interface can be used to record supply item details, cost and
other details. The supply chain manager is responsible to manage this interface and he or she
can data insert, update, search or delete. Save button in this supply table can be used to insert
data into company database. Delete button for delete data, update button to update data and
search button can be used to search data. This search function is depended on primary key of
the supply table.
Logistics management is very important to run company tasks and continue their day to day
activities. So developer was identified it and reserved very large space to supply table and
include not null functionalities for each text boxes.
Payments
Figure 4.1.6: payment interface introduction
Payment table is being handling all the financial deals in this company. Also this is the table
take money from customer as cash, cheque, credit or debit cards and credit foundations. This
table can be manage each type of payments and monitory deals. Cashier is responsible to
manage this table and he must record each deal into this table.
As other tables, this payment table has interface icon, minimize button, maximize button and
exit button as well. Save, update, delete, search and back button respectively work for insert
data, update data, delete data, search and go to previous page.
This interface has an additional function for calculate item prices and other services values
behalf of additional calculator. This calculator has basic mathematical functions for adding,
subtraction, multiplication and division.
Bill number is the primary key of this table.
135
Installation
Figure 4.1.7: installation interface introduction
This is the installation table. Very basic and simple interface. This table can be used to record
installation data. All installations in this company and the installation places are being recorded
in this table general manager in this company is responsible to manage this interface.
This table has five buttons as well as other tables. Insert, update, delete and search buttons work
for manage data in this table.
Stores
Figure 4.1.8: store interface introduction
136
This is a store table. This table has six buttons such as, save, update, delete, back, search button
01and search button 02. This table has two search options because this table have two unique
and not null details for use. If someone need to search with item ID who can be used Item’s ID
to search, else someone can be used to search responsible person ID to search data in this store
table. Save, update, delete and back button is worked to insert date, update data, delete data
and go to previous page as well as other pages. In the left top corner has the interface icon and
right top corner has minimize, maximize and exit buttons to use this interface more easily.
Store keeper is responsible to manage this interface table.
Worker 01
Figure 4.1.9: worker 01 interface introduction
This interface is the largest interface in this system. Because this interface has many functions,
text boxes, and buttons. So this interface has a second page for insert more data than other
pages and it is very useful to record complete data set to database system. There are seven
buttons in this interface such as, save, update, delete, back, next, search button 01 and search
button 02. Not like other interfaces this interface has a special button as next also this button is
used to go next worker interface as well. There are eleven text boxes has this interface to insert
a complete data record into company database. Manager HR or other responsible person in this
company is responsible to manage this interface table who is responsible about company
workers.
137
Worker 02
Figure 4.1.10: workers 02 interface introduction
This is a second work interface. This is used to extend worker’s data in work table. This table
has inert, update, delete and back buttons for manage data. Insert button is needed to insert
data, update button is used to update data, delete button can be used to delete data and back
button is need to go previous page.
Test results
The software development company was fulfilled all user requirements by using system testing.
Writer was displayed all test results roughly. So user can be taken an idea about system quality
via this test results. Following table show which parts and sections were tested by the software
company and what are the results of these testing.
Table 4.1.1: Review of test results
Testing
Result
Scalability Testing.
Passed
Reliability Testing.
Passed
Documentation Testing.
Passed
Security Testing.
Passed
Graphical User Interface Testing (GUI)
Passed
Stress Testing
Passed
138
There are three testing rounds had been completed for this company system. So developer
was completely recovered all vulnerabilities in this system.
System documentation
Letter had received from Poly Pipe Company to request a DB system
Figure 4.2.1: user’s requesting letter
139
Reply from Software Development Company
Figure 4.2.2: Reply from ABC Software Development Company
After got the project approval developers were made user requirement documents for future
purposes. First of that they were created an ER diagram for identified system and user
requirements and according to finalized ER diagram, developers were created a logical
database diagram.
140
Technical documentation
ER diagram
Figure 4.2.3: Entity Relationship diagram for poly pipe company database system
This entity relationship diagram shows the entities, attributes and relationships in Poly Pipe
Company. So writer was created this diagram according to user and system requirements.ER
diagram is the starting point of this database development. After creating this ER diagram
developers goes to the next step of system building.
141
Logical database diagram
Figure 4.2.4: Logical database diagram
This is the logical database diagram was created to build the database system.
By using crowfoot method writer was created this logical diagram for future improvements of
this database system. Also this diagram had been used to make other diagrams and tables in
this system.
142
Class diagram for Poly Pipe Company DB system
Figure 4.2.5: Class diagram
This is the class diagram which shows the dependability and relationship very clearly. This
diagram helps to get a clear and perfect idea about Poly Pipe Company tasks. So this diagram
can be used to give for clients to future improvements and maintains. Because this diagram is
helped to understand about the DB system.
143
Use case diagram between customer, receptionist and cashier
Figure 4.2.6: Use case diagram between customer, receptionist and cashier
This use case diagram shows the relationships of customer, receptionist and cashier. Also this
shows their activities and tasks as well as the persons interdependence is showing the diagram.
This diagram shows the action of these people and act as how they work in real time. After
coming a customer into the company receptionist was welcomed him and try to recover his
requirements or referred to another section.
144
Use case diagram between customer and worker
Figure 4.2.7: Use case diagram between customer and worker
This class diagram shows the relationship between worker and customer. After customer
requesting a service through company, workers come to give their service to customer from
company order. Workers also give their service directly to the customer but customer cannot
directly request a worker for his work. He or she must request through Poly Pipe Company.
Use case diagram between store keeper and worker
Figure 4.2.8: Use case diagram between store keeper and worker
This class diagram shows the interdependence of worker and store keeper. So the workers are
needed to take item that they need for working. The items worker need which are releasing
145
from stores is the store keeper’s responsibility. Also he or she must be recorded the details
about items that he or she released.
Floor charts famous functions in the database system
Floor chart for insert data
Figure 4.2.9: floor chart for logging process
This is the floor chart which shows the process of logging in this database system. So this
diagram describe about that how logging process validating through security mechanisms. Also
this table is presented the whole process.
146
Floor chart for update data
Figure 4.2.10: floor chart for insert data into database system
This is floor chart is shown what is the processes that happen on this inserting process.
147
Floor chart for delete data
Figure 4.2.11: floor chart for update data into database system
148
Floor chart for search data
Figure 4.2.12: floor chart for delete data from database system
149
Floor chart for search
Figure 4.2.13: floor chart for search data from database system
150
Evaluate the database in terms of improvements needed to ensure the continued
effectiveness of the system.
Database improvement
Database improvements can mean improving the design of the database, improving the
performance of the database, and improving the security of the database. These improvements
ensure that data is accurate, secure, and accessible and efficiently stored in order to reduce the
cost of storage and access, and to reduce downtime. (Hatton, 2020)
Importance of database improvements

Improved data security and compliance

Faster page loads

Faster interactive applications

User retention

Reduced bounced rate

Faster access to data for analysis

Reduce database size

Improved scalability
How to improve our database system

Improve the indexing strategies

Steer clear of correlated sub queries and coding loops

Keep certain files on separate disks

Upgrade your hardware

Know who has access

Check your connection capacity

Get smart about caching

More quick tips for boosting database performance.
Future improvements are very important for the database system to keep it updated.
151
Improved data security and compliance
In present database systems or software have good security. Because the system has been made
reliably with other operations. Such as operation system, processing software, virus guards and
viruses. So this time this software cannot be harmful to our new data base system or software.
Also it is being updated with relevant changers.
But this system being older, which are endangered to treat. Because this is old but operation
system is fresh, viruses are fresh and hardware are not supported to this system or software.
So system builders or system developers have to think about this treat and they should be had
a responsibility to protect their customer’s data.
As a solution developers could have to do,

Make updating system for released software

Release new versions or updates for relevant with present time
What are the things that user can do?

Use proper virus protection

Change username and password at least twice a year

Update all software that they are using

Scan all machines by using virus guard.

Use secured internet connection

Don’t share the secret things with others
Anyone can be followed this instructions and guidelines to keep their company in a protected
stage. So this steps are helped to protect company data and customer’s data in this company.
Faster page loading
This is the second thing that we can do for keep fresh our system after system building. In this
point can be describe about the system speed. Also user need to keep a proper speed for his
system like it was begin he have to clean the storage disks properly. So they can keep a plan
before cleaning. After the clean-up user can be enjoy proper and good speed from user’s
system. For doing this by,

Delete unnecessary files in the system

Delete unnecessary data about customer or company data

Refresh the system alternatively
152
Faster and interactive applications
Developers always try to give the best output for their customers. Good software, database
system or as well as other applications are delivered to their customers by using the technology
and most appropriate systems. For build most suitable system for customer satisfaction
developer must be interacted to customer requirements as well.
System updates
This is the personal software was created to poly pipe company for their requesting. So the
developer was developed this software for unique with user’s requirements. Also this system
updates cannot be downloaded through online. So developer responsible to update this system
as well as their needs.
Developer was introduced a half annual plan to update this system to improve the system’s
performances. Two times of the year, workers in developer’s company workers should need to
go to Poly Pipe Company to update this system troubleshooting and supervise the maintaining.
This process is helped to improve system performance and keep a system on the good level
than other companies’ software.
153
Reference
(n.d.). Retrieved from https://www.wizcase.com/download/visual-studio/
(n.d.). Retrieved from
https://www.google.com/url?sa=i&url=https%3A%2F%2Fwww.holistics.io%2Finteg
rations%2Fsql-server%2F&psig=AOvVaw2CFfp-UpVlAJprm19UONE&ust=1630141105738000&source=images&cd=vfe&ved=2ahUKE
wjy4Mz96tDyAhWMnUsFHTlWBx8Qr4kDegUIARDNAQ
Adepoju, F. (2021, 07 11). Circleci Blog. Retrieved from Database testing:
https://circleci.com/blog/intro-db-testing/
Asenalt, C. (2017, 07 06). keycdn. Retrieved from how to improve database proformence:
https://www.keycdn.com/blog/database-performance
garwal, p. (2020, 12 28). geeks. Retrieved from normalization:
https://www.geeksforgeeks.org/advantages-and-disadvantages-of-normalization/
Hamilton, T. (2021, 08 28). guru99. Retrieved from software testing : www.guru99.com
Hatton, M. (2020, 04 07). nightingaleHQ. Retrieved from database mamagement:
https://nightingalehq.ai/knowledgebase/glossary/what-are-database-improvements/
Informatica. (2021). Retrieved from Data validation:
https://www.informatica.com/in/services-and-training/glossary-of-terms/datavalidation-definition.html
OfficeTooles. (2015). Retrieved from Database Maintenance Explained :
https://www.officetools.com/knowledgebase/database-maintenance-explained/
Orecle. (2021). Retrieved from Data base system: https://www.oracle.com/in/database/whatis-database/
PP.Pankaj. (2020, 10 06). Greek For Greek. Retrieved from defference of validation and
varification: https://www.geeksforgeeks.org/differences-between-verification-andvalidation/
reqtest. (2017, 07 27). Retrieved from database testing:
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&u
act=8&ved=2ahUKEwjVvIfIpLyAhXUW3wKHfneAfcQFnoECCAQAw&url=https%3A%2F%2Freqtest.com%2Ft
esting-blog%2Fdatabasetesting%2F&usg=AOvVaw0ABXcIKTB7VA7Ty4EMmKqz
154
Sarangam, A. (2020, 12 09). jigsow. Retrieved from data base security:
https://www.jigsawacademy.com/blogs/cyber-security/database-security/
Springer Science. (2020). Retrieved from Query language:
https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-39940-9_1090
telend. (2021). telend. Retrieved from data redundenecy:
https://www.talend.com/resources/what-is-data-redundancy/
tend. (2021). Retrieved from
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&u
act=8&ved=2ahUKEwic5rvzqP7yAhXQXSsKHRp3BrcQFnoECA4QAw&url=https
%3A%2F%2Fwww.tandbergdata.com%2Fknowledge-base%2Findex.cfm%2Fwhatis-the-difference-between-a-full-differential-and-incr
tutorialspoint. (2021). Retrieved from Database security:
https://www.tutorialspoint.com/database_testing/database_testing_security.htm
UkEssays. (2017, 07 21). Retrieved from Importance of database security:
https://www.ukessays.com/essays/computer-science/importance-of-database-securitycomputer-science-essay.php
155
Conclusion
156
Gantt chart
Figure: Gantt chart
157
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 Evaluate the effectiveness of the design in relation to
user and system requirements.
158
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
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.
159
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.
D3 Evaluate the database in terms of improvements
needed to ensure the continued effectiveness of the
system.
160
Download