Higher Nationals: Internal Verification of Assessment Decisions - BTEC (RQF)
Higher Nationals: Internal Verification of Assessment Decisions - BTEC (RQF)
Higher Nationals: Internal Verification of Assessment Decisions - BTEC (RQF)
Programme Leader
signature (if required) Date
LO2 Develop a fully functional relational database system, based on an existing system design
Resubmission Feedback:
* 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.
Assignment Feedback
Mohamed ramzeen Safwan – HND in Computing | Database Design & Development
Assignment 01
Formative Feedback: Assessor to Student
Action Plan
Summative feedback
Assessor Date
signature
[email protected] 15/04/2022
Student Date
signature
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.
1. The font size should be 12 point, and should be in the style of Time New Roman.
2. Use 1.5 line spacing. Left justify all paragraphs.
3. Ensure that all the headings are consistent in terms of the font size and font style.
4. Use footer function in the word processor to insert Your Name, Subject, Assignment No,
and Page Number on each page. This is useful if individual sheets become detached for any
reason.
5. Use word processing application spell check and grammar check function to help editing
your assignment.
Important Points:
1. It is strictly prohibited to use textboxes to add texts in the assignments, except for the
compulsory information. eg: Figures, tables of comparison etc. Adding text boxes in the body
except for the before mentioned compulsory information will result in rejection of your
work.
2. Carefully check the hand in date and the instructions given in the assignment. Late
submissions will not be accepted.
3. Ensure that you give yourself enough time to complete the assignment by the due date.
4. Excuses of any nature will not be accepted for failure to hand in the work on time.
5. You must take responsibility for managing your own time effectively.
6. If you are unable to hand in your assignment on time and have valid reasons such as illness,
you may apply (in writing) for an extension.
7. Failure to achieve at least PASS criteria will result in a REFERRAL grade .
8. Non-submission of work without valid reasons will lead to an automatic RE FERRAL. You will
then be asked to complete an alternative assignment.
9. If you use other people’s work or ideas in your assignment, reference them properly using
HARVARD referencing system to avoid plagiarism. You have to provide both in-text citation
and a reference list.
10. If you are proven to be guilty of plagiarism or any academic misconduct, your grade could be
reduced to A REFERRAL or at worst you could be expelled from the course
Student Declaration
[email protected] 15/04/2022
Student’s Signature: Date:
(Provide E-mail ID) (Provide Submission 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:
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.
(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
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.
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.
Table of Contents
Acknowledgement..................................................................................................................15
ACTIVITY 1.............................................................................................................................. 16
1.1 requirements....................................................................................................................16
1.1.1 Types of requirements:..............................................................................................16
1.1.2 Relational Database System for the above scenario..................................................18
1.1.3 Relational Database for the above ER diagram,.........................................................19
1.1.4 Normalization............................................................................................................ 19
1. First Normal form (1NF)................................................................................................. 19
2. Second Normal Form (2 NF)...........................................................................................20
3. Third normal form (3NF)................................................................................................ 20
4. Boyce-Codd Normal Form (BCNF or 4NF).......................................................................21
Data Dictionary for above ERD Module..................................................................................21
1.2 Simple interfaces to input and output for the above scenario using Wireframe..............24
1.2.1 Wireframe for the above scenario.............................................................................25
Constraints............................................................................................................................. 29
Table of Figure
Figure 1 Polly Pipe ERD...........................................................................................................19
Figure 2 Login Form................................................................................................................26
Figure 3 Registration Form..................................................................................................... 26
Figure 4 Main Menu............................................................................................................... 27
Before heading into the proceedings of this assignment I would like to thank my lecturer Ms
Ishani for all her effort made in coaching me and my colleagues. Miss your guidance and
support was most needed and the motivations helped.
And I would like to thank Esoft organization for giving me this opportunity to reveal my
talents through the assignment.
Thank You,
Mohamed Ramzeen Safwan
Entities Attributes
1.1.4 Normalization
What is Normalization?
Normalization is a database design technique that reduces data redundancy and eliminates
undesirable characteristics like Insertion, Update, and Deletion Anomalies. Normalization rules
divide larger tables into smaller tables and link them using relationships. Normalization in SQL
aims to eliminate redundant data and ensure data is stored logically.
Insertion anomaly: - When inserting records if the same record is inserting for several
times, insertion anomaly will occur.
Update anomaly: - When updating details, the same record will update more than once.
Deletion anomaly: - When deleting unnecessary details from a table along with it,
necessary details will get deleted.
The database normalization process is further categorized into the following types:
STUDENT Table
ST_No ST_Name Contect_No 1NF Table Contect_No Table
001 Sam 011258258 ST_N ST_Name ST_No Contect_No
011258259 o 001 011258258
011258257 2.
001 Sam 001 011258259
002 Jack 011258255 002 Jack 001 011258257
002 011258255
CUS_PUR_ITEM Table
Cus_Id Cus_Nam Contact Pur_item Item_des
e
1234 smith 011789987 bag red
2345 rock 011789978 purse blue
STUDENT Table
ST_I ST_Name Course_Id Course_Name
d
00566 john 4545 HND
00577 Ann 7878 BIT
EMPLOYEE Table
EMP_I EMP_Country EMP_Dept DEPT_Typ EMP_Dept_No
d e
264 India Designing D394 283
264 India Testing D394 300
364 UK Stores D283 232
364 UK Developing D283 549
Staff Table
Table 7 Data Dictionary Staff Table
Installation Table
Table 8 Data Dictionary Installation Table
Column Data
Description Max PK
type Field or
size FK
Ins_id Int Installation - PK
Unique Id
Ins_type Varchar Fitting 20 -
Type
Start_date Varchar Contract 50 -
start date
End_date Varchar Contract 50 -
end date
Column Data
Description Max PK
type Fiel or
d FK
size
Cus_id int Customer - PK
id
F_Name Varchar Customer- 20 -
first name
L_Name Varchar Customer 20 -
last name
Con_no int Customer - -
contact
number
Email varchar Customer 30 -
email
Ins_address Varchar Place 100 -
where the
assignment
takes place
Equipment Table
Table 10 Data Dictionary Equipment Table
Payment Table
Table 11 Data Dictionary Payment Table
1.2 Simple interfaces to input and output for the above scenario
using Wireframe
A wireframe is a design tool for building or developing a website. It aids in the creation of a
website's basic framework. The website navigation, content category and organization, content
layout and structure, functionality items, user interaction items, and methods of displaying the
material are all detailed in a wireframe.
Sign In
Figure 2 Login Form
Customer Details
Figure 5 Customer Details
Installation Details
Figure 7 Installation details
Payment Details
Figure 9 Payment Details
Not null
Unique
Check
Primary key
Foreign key
Not null
Not null ensures that a column does not hold any null or empty value.
);
e.g.:
Figure 10 Not Null Statement
Unique
A unique constraint guarantees that each column in a table has only one value. If a column has
unique constraints, the column in the table cannot have duplicate values.
);
Check
Ensure that the specific column has a value with the specified
range.
e.g.:
CREATE TABLE Job
(
Job_ID int NOT NULL UNIQUE,
Job_title varchar (255) NOT NULL,
Des_km int CHECK (km>=150)
Primary key
e.g.:
CREATE TABLE Job
(
Job_ID int NOT NULL PRIMARY KEY,
Job_title varchar (255) NOT NULL,
Des_km int CHECK (km>=150)
);
e.g.:
Figure 11 Primary Key
Foreign key
A foreign key is taken from a primary key of another relation. They act as the
cross-reference between the tables.
Mohamed Ramzeen Safwan – HND in Computing | Database Design & Development
Assignment 01 32
e.g.:
Job table
Job_no Job_title Department
00011 Junior executive Operations
00012 Assistant executive HR
Payment table
Invoice_no Name Job_no
1238 Mike 00011
1239 James 00012
e.g.:
CREATE TABLE payment
(
Invoice_no int NOT NULL PRIMARY KEY,
Name (255) NOT NULL,
Job_no int FOREIGN KEY REFERENCES job (Job_no)
);
Smart Movers is a transportation firm that requires a system to keep track of its daily operations
in order to meet consumer requests. On behalf of registered clients, the company transfers
chemical items from one area to another. There are nine regional deports in charge of managing
and maintaining the product delivery transport units. This project's design (ERD and logical
design) is based on the user and system requirements that have been determined.
According to the scenario, the design comprises of records of all information and data about the
In the scenario, the user needs should be recorded in the system. On the Smart Movers website,
the user can enter his or her information. For example, one of the scenario's needs (Customer) is
that they enter their information on the website. Similarly, the system keeps track of all user
requirements. The database is designed in such a way that all information is saved in one
location. As a result, a database is a critical system that must be monitored and protected. As a
database developer, you must take the essential procedures to safeguard the database system.
The above design outlines and reflects the system requirements for retrieving the database
design's efficacy and efficiency.
ACTIVITY 2
2.1
SQL statements are divided into two major categories: Data Definition Language (DDL) and
Data Manipulation Language (DML).
What is DDL?
DDL statements are used to create and modify the structure of your database tables and
other objects. When you run a DDL statement, it goes into effect right away.
2.1.5 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.
Security mechanisms
Database security is a top priority for today’s organizations. Database security concerns the use
of a broad range of information security controls to protect databases against compromises of
their confidentiality, integrity and availability. It involves various types or categories of controls,
such as technical, procedural/administrative and physical. Database security is a specialist topic
within the broader realms of computer security, information security and risk management.
Access control (AC) is a method of restricting access to a location or other resource on a case-
by-case basis. Consuming, entering, or using are all words that can be used to describe the
process of accessing. Authorization is the process of gaining access to a resource.
Database auditing entails observing a database in order to be aware of database users' behavior.
Auditing is frequently set up by database administrators and consultants for security reasons,
such as ensuring that people who do not have the authority to view information do not do so.
Authentication is the initial step in access control, and there are three common factors
employed. It is the process or act of ensuring that a user attempting to log in to a database is
permitted to do so and that only the rights to do actions that he or she has been granted are
granted to him or her.
Encryption is the process of converting data stored in a database into "cypher text," which
cannot be read without first being decrypted, using an algorithm. Encryption does not prevent
interference in and of itself, but it does prevent a would-be interceptor from understanding the
content. The intended information or message, referred to as plaintext, is encrypted using an
encryption method in an encryption scheme. An encryption technique commonly employs a
pseudo-random encryption key generated by an algorithm for technical reasons.
Backups are replicas of your database's data that can be utilized to reconstruct it. Physical and
logical backups are the two types of backups.
Physical backups are the foundation of any solid backup and recovery strategy. They
contain logical data exported from a database with an Oracle export tool and stored in a
binary file for subsequent re-importing into a database with the equivalent Oracle import
utility. In many cases.
Logical backups are a good addition to physical backups, but they aren't enough to
defend against data loss without physical backups.
Here, column1, column2, ... are the field names of the table you want to select data from. If you
want to select all the fields available in the table, use the following syntax:
WHERE Statement
UPDATE Statement
The data of one or more rows in a table is updated with a SQL UPDATE query. Either
all of the rows or a subset of them can be modified using a condition.
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
Figure 29 Update Statement
IN Statement
The SQL IN Statement makes it simple to see if an expression matches any value in a
list. It's utilized in SELECT, INSERT, UPDATE, and DELETE statements to help
eliminate the need for multiple OR conditions. “The IN operator allows you to specify
multiple values in a WHERE clause.”
Or
SELECT column_name(s)
FROM table_name
WHERE column_name IN (SELECT STATEMENT);
Figure 31 IN Statement
GROUP BY Statement
The SQL GROUP BY clause can be used in a SELECT statement to collect data across
multiple records and group the results by one or more columns. The GROUP
BY statement group’s rows that have the same values into summary rows, like "find the
number of customers in each country”. The GROUP BY statement is often used with
aggregate functions (COUNT (), MAX (), MIN (), SUM (), AVG ()) to group the result-set by
one or more columns.
SELECT column_name(s)
FROM table_name
GROUP BY column_name(s);
HAVING Statement
In the above screenshot, the Table is grouped based on st_type column and these grouped rows
are filtered using HAVING Clause with condition (st_no) > 1.
Assist others outside the test team in understanding the details of testing, such as
developers, business managers, and customers.
Our thinking is guided by the Test Plan. It's similar to a set of rules that must be
followed.
Test Plan documents important features such as test estimation, test scope, and Test
Strategy so that it may be evaluated by the Management Team and reused for additional
projects.
The purpose of Polly Pipe database is to enter, retrieve and delete data about
the customers, Staff, Installation, Equipment and Payment. The facility should
be able to enter all the details using Polly Pipe.
The purpose of the test plan is to test:
1. What happens if additional data are added to the tables?
2. What happens wrong if data types are entered into the system
3. Data can be inserted into the system
4. Data can be updated
5. Data can be deleted from the system
Tasks
1. Check whether the system give an error message when trying to delete data from a non-
existing table in the database
2. Check whether a value is update
3. Check whether an error message is represented
4. Check whether a created table is in the system
5. Check whether deleted data still exist.
3.1.2 Requirements
Risks Involved
In the process of testing few or some wanted data would be deleted.
In the process of testing some important information could be changed
Test Test Name Actions Test Data Expected Actual PASS/ Tester Test
Case Output Output FAIL Name Date
ID
001 Insert data Insert the data into the ins_id (234, The system A success PASS Safwan
into the Installation table with 654, 767, should give a message was
database with correct SQL syntax 943, success shown
the correct 157) message as
data type the output
002 Insert data Insert the wrong ins_id The system A failure PASS Safwan
into the data type into the (abc, Ab1, should give a message was
database with Load table fields A41) failure shown
wrong data with correct SQL message as
types syntax the output
003 Update data Update the “19845627” to The system A success PASS Safwan
in the data in the “19845757” should give a message was
database Customer table success shown
fields with message as
correct SQL the output
syntax
004 Delete data Delete data from the Delete The system A success PASS Safwan
from the Staff table with correct “SHA4” from should give a message was
table SQL syntax the Staff table success shown
message as
the output
005 Enter a null Insert a null value to ins_id – The system A failure PASS Safwan
value to a the Staff table ins_id “654” should give a message was
foreign key field with correct SQL failure shown
field syntax message as
Mohamed Ramzeen Safwan – HND in Computing | Database Design & Development
Assignment 01 56
the output
Conclusion
As all the above test case was positive the developed Polly Pipe database has no errors and it is well created and organized as it is
ready to be execute
This is the Polly Pipe automated system for operational activities. The user’s guide will help you
to work with the system.
This is the welcome page which will be shown soon after you run the program. If you are an
existing user
1. Enter your User ID
2. Enter your password
If you are a new user click “Sign up” to create a new account.
This is the new account page for new registration. Enter your details correctly, create a new
password and remember the password for your sign in purpose. After entering all the relevant
details click on the “Submit” button to register your account.
Image of Main Menu page
Figure 38 User Guide Main Menu Page
This is the Customer Details page for inserting, updating, delete the details of customers. Enter
the details correctly and click on the “INSERT” button to add details to the database. Re-type
the details and click on the “UPDATE” button to update details on the database. Type Customer
ID and click on the “DELETE” button to delete details from the database. Click on the “VIEW”
button to view details on the Data Grid View.
This is the Payment Details page for inserting, updating, delete the details of payments. Enter the
details correctly and click on the “INSERT” button to add details to the database. Re-type the
Supported Visual Studio 2017 will install and run on the following operating
Operating systems:
Systems Windows 10 version 1507 or higher: Home, Professional,
Education, and Enterprise (LTSB and S are not supported)
Windows Server 2016: Standard and Datacenter
Windows 8.1 (with Update 2919355): Core, Professional, and
Enterprise
Windows Server 2012 R2 (with Update 2919355):
Essentials, Standard, Datacenter
Windows 7 SP1 (with latest Windows Updates): Home Premium,
Professional, Enterprise, Ultimate
Component Requirement
Processor Minimum:
Speed x86 Processor: 1.0 GHz x64 Processor: 1.4 GHz
Recommended: 2.0 GHz or faster
Processor x64 Processor: AMD Opteron, AMD Athlon 64, Intel Xeon with Intel
Type EM64T support, Intel Pentium IV with EM64T support
x86 Processor: Pentium III-compatible processor or faster
Update data
Mohamed Ramzeen Safwan – HND in Computing | Database Design & Development
Assignment 01 70
Figure 47 Flow Chart 3
Delete data
Select data
Figure 49 Flow Chart 5
Conclusion
In conclusion, Databases were made to make our lives a little easier. Databases help us maintain information needed daily success.
Another reason why Database systems were made, so that companies could keep up with massive amounts of information in a
singular place. Queries help find this data faster by punching in key words. This helps out productivity in a work place. Forms are
made to store the reports, so we have the information required to present to others. There are serious threats out there. Without
proper monitoring, these issues can become major problems if companies do not catch them in time.
https://teachcomputerscience.com/validatio
Mohamed Ramzeen Safwan – HND in Computing | Database Design & Development
Assignment 01 76
Grading Criteria
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.
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.
M3 Assess whether meaningful data has been extracted using query tools to produce appropriate management information.
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
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.