HIGHER NATIONAL
DIPLOMA IN SOFTWARE
ENGINEERING.
DATABASE DESIGN AND
DEVLOPMENT.
L.ABIBARAMAN
Higher Nationals
Internal verification of assessment decisions – BTEC (RQF)
INTERNAL VERIFICATION – ASSESSMENT DECISIONS
Programme title
BTEC HND in Computing
S.Sulojan
Assessor
Internal
Verifier
Unit 04: Database Design & Development
Unit(s)
Database Solution for Quiet Attic Films
Assignment title
Loganathan Abibaraman
Student’s name
List which assessment Pass
Merit
criteria the Assessor has
awarded.
INTERNAL VERIFIER CHECKLIST
Do the assessment criteria awarded
match those shown in the assignment
brief?
Y/N
Is the Pass/Merit/Distinction grade
awarded justified by the assessor’s
Y/N
comments on the student work?
Has the work been assessed
accurately?
Is the feedback to the student:
Give details:
• Constructive?
Y/N
Distinction
• Linked to relevant assessment
Y/N
criteria?
Y/N
• Identifying
opportunities for
Y/N
improved performance?
• Agreeing actions?
Y/N
Does the assessment decision need
Y/N
amending?
Assessor signature
Date
Internal Verifier signature
Date
Programme Leader signature (if
Date
required)
Confirm action completed
Remedial
action
taken
Give details:
Assessor signature
Date
Internal
Verifier
Date
signature
Programme
Leader signature
(if required)
Date
Higher Nationals - Summative Assignment Feedback Form
Student Name/ID
Unit Title
Unit 04: Database Design & Development
Assignment
1
Assessor
Number
Date
Submission Date
Received 1st
submission
Date Received 2nd
Re-submission Date
submission
Assessor Feedback:
LO1 Use an appropriate design tool to design a relational database system for a
substantial problem
Pass,
Merit
& P1
M1
D1
Distinction Descripts
LO2 Develop a fully functional relational database system, based on an existing system
design
Pass,
Merit
& P2
P3
M2
M3
Distinction Descripts
LO3 Test the system against user and system requirements.
Pass,
Merit
& P4
M4
D2
Distinction Descripts
LO4 Produce technical and user documentation.
Pass,
Merit
& P5
M5
D3
Distinction Descripts
Grade:
Assessor Signature:
Date:
D2
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.
Assignment Feedback
Formative Feedback: Assessor to Student
Action Plan
Summative feedback
Feedback: Student to Assessor
Date
Assessor
signature
E179814@esoft.academy
Student
signature
Pearson Higher Nationals in
Computing
Unit 04: Database Design & Development
Assignment 01
2023/02/09
Date
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. 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
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: e179814@esoft.academy
Date:2023/02/09
(Provide E-mail ID)
(Provide Submission Date)
Higher National Diploma in Computing
Assignment Brief
Student Name /ID Number
Unit Number and Title
Unit 4: Database Design & Development
Academic Year
2022/23
Unit Tutor
Assignment Title
Data base system for Quiet Attic Films
Issue Date
10/11/2023
Submission Date
09/02/2023
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:
Assignment brief
Quiet Attic Films is a film production company based in London, England who specialize in
making short information films and advertisements for television. They want you to design and
implement a database that meets the requirements for their data. These requirements are
specified in this scenario and the examples of paper documents kept by the company shown
below.
Quiet Attic Films organize their data around the concept of a ‘production’. A production is
specified as being for a particular client; but note that a client might have more than one
production at any time. A production will take place at one or more locations. A production
will also use a number of, what are called, properties, which might be anything from an actual
property like a building, to costumes or small items of any sort. It is important to keep a record
of
which
properties
are
required
at
which
There should also be a record kept of the staff types that are assigned to productions
location.
Activity 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)
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
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 and evaluate the database solution developed in terms
of its effectiveness with relevance to the user and system requirements identified, system
security mechanisms (EX: -User groups, access permissions) and the maintenance of the
database. Suggest improvements for any identified problems.
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
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
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 a separate conclusion from the feedbacks.
Activity 4
Produce technical and user documentation for a fully functional system, including data flow
diagrams showing movement of data through the system, and flowcharts describing how the
system works. Evaluate the developed database by suggesting future enhancements to ensure
the effectiveness of the system.
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, which includes interface and output designs, data
validations and data normalization.
D1 Evaluate the effectiveness of the design in relation to user
and system requirements.
Achieved Feedback
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 fullyfunctional database system, which
includes system security and database maintenance.
M3 Assess whether meaningful data has been extracted
through the use of query tools to produce appropriate
management information
LO3 Test the systems against user and system
requirements
P4 Test the system against user and system requirements.
M4 Assess the effectiveness of the testing, including an
explanation of the choice of test data used.
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 fullyfunctional system, including data flow diagrams and
flowcharts, describing how the system works.
D3 Evaluate the database in terms of improvements needed
to ensure the continued effectiveness of the system.
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
L. Abibaraman
Database
PEARSON ID:
Page | 20
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Acknowledgement.
Acknowledgement is not only a formal, so far additionally an obligation to every one of
the persons who have helped in the finishing procedure of the venture. First, I Would Thank
our ESOFT Manager Lecturer of ESOFT Metro Campus and Mr.B.Gajanan Mr.Sulojan,
ESOFT Metro Campus who gave the specialized way and consistent management all the
same his busy timetable Finally, I would like to thank ESOFT Metro Campus and its decent
showing board for giving important information and help all through the HND Computing
and Systems Improvement program. I am additionally grateful to my family mostly to my
parents, for supporting also, promising me to finish this project effectively.
Thank you.
L.Abibaraman
Esoft Metro Campus – Jaffna.
L. Abibaraman
Database
PEARSON ID:
Page | 21
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Table of Contents
Activity 1 ........................................................................................................................... 31
Evaluation of Database................................................................................................... 33
File Based Systems ..................................................................................................... 33
Advantages and Disadvantages of File Based System ............................................... 34
Issues of file processing system.................................................................................. 34
Comparison of DBMS and file-based system ............................................................ 35
To create a database, you will need the following requirements: .............................. 36
Types of requirements .................................................................................................... 39
User requirements ....................................................................................................... 39
System requirements................................................................................................... 40
Types of system requirements ........................................................................................ 40
Software requirements ................................................................................................ 40
Hardware requirements............................................................................................... 41
Functional requirements ............................................................................................. 41
NON-functional requirements .................................................................................... 43
ER-Diagram (entity relationship diagram) ..................................................................... 43
Entity .......................................................................................................................... 44
Attribute ...................................................................................................................... 47
Relationship ................................................................................................................ 51
Cardinalities ................................................................................................................ 55
ER-Diagram for given brief ........................................................................................... 56
Mapping ...................................................................................................................... 56
Functional Dependency and Non Functional Dependency ....................................... 63
Wireframe Design for scenario ...................................................................................... 65
Intro of wireframe ....................................................................................................... 65
System wireframe design for scenario........................................................................ 66
L. Abibaraman
Database
PEARSON ID:
Page | 22
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Types of effectiveness design in attending the intended objectives ........................... 74
Activity 2 ........................................................................................................................... 76
Integrated Development Environment ........................................................................... 76
Benefits of visual studio ................................................................................................. 76
Definition methods verifying data in tables ....................................................................... 89
Types of methods verifying data in tables ..................................................................... 89
Validation of data ............................................................................................................... 90
Type of Data Validation ................................................................................................. 90
Data dictionary ................................................................................................................... 94
SQL ................................................................................................................................ 97
Types of SQL servers ................................................................................................. 97
Advantages of SQL Server ......................................................................................... 97
Verify the data type ...................................................................................................... 103
Verify the code and verify the range ........................................................................ 103
Database security method............................................................................................. 103
Types of data base security ....................................................................................... 104
The boundary and the data itself should be protected .................................................. 104
The useful for internal dangers in the database ............................................................ 104
Types of internal dangers in the database ................................................................. 105
Cyber security .............................................................................................................. 105
DML................................................................................................................................. 108
Language flow in data manipulate system (DML)....................................................... 108
Types of Data Manipulation Language: ................................................................... 108
Overall, the choice of DML language depends on the type of data being managed and
the specific requirements of the database management system. .............................. 109
The primary use of Data Manipulation Language (DML) is to manage and manipulate data
within a database management system. DML allows users to perform various operations
on data such as querying, inserting, updating, and deleting data. .................................... 110
L. Abibaraman
Database
PEARSON ID:
Page | 23
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Some common use cases for DML include:................................................................. 110
Select command ........................................................................................................ 110
Here are some examples of how the SELECT command can be used in a database:
.................................................................................................................................. 110
Update command ............................................................................................................. 111
Delete command .............................................................................................................. 111
Here are some examples of how the delete command can be used in a database: ....... 111
Insert data into a table with values: .............................................................................. 111
Logical operations ............................................................................................................ 116
We can use the following SQL query: ............................................................................. 116
We can use the following SQL query: ......................................................................... 116
Task 03 ............................................................................................................................. 117
Test case 1 .................................................................................................................... 120
Test-Case 2 ................................................................................................................... 121
Test-Case 3 ................................................................................................................... 122
Test-Case 4 ................................................................................................................... 123
Test-Case 5 ................................................................................................................... 124
Test-Case 6 ................................................................................................................... 125
Test-Case 7 ................................................................................................................... 126
Test-Case 8 ................................................................................................................... 127
Test-Case 9 ................................................................................................................... 128
Test-Case 10 ................................................................................................................. 129
Test-Case 11 ................................................................................................................. 130
Test-Case 12 ................................................................................................................. 131
Teat-Case 13 ................................................................................................................. 132
Effectiveness of the test data selected for the testing ............................................... 133
Feedback form .......................................................................................................... 135
L. Abibaraman
Database
PEARSON ID:
Page | 24
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Feedbacks from the users. ........................................................................................ 137
User Recommendations of feedback form used to improve this system .................. 140
Activity 04 ....................................................................................................................... 143
User documentation...................................................................................................... 143
Types of user documentation .................................................................................... 143
The great user documentation................................................................................... 144
Technical documentation ............................................................................................. 144
Technical documentation Above Scenario ............................................................... 145
User documentation for Above Scenario.................................................................. 154
Intro for flow chart ................................................................................................... 164
Flow chart for the operation in the system ............................................................... 165
Future improvement for the system .......................................................................... 169
References ........................................................................................................................ 170
L. Abibaraman
Database
PEARSON ID:
Page | 25
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 1Example for entity ................................................................................................ 44
Figure 2Example for strong entity ..................................................................................... 45
Figure 3Example for weak entity ....................................................................................... 46
Figure 4 Example for attribute ........................................................................................... 47
Figure 5 Example for simple attribute ............................................................................... 48
Figure 6 Example for composite attribute ......................................................................... 49
Figure 7 Example for single valued attribute ..................................................................... 50
Figure 8Example for multi valued attribute ....................................................................... 50
Figure 9 Example for derived attribute .............................................................................. 51
Figure 10 Example for complex attribute .......................................................................... 51
Figure 11 Relationship ....................................................................................................... 52
Figure 12 Unary Relationship ............................................................................................ 53
Figure 13 Binary Relationship ........................................................................................... 53
Figure 14 Ternary Relationship ......................................................................................... 54
Figure 15 n-ary Relationship ............................................................................................. 54
Figure 16 ER-Diagram for above scenario ........................................................................ 56
Figure 17 Map Strong Entity & Simple Attribute ............................................................. 58
Figure 18 Map Multivalued & Composite Attribute ......................................................... 58
Figure 19 Map One to Many Relationship ........................................................................ 59
Figure 20 Map Many to Many Relationship ...................................................................... 60
Figure 21 Relational Schema for Above ER Diagram....................................................... 62
Figure 22 Example of Normalization ................................................................................ 63
Figure 23 Example of 1NF ................................................................................................ 63
Figure 24 Example of 2NF ................................................................................................ 64
Figure 25 Example of 3NF ................................................................................................ 64
Figure 26: Wireframe design 01 ........................................................................................ 66
Figure 27: Wireframe design 02 ........................................................................................ 67
Figure 28: Wireframe design 03 ........................................................................................ 67
Figure 29: Wireframe design 04 ........................................................................................ 68
Figure 30: Wireframe design 05 ........................................................................................ 68
Figure 31: Wireframe design 06 ........................................................................................ 69
Figure 32: Wireframe design 07 ........................................................................................ 69
Figure 33: Wireframe design 08 ........................................................................................ 70
Figure 34: Wireframe design 09 ........................................................................................ 70
L. Abibaraman
Database
PEARSON ID:
Page | 26
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 35: Wireframe design 10 ........................................................................................ 71
Figure 36: Wireframe design 11 ........................................................................................ 71
Figure 37 SS of visual studio ............................................................................................. 78
Figure 38 SS of create visual studio 1 step ........................................................................ 79
Figure 39 SS of create visual studio 2 step ........................................................................ 79
Figure 40 SS of visual studio interface .............................................................................. 80
Figure 41 SS of First page ................................................................................................. 81
Figure 42 SS of Login page ............................................................................................... 81
Figure 43 SS of Sign page 1 .............................................................................................. 82
Figure 44 SS of Sign page 2 .............................................................................................. 82
Figure 45 SS of Forget of page 2 ....................................................................................... 83
Figure 46 SS of Forget page 2 ........................................................................................... 83
Figure 47 SS of Dashboard ................................................................................................ 84
Figure 48 SS of Client table ............................................................................................... 84
Figure 49 SS of Production table ....................................................................................... 85
Figure 50 SS of Properties table ........................................................................................ 85
Figure 51 SS of Staff table ................................................................................................ 86
Figure 52 SS of Location table .......................................................................................... 86
Figure 53 insert coding ...................................................................................................... 87
Figure 54 Update ss .......................................................................................................... 88
Figure 55 Delete ss............................................................................................................. 88
Figure 56 DATA TYPE CHECK ...................................................................................... 90
Figure 57 LENTH CHECK ............................................................................................... 91
Figure 58 FORMAT CHECK ............................................................................................ 91
Figure 59 LOOKUP CHECK ............................................................................................ 92
Figure 60PRESENCE CHECK# ....................................................................................... 93
Figure 61 UNIQUE CHECK ............................................................................................. 93
Figure 62: Connect to SQL server ..................................................................................... 98
Figure 63: Create database and table ................................................................................. 99
Figure 64: Client table ....................................................................................................... 99
Figure 65: Create Production table .................................................................................. 100
Figure 66: Create Staff type Table ................................................................................... 100
Figure 67: create property table ....................................................................................... 101
Figure 68: Create Production Location table ................................................................... 101
L. Abibaraman
Database
PEARSON ID:
Page | 27
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 69: Create Production staff Table ......................................................................... 102
Figure 70: Create staff property Table ............................................................................. 102
Figure 71: Feedback form 1 ............................................................................................. 135
Figure 72: Feedback form 3 ............................................................................................. 136
Figure 73: feedback form 2 .............................................................................................. 136
Figure 74: Feedback 2...................................................................................................... 137
Figure 75: Feedback 1...................................................................................................... 137
Figure 76: Feedback 4...................................................................................................... 138
Figure 77: Feedback 3...................................................................................................... 138
Figure 78: Feedback 5...................................................................................................... 139
Figure 79: Feedback 6...................................................................................................... 139
Figure 80: Feedback 7...................................................................................................... 140
Figure 81 Technical Document ........................................................................................ 145
Figure 82 Technical documentation................................................................................. 146
Figure 83 technical documentation .................................................................................. 147
Figure 84 technical documentation .................................................................................. 148
Figure 85 technical documentation .................................................................................. 149
Figure 86 technical documentation .................................................................................. 150
Figure 87technical documentation ................................................................................... 151
Figure 88 technical documentation .................................................................................. 152
Figure 89 technical documentation .................................................................................. 153
Figure 90 sign in .............................................................................................................. 155
Figure 91client id ............................................................................................................. 155
Figure 92 dashboard......................................................................................................... 156
Figure 93 production ID................................................................................................... 157
Figure 94properties ID ..................................................................................................... 158
Figure 95staff ID .............................................................................................................. 158
Figure 96 location ID ...................................................................................................... 159
Figure 97: Symbols of flow chart .................................................................................... 164
Figure 98 Data Flow Chart .............................................................................................. 165
Figure 99: Login .............................................................................................................. 166
Figure 100: Insert ............................................................................................................. 167
Figure 101: Delete............................................................................................................ 168
Figure 102: Gann chart .................................................................................................... 170
L. Abibaraman
Database
PEARSON ID:
Page | 28
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
L. Abibaraman
Database
PEARSON ID:
Page | 29
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Table 1 Comparison of DBMS and file-based system....................................................... 36
Table 2 Client..................................................................................................................... 94
Table 3 Production ............................................................................................................. 94
Table 4 Staff....................................................................................................................... 95
Table 5 Properties .............................................................................................................. 95
Table 6 Staff type ............................................................................................................... 96
Table 7 Property type ......................................................................................................... 96
Table 8 Location ................................................................................................................ 96
Table 9 Test Case ............................................................................................................. 119
Table 10 Test-Case 01 ..................................................................................................... 120
Table 11 Test-Case 2 ....................................................................................................... 121
Table 12 Test-Case 3 ....................................................................................................... 122
Table 13 Test-Case 4 ....................................................................................................... 123
Table 14 Test-Case 5 ....................................................................................................... 124
Table 15 Test-Case 6 ....................................................................................................... 125
Table 16 Test-Case 7 ....................................................................................................... 126
Table 17 Test-Case 8 ....................................................................................................... 127
Table 18Test-Case 9 ........................................................................................................ 128
Table 19 Test-Case 10 ..................................................................................................... 129
Table 20 Test-Case 11 ..................................................................................................... 130
Table 21 Test-Case 12 ..................................................................................................... 131
Table 22 Teat-Case 13 ..................................................................................................... 132
L. Abibaraman
Database
PEARSON ID:
Page | 30
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Activity 1
Data base
A database is a collection of organized and structured data that is stored electronically in a
computer system. It is designed to manage and store information efficiently, allowing users
to easily access, update, and manipulate the data. A database typically consists of one or
more tables, which contain information organized in rows and columns. Each table
represents a different type of data and is made up of fields, which are the columns in the
table. Each row in the table represents a specific record or entry in the database. Databases
are widely used in many applications, including business, finance, education, healthcare,
and government. They allow organizations to store and manage large amounts of data
efficiently and to quickly retrieve the information they need.
Advantages of database
•
Efficient Data Management: A database with tables makes it easy to store, organize,
and manage large amounts of data. Tables provide a structured way of storing data,
making it easy to search, sort, and retrieve specific data.
•
Data Integrity: Tables can be used to enforce data integrity rules such as unique
keys, foreign keys, and constraints, which ensure that the data is accurate and
consistent. This helps to prevent errors and inconsistencies in the data.
•
Security: Databases with tables provide security features such as user
authentication, access control, and encryption. This helps to protect sensitive data
from unauthorized access and ensures that data is secure.
•
Scalability: Databases with tables are designed to handle large amounts of data and
can be easily scaled to accommodate more data as needed.
Disadvantages of database
•
Complexity: Databases with tables can be complex and require specialized
knowledge and skills to design and manage effectively. This can make them
difficult to set up and maintain.
•
Cost: Setting up a database with tables can be expensive, particularly if specialized
hardware or software is required.
•
Data redundancy: If the same data is stored in multiple tables, it can lead to data
redundancy and increase the storage requirements of the database.
L. Abibaraman
Database
PEARSON ID:
Page | 31
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
•
Performance issues: Poorly designed tables or inefficient queries can lead to
performance issues, which can impact the performance of the entire system.
There are many different types of databases, each designed for specific purposes and
use cases. Here are some common types of databases:
•
Relational Database: This is the most common type of database, and it stores data
in tables with rows and columns. Relational databases use Structured Query
Language (SQL) to manage data.
•
NoSQL Database: This type of database does not use SQL and instead stores data
in unstructured or semi-structured formats. NoSQL databases are designed to
handle large volumes of data and are often used for big data and real-time
applications.
•
Object-Oriented Database: This type of database stores data in objects, which are
instances of classes in object-oriented programming languages. Object-oriented
databases are often used for complex data structures and applications that require
object-oriented programming.
•
Graph Database: This type of database uses graph structures to store data, with
nodes representing entities and edges representing relationships between entities.
Graph databases are often used for social networking and recommendation systems.
•
Hierarchical Database: This type of database stores data in a hierarchical format,
with parent-child relationships between data elements. Hierarchical databases are
often used for mainframe applications and are less common than other types of
databases.
•
Document Database: This type of database stores data in document formats, such
as JSON or XML. Document databases are often used for content management
systems and web applications.
•
Time-Series Database: This type of database is designed to store and manage timestamped data, such as sensor data or financial data. Time-series databases are
optimized for fast queries and are often used for real-time analytics and monitoring
applications.
L. Abibaraman
Database
PEARSON ID:
Page | 32
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Evaluation of Database
File Based Systems
A fail-based system is a system design approach that prioritizes reliability and fault
tolerance over performance or efficiency. In a fail-based system, the design of the system
assumes that failures will occur and aims to minimize their impact on the system's overall
operation.
The primary goal of a fail-based system is to ensure that the system continues to operate
even in the presence of failures, errors, or other unexpected events. This is achieved by
incorporating redundancy, fault detection, and error recovery mechanisms into the system's
design.
In contrast to traditional system design approaches, which focus on maximizing
performance and minimizing costs, fail-based systems prioritize the ability to recover from
failures quickly and reliably. This approach is particularly important in critical systems,
such as aerospace, medical, or financial systems, where failures can have serious
consequences.
Examples of fail-based system
Redundant Power Supplies in Data Centers: Data centers rely on uninterrupted power
supply (UPS) systems to keep their servers running. A fail-based approach to UPS design
would incorporate redundant power supplies, backup generators, and automatic failover
mechanisms to ensure that the data center can continue to operate even in the event of
power failures.
Automatic Failover Mechanisms in High Availability Databases: High availability
databases are designed to minimize downtime by incorporating automatic failover
mechanisms. In a fail-based system, these mechanisms would be designed to detect and
recover from failures, such as server crashes or network outages quickly and reliably.
Backup Systems in Aircraft Flight Controls: Aircraft flight controls rely on redundant
systems to ensure safety and reliability. Fail-based design of flight controls would
incorporate backup systems that can take over in the event of primary system failures.
RAID (Redundant Array of Inexpensive Disks) in Data Storage Systems: RAID is a
technology used in data storage systems that incorporates redundant disks to provide fault
L. Abibaraman
Database
PEARSON ID:
Page | 33
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
tolerance and data protection. In a fail-based system, RAID would be designed to detect
and recover from disk failures quickly and reliably.
Automatic Emergency Braking (AEB) Systems in Vehicles: AEB systems in vehicles are
designed to minimize the risk of accidents by automatically applying the brakes if the
vehicle is about to collide with an object. A fail-based approach to AEB design would
incorporate redundancy and backup systems to ensure that the brakes can be applied even
in the event of sensor failures or other errors.
Advantages and Disadvantages of File Based System
Advantages of File based system
Simplicity: File-based systems are relatively simple and easy to use. They can be created
and managed by non-technical users, which makes them ideal for small applications or
personal use.
Flexibility: File-based systems are flexible and can be easily modified or adapted to meet
changing requirements.
Low Cost: File-based systems are usually less expensive than more advanced database
management systems, making them a cost-effective solution for small applications.
Disadvantages of file-based system
Data Redundancy: File-based systems often suffer from data redundancy, where the same
data is stored in multiple files, leading to inconsistencies and errors.
Limited Security: File-based systems have limited security features and are vulnerable to
hacking, data theft, and other cyber threats.
Poor Scalability: File-based systems do not scale well and can become slow and inefficient
as the amount of data and the number of users increases.
Lack of Data Integrity: File-based systems lack the ability to enforce data integrity
constraints, such as referential integrity, which can lead to data inconsistencies and errors.
Issues of file processing system
Data Redundancy: File-based systems often suffer from data redundancy, where the same
data is stored in multiple files, leading to inconsistencies and errors.
L. Abibaraman
Database
PEARSON ID:
Page | 34
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Data Inconsistency: In file-based systems, data is often duplicated across multiple files,
which can lead to inconsistencies and errors, especially when updates are made to the data.
Limited Data Sharing: File-based systems lack the ability to share data across multiple
applications or users, which can lead to data duplication and inconsistencies.
Lack of Data Integrity: File-based systems lack the ability to enforce data integrity
constraints, such as referential integrity, which can lead to data inconsistencies and errors.
Limited Data Security: File-based systems have limited security features and are vulnerable
to hacking, data theft, and other cyber threats.
Poor Performance: File-based systems can become slow and inefficient as the amount of
data and the number of users increases, which can negatively impact performance.
Limited Scalability: File-based systems do not scale well and can become difficult to
manage as the amount of data and the number of users increases.
Comparison of DBMS and file-based system
Comparison
DBMS
Data Organization
Data
File-based
is
organized
into Data
is
organized
into
tables, rows, and columns, individual files, with each
allowing for easy retrieval, file containing a specific set
sorting, and querying of of data.
data
Data Redundancy
Minimal data redundancy High data redundancy due
due
to
normalization to the lack of normalization
techniques used in DBMS
Data Consistency
Data
consistency
techniques
is Data
consistency
is
maintained by enforcing maintained by enforcing
data integrity rules such as data integrity rules such as
referential integrity, unique referential integrity, unique
constraints,
and
check constraints,
constraints
Data Sharing
check
constraints
Data sharing is easy and Data sharing is limited to
efficient
L. Abibaraman
and
Database
in
DBMS
as individual files, making it
PEARSON ID:
Page | 35
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
multiple applications can difficult to share data across
access the same data
Data Security
DBMS
provides
multiple applications
robust File-based systems have
security features such as limited security features
access
control,
data and are more vulnerable to
encryption, and auditing to cyber threats and data theft
protect
data
from
unauthorized access or theft
Scalability
DBMS is highly scalable File-based systems are not
and
can
handle
large scalable and can become
volumes of data and users slow and inefficient as the
without
compromising amount of data and users
performance
Performance
increases
DBMS is designed for high File-based
systems
are
performance and can handle slower and less efficient in
complex
queries
transactions quickly
Cost
and handling complex queries
and transactions
DBMS can be expensive to File-based
systems
are
set up and maintain
cheaper
and
generally
easier to set up and maintain
Table 1 Comparison of DBMS and file-based system
To create a database, you will need the following requirements:
•
Database Management System (DBMS): A DBMS is software that allows you to
create, manage, and access a database. Examples of popular DBMS software
include MySQL, Oracle, Microsoft SQL Server, and PostgreSQL.
•
Hardware: You will need a computer or server to run the DBMS software. The
hardware requirements will depend on the size of the database and the expected
workload. Larger databases with high usage may require more powerful hardware,
such as multiple processors, large amounts of memory, and high-performance
storage.
•
Database Design: Before creating a database, you will need to design its structure.
This involves identifying the data you want to store, the relationships between the
L. Abibaraman
Database
PEARSON ID:
Page | 36
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
data, and the rules for accessing and manipulating the data. The database design
should be optimized for the expected usage of the database.
•
Data Storage: Once you have designed the database structure, you will need to
create the tables and other objects in the DBMS. You will also need to specify the
data types for each field, and any constraints or rules for the data.
•
Security: You will need to implement security measures to protect the database
from unauthorized access or malicious attacks. This may include user
authentication, access control, and encryption.
•
Backups and Recovery: To ensure that data is not lost due to hardware failure,
human error, or other issues, you will need to implement a backup and recovery
strategy. This may involve regularly backing up the database to another location,
and having a plan in place for restoring the database in case of a failure.
•
Performance Optimization: As the database grows and usage increases, you may
need to optimize its performance. This may involve fine-tuning the database
schema, indexing the data, and optimizing queries.
Advantages of database requirements:
•
Improved Data Quality: Database requirements help ensure that data is accurate,
consistent, and complete. This is achieved by defining data types, constraints, and
relationships, which help prevent errors and inconsistencies in the data.
•
Efficient Data Management: Databases are designed to store and manage large
amounts of data efficiently. This is achieved by optimizing the storage and retrieval
of data, which helps improve performance and reduce storage requirements.
•
Security: Database requirements help ensure that data is secure by implementing
user authentication, access control, and encryption. This helps protect sensitive data
from unauthorized access and ensures that data is kept confidential and secure.
•
Scalability: Database requirements help ensure that the database can be scaled to
accommodate more data and users as needed. This is achieved by designing the
database schema to be flexible and scalable, and by optimizing performance to
handle increased usage.
L. Abibaraman
Database
PEARSON ID:
Page | 37
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Comparison of DBMS and file processing
Databases and file processing systems are both used to store and manage data. The main
difference between them is the way data is organized and manipulated.
Databases are organized in a structured way, allowing for more complex queries and data
manipulation. Data is typically organized in tables and can be accessed using Structured
Query Language (SQL). Databases offer more powerful search and data manipulation
capabilities than file processing systems, as well as features like concurrency control and
transaction management.
File processing systems, on the other hand, are less structured than databases and are used
to store and manage data in a flat file. Data is typically stored as text or binary files and can
be accessed using a programming language. File processing systems are easier to set up
and maintain than databases, but they are not as powerful or efficient.
Major steps to develop the database
1. Identify and document the requirements: Before developing the database, it is important
to understand the needs and objectives of the project, and to identify all the requirements
that the database must meet.
2. Design the Database: Once the requirements have been identified, the next step is to
design the database. This involves creating a data model, deciding on the data types, and
setting up the tables and relationships between them.
3. Create the Database: After the design is complete, the database can be created. This
involves writing SQL scripts to create the tables and other database objects.
4. Populate the Database: Once the database has been created, the data must be populated.
This involves writing SQL scripts to insert the data into the tables.
5. Test the Database: After the database has been populated, it should be tested to ensure
that it meets the requirements. This involves writing SQL queries to test various scenarios.
6. Maintain the Database: Finally, the database must be maintained. This involves writing
SQL scripts to update, delete, and modify the data in the database. It also involves regular
backups and other maintenance tasks.
L. Abibaraman
Database
PEARSON ID:
Page | 38
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Types of requirements
•
User requirements
•
System requirements (software requirements, hardware requirements, functional
requirement, non-functional requirement)
User requirements
The name implies. They are requirements set by the end user. The requirements express
how to facility, equipment or process should performs in terms of the product to be
manufactured, required throughput, and conditions in which product should be made
•
Able to manage client details. (Name, client id, address, phone number)
•
Able to manage production details. (Production id, production type, cost)
•
Able to manage staff details. (Staff id, staff name, address, mobile number)
•
Able to manage property details. (Property name, property id, property type,
property cost)
•
Able to manage payment details. (Payment type, income, production cost)
•
Able to manage external details. (Advertisement, information about film)
•
Software interface design
Major ideas of systems
1 Search bar on upper side corner.
2 Save button on left bottom
3 Interface color should be red
4 Able to edit the details by right click (select the details or change or view for
the help of right click edit option)
5 Able to get automatic summary reports in single click
6 Print option on right bottom corner to get invoices of daily list
7 Able to manage locational details
8 Able to use by 500 users on same time without any system failure
L. Abibaraman
Database
PEARSON ID:
Page | 39
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
System requirements
The list of hardware devices and software applications required to run the program or game
efficiently called as system requirements or software requirements
1
2
For windows computers
•
Windows xp/server2003/vista/7/8
•
Latest versions of internet explorer, Firefox and Google chrome
•
High-speed internet Connection (e.g, Cable modem, DSL IDSN, T1)
For mac computers
•
Apple Mac os 10.5 leopard or higher
•
Latest version of safari web browser
•
High-speed internet connection (e.g., Cable modem, DSL IDSN, T1)
Types of system requirements
1. Software requirements
2. Hardware requirements
3. Functional requirements
4. Non- functional requirements
Software requirements
Software requirements for a system are the description of what the system should to do in
services (examples: reliability, response time and storage requirements)
•
OS windows 11.1.1
•
DBMS software-MS SQL server management studio
•
To design the database system E draw max
•
Database server- SQL server
•
To develop the app- visual studio 18.10.1
L. Abibaraman
Database
PEARSON ID:
Page | 40
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Hardware requirements
To run the major system of the components that influence performance are RAM, processor
speed and network speed. The user will enjoy the recommended level of hardware.it
comfortable and acceptable performance
1. Recommended for workstations:
•
Intel core i3 or greater processor
•
GIG RAM on the workstation
•
80 GB available storage space on hard drive
•
100/1000 Base T Network card
•
17’ monitor
•
Windows 7or greater
2. Recommended for SERVER:
•
X64 architecture or compatible dual-core 2.0GHZ processor
•
GIG RAM on the workstation
•
250 GB available storage space on hard drive
•
100/1000 BASE T network card
•
Windows server 2003 or greater
•
Battery backup (ups)
Functional requirements
These are the requirements that the end user specifically demands as basic facilities that the
system should offer. All these functionalities need to be necessarily incorporated into the
system as part of the contract. These are represented or stated in the form of input to be
given to the system, the operation performed and the output expected. They are basically
the requirements stated by the user which one can see directly in the final product, unlike
the non-functional requirements. (ANON.,2020)
The define what the product must do, and what the features and functional are:
L. Abibaraman
Database
PEARSON ID:
Page | 41
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
•
In functional requirements describe what the product do
•
We can be defined product features
•
We can be able to focus on user requirements
•
We can be able to capture user cases
•
We can usually be defined by user
a. Save button to view all over client details, production details, staff details,
property details
b. Search bar to search all the details on upper side of the corner
c. Option to produce Over all summary reports which needs to be in a right bottom
corner
d. Delete button must have to delete unwanted errors details
e. Edit option to must have to edit customer details in the manner of alphabetical
order
f. The application must work properly on windows 7 and upwards
g. The login button must have in front page to secure the data
h. Should be able to enter the data into the system
i. Each of the operations must perform by separate screen
L. Abibaraman
Database
PEARSON ID:
Page | 42
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
NON-functional requirements
These are basically the quality constraints that the system must satisfy according to the
project contract. The priority or extent to which these factors are implemented varies from
one project to other. They are also called non-behavioral requirements.(Anon.,2020)
•
In non-functional requirements we can find how the product works
•
We can able to define product properties
•
We can able to focus on user expectations
•
We can able to capture quality of attribute
•
We can define what does developers or other tech experts
Non-functional requirements
a. Security
b. Capacity
c. Reliability
d. Localization
ER-Diagram (entity relationship diagram)
An Entity-relationship model (ER model) describes the structure of a database with the help
of database with the help of a diagram, and it is known as entity relationship diagram.An
ER model is design or blueprint of a database that can later be implemented as a database
ER- Data Models
ü Entity
ü Attribute
ü Relationship
L. Abibaraman
Database
PEARSON ID:
Page | 43
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Entity
In terms of DBMS, an entity is a table or attribute of a table in database, so by showing
relationship among tables and their attributes, ER diagram shows the complete logical
structure of a database
Figure 1Example for entity
Examples:
1. All persons having an account at a bank
2. All employees of a bank
3. All customers of the bank
Types of entity
1. Strong entity
2. Weak entity
Strong Entity
1. Strong entity always has a primary key.
2. strong entity is not dependent on any other entity.
3. strong entity is represented by a single rectangle.
4. Two strong entity relationship is represented by a single diamond
5. strong entity have either total participation or not.
L. Abibaraman
Database
PEARSON ID:
Page | 44
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 2Example for strong entity
Example
•
Consider the Er diagram which consists of two entities student and course
•
Student entity is a strong entity because it consists of a primary key called student
id which is enough for accessing each record uniquely
•
In the same way, the course entity contains of course ID attribute which is capable
of uniquely accessing each row. (prep.insta)
L. Abibaraman
Database
PEARSON ID:
Page | 45
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Weak entity
1. While a weak entity has a partial discriminator key.
2. Weak entity depends on strong entity.
3. weak entity is represented by a double rectangle.
4. while the relation between one strong and one weak entity is represented by a
double diamond.
5. while weak entity always has total participation.
Example
Figure 3Example for weak entity
•
In the er diagram, we have two entities employee and dependents.
•
Employee is a strong entity because it has a primary key attribute called employee
number
•
(Employee_no) which is capable of uniquely identifying all the employee.
•
Unlike employee, dependents are weak entity because it does not have any primary
key.
•
D.name along with the employee_no can uniquely identify the records of
depends.so here the D_name (depemds name) is partial key. (prepinsta)
L. Abibaraman
Database
PEARSON ID:
Page | 46
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Attribute
An attribute is a piece of data that describes an entity for example, in a customer database,
the attributes might be name, address, and phone number.in a product database, the
attributes might be name, price, and data of manufacture.
Figure 4 Example for attribute
Types of attributes
1. simple attributes
2. composite attribute
3. single valued attribute
4. multi-valued attribute
5. Derived attribute
6. complex attribute
L. Abibaraman
Database
PEARSON ID:
Page | 47
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
1. Simple Attribute
A simple attribute is a characteristic or property of an object or entity that can be
described using a single value or data type. For example, the color of a car, the
height of a person, or the weight of an object are all simple attributes. Simple
attributes are usually easy to measure or determine and can be used to differentiate
one object from another. They are also commonly used in databases and
programming languages to represent data.
Figure 5 Example for simple attribute
Example: The roll number of a student, the id number of an employee.
L. Abibaraman
Database
PEARSON ID:
Page | 48
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
2. Composite Attribute
A composite attribute is a type of attribute in a database or data model that is made up of
more than one simple attribute. Instead of representing a single characteristic of an object
or entity, a composite attribute is a combination of several simple attributes that are related
to each other.
Figure 6 Example for composite attribute
Example:
Address attribute of student entity type consists of street, city, state, and country.in ER
diagram, composite attribute is represented by an oval comprising of ovals.
L. Abibaraman
Database
PEARSON ID:
Page | 49
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
3. Single-Valued Attribute
A single-valued attribute is a type of attribute in a database that can only have one value
at a time for a given instance or record in a table. This means that each value of the attribute
uniquely identifies a specific entity or object in the database.
Figure 7 Example for single valued attribute
Example: The age of a student
4. Multi-valued Attribute
A multivalued attribute of an attribute that can have more than one value associated with
the key of the entity.
Figure 8Example for multi valued attribute
Example: A large company could have many divisions, some of them possibly in different
cities.
L. Abibaraman
Database
PEARSON ID:
Page | 50
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
5. Derived Attribute
A derived attribute is a type of attribute in a database that is calculated or derived from
other attributes in the same table or related tables. It is not directly stored in the database
but rather calculated on-the-fly when needed.
An attribute that can be derived from other attributes is derived attributes.
Figure 9 Example for derived attribute
Example: total and average marks of a student.
6. Complex Attribute
Those attributes, which can be formed by the nesting of composite and multi-
Figure 10 Example for complex attribute
Example: A person owns more than one house, and each house has more than one phone
number.
Relationship
Data base relationship are associations between tables that are created using join between
tables that are created using join statements to retrieve data. The following table describes
L. Abibaraman
Database
PEARSON ID:
Page | 51
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
the database relationships. Both tables can have only one record on each side of the both
relationships. Each primary key value relates to none or only one record in the related table.
Figure 11 Relationship
Example: if you own a record store, the database might have a table for albums, another for
song titles, and another for artists.
Types of relationship
1. unary relationship
2. binary relationship
3. ternary relationship
4. n-ary relationship
L. Abibaraman
Database
PEARSON ID:
Page | 52
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Unary relationship
A unary relationship is a type of relationship in a database system that occurs when an
entity is related to itself in some way. In other words, the relationship involves a single
entity interacting with itself in some manner.
Figure 12 Unary Relationship
Binary Relationship
A binary relationship is a type of relationship in a database system that involves two
entities or tables that are related to each other. In other words, it is a relationship between
two differents.
Figure 13 Binary Relationship
L. Abibaraman
Database
PEARSON ID:
Page | 53
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Ternary Relationship
A ternary relationship is a type of relationship in a database system that involves three
entities or tables that are related to each other. In other words, it is a relationship between
three different types of entities.
Figure 14 Ternary Relationship
n-ary Relationship
An n-ary relationship is a type of relationship in a database system that involves more than
two entities or tables that are related to each other. In other words, it is a relationship
between multiple entities, where n can be any number greater than two.
Figure 15 n-ary Relationship
L. Abibaraman
Database
PEARSON ID:
Page | 54
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Cardinalities
There are three types of cardinalities for relationships
1. one to one
2. one to many
3. many to many
One-to-One relationship
In a database is a type of relationship between two tables where each row in one table is
associated with only one row in another table. This type of relationship is used when there
is a need to store data for a single entity in multiple related tables. For example, a company
may have a table that stores basic employee information, such as name, address, and phone
number. The company may also have an additional table that stores more detailed
information about each employee, such as salary, job title, and start date. In this case, each
row in the employee table is associated with only one row in the employee details table,
creating a one-to-one relationship.
One-to-many relationship
A one-to-many relationship is a type of relationship in which a parent record in one table
can be linked to multiple records in another table. For example, a customer can have many
orders. In this case, the customer table is the parent table, and the order table is the child
table. The customer table would have a primary key, and the order table would have a
foreign key that references the primary key of the customer table.
Many-to-many realtionship
A many-to-many relationship is a type of relationship between two entities where each
entity can have multiple instances of relationships with the other entity. For example, a
student can take multiple classes and a class can have multiple students. Another example
of a many-to-many relationship is a customer and an order. A customer can have multiple
orders and an order can have multiple customers.
L. Abibaraman
Database
PEARSON ID:
Page | 55
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
ER-Diagram for given brief
Figure 16 ER-Diagram for above scenario
Mapping
Mapping is the process of creating a representation of a specific area, such as a geographical
region, in a two-dimensional form. This representation can be used to identify the features
of a given area, such as roads, rivers, cities, and other features. Mapping is often used in
navigation, geographic information systems, and other disciplines that require accurate
representations of the Earth's surface.
L. Abibaraman
Database
PEARSON ID:
Page | 56
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Internal mapping
Internal mapping in a database is the process of mapping the physical data models of a
database to the conceptual data models. This is done to ensure that the data stored in the
database is logically and physically organized. The mapping defines the relationships
between the different entities in the database, and helps ensure data integrity and
consistency. It also helps the database administrator to efficiently query the data and store
new data.
External Mapping
External mapping in a database is a process of connecting two different database systems
or data sources, typically from different vendors or platforms. This allows the databases to
interact with each other in order to exchange data, query information, and perform other
operations. External mapping can be used to connect a web-based database to an enterprise
resource planning (ERP) system, or to transfer data between two different databases
Relationship Mapping
A relationship mapping database is a type of database used to store data that shows
relationships between entities. These databases are used to store information about
connections between people, organizations, products, services, and other data points. The
data is typically stored in a graph structure, allowing users to quickly explore the
relationships between different entities. Relationship mapping databases are often used in
customer relationship management (CRM) and marketing analytics. They can also be used
for data science, data visualization, fraud detection, and other types of data analysis.
L. Abibaraman
Database
PEARSON ID:
Page | 57
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Map Strong Entity & Simple Attribute
Figure 17 Map Strong Entity & Simple Attribute
Map Multivalued & Composite Attribute
Figure 18 Map Multivalued & Composite Attribute
Map One to One Relationship
A one-to-one relationship is when two entities have a direct connection to one another. This
means that for every one entity, there is only one record in the other entity.
L. Abibaraman
Database
PEARSON ID:
Page | 58
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
There are no One to One Relationship in scenario
Map One to Many Relationship
Figure 19 Map One to Many Relationship
L. Abibaraman
Database
PEARSON ID:
Page | 59
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Map Many to Many Relationship
Figure 20 Map Many to Many Relationship
L. Abibaraman
Database
PEARSON ID:
Page | 60
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Relationship schema
A relationship schema is a representation of the relationships between different entities in
a database. It is typically represented as an Entity-Relationship diagram, which is a
graphical representation of the different entities, their attributes, and the relationships
between them. A relationship schema is used to define the structure of data within a
database, as well as to provide a visual representation of the data structure.
L. Abibaraman
Database
PEARSON ID:
Page | 61
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Relational Schema for Above ER Diagram
Figure 21 Relational Schema for Above ER Diagram
L. Abibaraman
Database
PEARSON ID:
Page | 62
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Functional Dependency and Non Functional Dependency
Figure 22 Example of Normalization
First Normal Form (1NF)
In a database normalization technique that organizes data into related tables. It involves
breaking down large tables into smaller ones, and ensuring that each table has a primary
key to identify each row. Additionally, it eliminates duplicate columns from the same table,
and ensures that all data is stored in the simplest possible form.
Figure 23 Example of 1NF
L. Abibaraman
Database
PEARSON ID:
Page | 63
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Second Normal Form (2NF)
The requires that a relation must be in first normal form (1NF) and every non-key field
must be fully dependent upon the primary key.
The purpose of 2NF is to ensure that the non-key fields are dependent upon the entire
primary key, not just part of it. This means that if there is a composite key (multiple fields
making up the primary key) then each non-key field must depend on the entire composite
key, not just one part of it.
Figure 24 Example of 2NF
Third normal form (3NF)
all the attributes in a table must be directly dependent on the primary key. This means that
all non-key attributes must be mutually independent of each other, meaning if you know
the value of one non-key attribute, you won't be able to infer the value of any other nonkey attribute. This also means that all non-key attributes must be directly dependent on the
primary key, meaning if you know the value of the primary key, you can determine the
values of all the other non-key attributes in the table. If a table does not meet these criteria,
it is not in 3NF and must be further normalized.
Figure 25 Example of 3NF
Boyce-Codd normal form (BCNF)
Boyce-Codd normal form (BCNF) is a normal form used in database normalization. It is a
slightly stronger version of the third normal form (3NF). To be in BCNF, a relation must
meet the requirements of 3NF and additionally, every determinant must be a candidate key.
L. Abibaraman
Database
PEARSON ID:
Page | 64
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Wireframe Design for scenario
Intro of wireframe
A wireframe is a visual representation of the skeletal structure of a website, mobile app, or
any other digital product. It is a low-fidelity representation of the product's layout,
functionality, and user interface. A wireframe typically consists of simple shapes and lines
that depict the basic elements of the product, such as buttons, text, images, and forms.
The purpose of a wireframe is to provide a blueprint for the product's design and
functionality, without getting bogged down in details such as color, typography, or
graphics. Wireframes help designers and developers to visualize the layout and flow of the
product, and to identify potential usability issues early in the design process.
Wireframes can be created using a variety of tools, such as pencil and paper, whiteboards,
or specialized software programs. They are often used in conjunction with other design
documents, such as user personas, user stories, and mockups, to create a complete picture
of the product's design and functionality.
Use of wireframe
1. Navigation: Users will use navigation elements such as menus, tabs and buttons to move
through the wireframe.
2. Content: Content elements such as text, images and videos will be used in the wireframe
to provide information and visual cues.
3. Forms: Forms will be used to capture user input and data.
4. Interaction: Interaction elements such as buttons, sliders and toggles will be used to
provide users with interactive elements.
5. Animation: Animations will be used to provide visual feedback and create a smoother
user experience.
6. Feedback: Feedback elements such as status indicators, progress bars and notifications
will be used to inform users of their progress and provide feedback on their actions.
L. Abibaraman
Database
PEARSON ID:
Page | 65
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
System wireframe design for scenario
Figure 26: Wireframe design 01
L. Abibaraman
Database
PEARSON ID:
Page | 66
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 27: Wireframe design 02
Figure 28: Wireframe design 03
L. Abibaraman
Database
PEARSON ID:
Page | 67
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 29: Wireframe design 04
Figure 30: Wireframe design 05
L. Abibaraman
Database
PEARSON ID:
Page | 68
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 31: Wireframe design 06
Figure 32: Wireframe design 07
L. Abibaraman
Database
PEARSON ID:
Page | 69
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 33: Wireframe design 08
Figure 34: Wireframe design 09
L. Abibaraman
Database
PEARSON ID:
Page | 70
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 35: Wireframe design 10
Figure 36: Wireframe design 11
L. Abibaraman
Database
PEARSON ID:
Page | 71
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Data validation
Data validation is the process of ensuring that data is accurate, complete, and compliant
with expectations or rules. It involves validating data against a set of criteria to make sure
that it meets the requirements of the application or system that is using it. Data validation
may involve checking a single value, or a complex set of values, against a set of rules or
criteria. It can be used to ensure the accuracy of data entered into a system, or to verify that
data stored in a system is accurate.
Types of Data validation
1. Length check: This type of validation is used to check the length of data entered in the
field.
2. Format check: This type of validation is used to check the format of data entered in the
field.
3. Range check: This type of validation is used to check if the data entered in the field is
within the specified range.
4. Presence check: This type of validation is used to check if the data entered in the field is
present or not.
5. Type check: This type of validation is used to check if the data entered in the field is of
the specified type.
6. Uniqueness check: This type of validation is used to check if the data entered in the field
is unique or not.
7. List check: This type of validation is used to check if the data entered in the field is from
the specified list of values.
8. Consistency check: This type of validation is used to check if the data entered in the field
is consistent with other related fields.
9. Relationship check: This type of validation is used to check if there is a valid relationship
between two fields.
L. Abibaraman
Database
PEARSON ID:
Page | 72
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Example of Data validation
Data validation is the process of ensuring that data is clean, correct, and useful. It can be
accomplished in a number of ways, such as through the use of data validation rules, data
verification processes, and other methods.
Data validation is important because it helps to ensure that data is accurate and reliable.
This is especially important when dealing with large datasets, as errors in the data can have
significant impacts on any analysis or decision making.
For example, when entering data into a database, a data validation rule might be used to
make sure that only valid values are entered. This could be a range of numbers, a specific
format, or a list of acceptable values. Data verification is another form of data validation,
which involves comparing the data entered with an existing source, such as a customer
database, to ensure that it matches.
L. Abibaraman
Database
PEARSON ID:
Page | 73
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Effectiveness of design in attending the intended objectives
Effectiveness of design in attending the intended objective in a database is the ability of the
database design to achieve its purpose. This includes the accuracy and speed with which
data can be accessed, the data protection offered and the efficient use of resources such as
memory and processing power. The effectiveness of design is judged by the quality of the
results it produces. Good design should ensure that the database can store and process data
efficiently while fulfilling its purpose. It should also provide a secure environment that
protects data from loss or unauthorized access.
Types of effectiveness design in attending the intended objectives
•
Usability: The design should make it easy for users to interact with the data stored
in the database.
•
Search ability: The design should allow users to quickly and easily search for and
access data.
•
Scalability: The design should be able to accommodate increased data storage and
processing requirements.
•
Integrity: The design should ensure the accuracy and consistency of data stored in
the database.
•
Security: The design should provide secure access to the data and protect it from
unauthorized access.
•
Performance: The design should enable the database to perform operations quickly
and efficiently.
•
Data Modeling: The design should create an effective data model that allows users
to interact with the data in a meaningful way.
•
Data Warehousing: The design should enable the efficient storage and retrieval of
data for analysis and reporting.
•
Data Mining: The design should enable users to discover patterns in the data and
gain valuable insights.
Advantages of effectiveness design
The advantages of effective design in attending the intended objective in a database are
numerous. A properly designed database can help to ensure the accuracy and integrity of
data, improve data retrieval and organization, reduce storage and processing costs, and
create a secure and reliable system for storing and manipulating data. Effective design also
L. Abibaraman
Database
PEARSON ID:
Page | 74
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
reduces the risk of data loss, data corruption, and data leakage. Additionally, effective
design can improve the scalability of the database and enhance performance by optimizing
the use of resources. Finally, effective design can help to ensure the availability and
reliability of the data.
L. Abibaraman
Database
PEARSON ID:
Page | 75
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Activity 2
Integrated Development Environment
An Integrated Development Environment (IDE) is a software application that provides a
comprehensive environment for software development. It typically includes a source code
editor, a compiler or interpreter, a debugger, and other tools needed to develop software.
An IDE can be used for developing applications, websites, and other software projects. The
main advantage of an IDE is that it provides a single environment for all the tasks involved
in software development. Developers can write, test, and debug code in the same
environment without having to switch between different applications. This can save time
and improve productivity. IDEs also typically include features like code highlighting,
autocomplete, and code refactoring, which can help developers write code more efficiently
and with fewer errors. They may also include tools for version control, code analysis, and
project management. Popular IDEs include Visual Studio, Eclipse, IntelliJ IDEA, and Py
Charm, among others. Different IDEs are tailored for different programming languages and
platforms, and each may have its own unique set of features and tools.
Benefits of visual studio
Visual Studio is a popular Integrated Development Environment (IDE) developed by
Microsoft for creating software applications for various platforms such as Windows,
Android, IOS, and the web. It has been widely used by developers for many years due to
its numerous benefits. In this article, we will explore some of the benefits of Visual Studio
in detail.
Versatile: Visual Studio supports various programming languages, including C++, C#, F#,
VB.NET, and others. This versatility allows developers to choose the best language for a
specific project and switch between languages easily.
Integration: Visual Studio provides seamless integration with other Microsoft
development tools, such as Azure DevOps, GitHub, and Visual Studio Code. This
integration makes it easy to collaborate with team members and streamline development
processes.
Code Editor: The code editor in Visual Studio provides powerful features such as syntax
highlighting, code completion, and debugging tools. These features help developers write
code faster, with fewer errors and increased productivity.
L. Abibaraman
Database
PEARSON ID:
Page | 76
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Debugging: Visual Studio's debugging tools are top-notch, enabling developers to debug
code easily and efficiently. With features such as breakpoints, watch windows, and call
stacks, developers can easily identify and fix bugs in their code.
UI Design: Visual Studio's UI design tools are user-friendly and enable developers to create
interfaces quickly and efficiently. With drag-and-drop functionality and pre-built UI
components, developers can create stunning interfaces in less time.
Testing: Visual Studio has built-in testing tools that allow developers to create and run
automated tests. These tests can help identify bugs and improve code quality, leading to
more reliable and robust applications.
Deployment: Visual Studio provides tools for deploying applications to various platforms,
including desktops, mobile devices, and the web. These deployment tools streamline the
process of publishing applications to production environments.
Open Source: Visual Studio has embraced open source development, providing tools and
resources for developers to contribute to open source projects. This has helped build a
vibrant community around Visual Studio and has led to numerous open source extensions
and plugins for the platform.
Cloud Development: Visual Studio has powerful tools for cloud development, making it
easy for developers to build and deploy applications to cloud environments such as Azure.
These tools streamline the process of building cloud applications, enabling developers to
focus on writing code.
Community: Visual Studio has a large and active community of developers who contribute
to forums, blogs, and other resources. This community provides support, feedback, and
ideas for developers, helping them improve their skills and stay up-to-date with the latest
trends in software development.
In conclusion, Visual Studio is a powerful and versatile IDE that provides numerous
benefits for software developers. Its robust code editor, debugging tools, UI design tools,
and testing tools make it easy to write, test, and deploy applications. Its integration with
other Microsoft tools, open-source development, and cloud development tools make it an
attractive platform for developers of all skill levels. With its active community and
resources, Visual Studio is an excellent choice for developers who want to improve their
skills and build better software.
L. Abibaraman
Database
PEARSON ID:
Page | 77
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 37 SS of visual studio
L. Abibaraman
Database
PEARSON ID:
Page | 78
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 38 SS of create visual studio 1 step
Figure 39 SS of create visual studio 2 step
L. Abibaraman
Database
PEARSON ID:
Page | 79
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 40 SS of visual studio interface
L. Abibaraman
Database
PEARSON ID:
Page | 80
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 41 SS of First page
Figure 42 SS of Login page
L. Abibaraman
Database
PEARSON ID:
Page | 81
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 43 SS of Sign page 1
Figure 44 SS of Sign page 2
L. Abibaraman
Database
PEARSON ID:
Page | 82
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 45 SS of Forget of page 2
Figure 46 SS of Forget page 2
L. Abibaraman
Database
PEARSON ID:
Page | 83
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 47 SS of Dashboard
Figure 48 SS of Client table
L. Abibaraman
Database
PEARSON ID:
Page | 84
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 49 SS of Production table
Figure 50 SS of Properties table
L. Abibaraman
Database
PEARSON ID:
Page | 85
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 51 SS of Staff table
Figure 52 SS of Location table
L. Abibaraman
Database
PEARSON ID:
Page | 86
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 53 insert coding
L. Abibaraman
Database
PEARSON ID:
Page | 87
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 54 Update ss
Figure 55 Delete ss
L. Abibaraman
Database
PEARSON ID:
Page | 88
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Definition methods verifying data in tables
1. Check the number of records in a table: (add sql screenshot)
To check the number of records in a table, you can execute an SQL query such as "SELECT
COUNT(*) FROM table name". This query will return the total number of records in the
table.
2. Check the data type of columns:
To check the data type of columns in a table, you can execute an SQL query such as
"SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE
TABLE_NAME = 'table name'". This query will return the data type for each column in
the table.
3. Check if a column exists in a table:
To check if a column exists in a table, you can execute an SQL query such as "SELECT
COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME =
'table_name' AND COLUMN_NAME = 'column_name'". This query will return the
number of columns with the specified name in the specified table.
Types of methods verifying data in tables
1. Primary Key Constraints: Primary keys are used to uniquely identify each record in a
table, and ensure data integrity.
2. Foreign Key Constraints: Foreign keys are used to create relationships between tables
and ensure data consistency between related tables.
3. Unique Key Constraints: Unique keys are used to ensure that each record in a table has
a unique value.
4. Check Constraints: Check constraints are used to ensure that data inserted into the table
meets certain criteria, such as a range of allowed values or a data format.
5. Default Value Constraints: Default value constraints are used to set a default value for a
column when data is not provided.
6. Not Null Constraints: Not null constraints are used to ensure that a column always
contains a value.
L. Abibaraman
Database
PEARSON ID:
Page | 89
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Validation of data
Data validation is the process of ensuring that data in the database is accurate, complete,
and valid according to the business rules and requirements. This process may involve
checking for accuracy, completeness, consistency, integrity, and correctness. It is important
to ensure that data is valid before it is used for decision making. This can be done by
running a verification process on data that is entered into the database. This can include
checking for errors, duplicates, and other inconsistencies in the data. Additionally, data
validation can involve manually reviewing the data to ensure it meets the necessary
standards.
Type of Data Validation
Data type validation: Ensuring that the correct data type is used for a particular field. For
example, a field that is supposed to store dates should only accept valid date values.
Figure 56 DATA TYPE CHECK
L. Abibaraman
Database
PEARSON ID:
Page | 90
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Length validation: Ensuring that the length of the data entered in a field does not exceed
the maximum length allowed. For example, a field that is supposed to store phone numbers
should have a maximum length to prevent users from entering phone numbers that are too
long.
Figure 57 LENTH CHECK
Format validation: Ensuring that the data entered follows a specified format. For example,
a field that stores email addresses should only accept email addresses that are in a valid
format (e.g., username@domain.com).
Figure 58 FORMAT CHECK
L. Abibaraman
Database
PEARSON ID:
Page | 91
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Lookup validation: Ensuring that the data entered is a valid value based on a lookup table
or list. For example, a field that stores product names should only accept values that are
listed in a lookup table of valid product names.
Figure 59 LOOKUP CHECK
L. Abibaraman
Database
PEARSON ID:
Page | 92
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Presence validation: Ensuring that a field is not left blank or empty. For example, a field
that stores a customer's name should require that the field is filled in before the record can
be saved.
Figure 60PRESENCE CHECK#
Unique validation: Ensuring that the data entered in a particular field is unique and does
not already exist in the table. For example, a field that stores employee IDs should require
that each ID is unique to prevent duplication.
Figure 61 UNIQUE CHECK
L. Abibaraman
Database
PEARSON ID:
Page | 93
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Data dictionary
A data dictionary is a collection of descriptions of the data objects or items in a database.
It typically includes the name, type, length, and description of each item. It is used to
document the structure of the data and provide information about the data for users,
applications, and for the database itself.
Client
Table 2 Client
Field Name
Data Type
Field Size
Key
Description
Cid
Integer
10
Primary Key
Unique identifier for the client
C_Name
Varchar
50
The name of the client
C_Address
Varchar
50
The address of the client
Phone_No
Varchar
20
The phone number of the client
Email
Varchar
50
The email address of the client
Production
Table 3 Production
Field Name
Data Type
Field
Key
Description
Primary
Unique identifier for each production
Size
Pid
Integer
10
Key
Cost
Decimal(10,2) 10,2
The cost of producing the item
Type
Varchar
The type of production, such as movie,
50
TV show, or play
Production
Varchar
50
The address of the production company
Datetime
8
The date when the production was
Address
Date of Release
released or aired
L. Abibaraman
Database
PEARSON ID:
Page | 94
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Staff
Table 4 Staff
Field Name
Sid
Data
Field
Type
Size
Integer
10
Key
Description
Primary
The unique identifier for each production
Key
record.
Address
varchar
50
The address of the production location.
Phone_no
varchar
50
The phone number of the production
location.
Name
varchar
Salary
per Decimal
50
The name of the production location.
10,2
The amount paid per production to the
production
employees.
Properties
Table 5 Properties
Field Name
Data Type
Field Size
Key
Description
Propertyid
Numeric
10
Primary Key
Unique identifier for a property
Cost
Currency
12,2
Cost of the property
Name
Text
100
Name or title of the property
L. Abibaraman
Database
PEARSON ID:
Page | 95
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Staff type
Table 6 Staff type
Field Name
Data Type
Field Size
Type name
varchar
50
Field Name
Data Type
Field Size
Type name
varchar
50
Key
Description
Staff type details
Property type
Table 7 Property type
Key
Description
Property type details
Location
Table 8 Location
Field
Data
Name
Type
Postal
Text
code
Street
Text
Field Size
Key
Description
10
Primary
The postal code (ZIP code) for the address
characters
Key
50
The street name and number of the address
characters
City
L. Abibaraman
Text
30
The name of the city where the address is
characters
located
Database
PEARSON ID:
Page | 96
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
SQL
SQL (Structured Query Language) is a domain-specific language used in programming and
designed for managing data held in a relational database management system (RDBMS). It
is used to query, insert, update, and delete data in the database. SQL is often used to query
and filter information from multiple related tables to produce a single result. It allows users
to access and manipulate data in a relational database, including creating new tables,
modifying existing tables, and deleting existing tables. It also provides commands to
manage the database structure, such as creating, altering, and dropping tables and columns.
Types of SQL servers
1. Microsoft SQL Server Express
2. Microsoft SQL Server Standard
3. Microsoft SQL Server Web
4. Microsoft SQL Server Enterprise
5. Microsoft SQL Server Workgroup
6. Microsoft SQL Server Compact
7. Microsoft SQL Server Developer
8. Microsoft SQL Server Express LocalDB
9. Microsoft Azure SQL Database Managed Instance
10. Microsoft Azure SQL Database Hyperscale
Advantages of SQL Server
1. Simplicity: SQL Server is easy to learn and use, and provides an intuitive graphical user
interface (GUI) for managing and querying databases. This makes it ideal for businesses of
all sizes.
2. Performance: SQL Server is optimized for performance, with features such as lockless
reads and parallel query execution that make it fast and reliable.
3. Security: SQL Server provides a comprehensive set of security features that help protect
data from unauthorized access and malicious attacks.
4. Scalability: SQL Server is designed to be easily scalable, allowing businesses to add
resources as needed to support their growing data needs.
5. Cost-effectiveness: SQL Server is cost-effective, making it a great choice for businesses
on a tight budget
L. Abibaraman
Database
PEARSON ID:
Page | 97
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
SQL query and date creation for out and input
Connect to SQL Server
Figure 62: Connect to SQL server
L. Abibaraman
Database
PEARSON ID:
Page | 98
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Create database and table
Figure 63: Create database and table
Create Client Table
Figure 64: Client table
L. Abibaraman
Database
PEARSON ID:
Page | 99
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Create Production table
Figure 65: Create Production table
Create Staff type Table
Figure 66: Create Staff type Table
L. Abibaraman
Database
PEARSON ID:
Page | 100
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Create Property table
Figure 67: create property table
Create Production Location table
Figure 68: Create Production Location table
L. Abibaraman
Database
PEARSON ID:
Page | 101
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Create Production staff Table
Figure 69: Create Production staff Table
Create staff property Table
Figure 70: Create staff property Table
L. Abibaraman
Database
PEARSON ID:
Page | 102
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Verify the data type
The data type in a database can be verified using the SQL SELECT statement to view the
schema of a table. This will show the data type associated with each column in the table.
For example, the following query will show the data type for each column in the 'users'
table:
SELECT column_name, data_type
FROM information_schema.columns
WHERE table_name = 'users';
Verify the code and verify the range
To verify the code, you would need to first check the syntax of the code and make sure that
it is correct. Then, you would need to test the code in a development environment to ensure
that the code is functioning correctly.
To verify the range in the database, you would need to check the range of values that are
stored in the database. This can be done by running a query and checking the values that
are returned. Additionally, you can use a tool such as a database visualizer to view the range
graphically.
Check format in data base
General, the format of data stored in a database depends on the type of database being used.
For example, a relational database typically stores data in tables made up of rows and
columns, while a MySQL database might store data as documents or key-value pairs. Some
databases also support data types such as text, numbers, dates, and binary data
Database security method
The most common base security methods used today include multi-factor authentication
(MFA), single sign-on (SSO), password managers, two-step verification, and encryption.
MFA requires users to provide two or more pieces of evidence when logging into a system,
such as a password and a security token. SSO enables users to log into multiple applications
with a single set of credentials. Password managers store and encrypt user passwords,
allowing users to create secure, unique passwords for each account they access. Two-step
verification adds an extra layer of security by requiring users to enter an additional code
when logging in. Finally, encryption scrambles data to make it unreadable to unauthorized
users.
L. Abibaraman
Database
PEARSON ID:
Page | 103
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Types of data base security
1. Authentication: Authentication is the process of verifying the identity of a user or a
system. It is a key component of database security and is typically implemented through
the use of passwords, biometric scans, or other forms of identification.
2. Authorization: Authorization is the process of granting access to resources based on an
individual’s identity. It is important because it ensures that only authorized users are able
to access the database.
3. Encryption: Encryption is the process of transforming data so that it appears random and
cannot be read by unauthorized users. This helps protect sensitive data from being accessed
by unauthorized individuals.
4. Access Control: Access control is the process of restricting access to a database based
on user privileges. This helps ensure that only authorized users can access the data.
5. Auditing: Auditing is the process of monitoring database activity and recording any
changes. This helps identify any unauthorized access or misuse of the system.
The boundary and the data itself should be protected
Both the boundary of the data and the data itself should be protected in the database. This
can be done by setting up security policies and access controls, encrypting the data, and
using additional security measures such as firewalls and anti-virus software. Additionally,
data should be regularly backed up in order to ensure that it is not lost in the event of a
security breach.
The useful for internal dangers in the database
Watch can be used to detect and alert administrators to internal dangers in the database,
such as unauthorized access attempts, malicious queries, unauthorized modifications and
data breaches. It can also help detect suspicious user activity by monitoring database
transactions, user logins, and queries for keywords and patterns. Watch can also be used to
detect potential data breaches by monitoring for unusual data access attempts and
suspicious query patterns. With its powerful analytics and alerting capabilities, Watch can
help organizations identify and address potential security risks in the database in a timely
manner.
L. Abibaraman
Database
PEARSON ID:
Page | 104
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Types of internal dangers in the database
1. Malicious code injection: An attacker can inject malicious code into the database,
allowing them to gain access to confidential information or corrupt data.
2. Data manipulation: An attacker can modify data stored in the database, or even delete it,
without the knowledge of the user.
3. Unauthorized access: An unauthorized user can gain access to the database and steal or
modify the data stored within it.
4. Denial of service attacks: An attacker can flood the database with requests, preventing
legitimate users from accessing it.
5. Structured Query Language (SQL) injection: An attacker can inject malicious SQL
commands into the database, allowing them to gain access to confidential information or
corrupt data.
6. Unpatched vulnerabilities: An outdated version of the database software can leave it
vulnerable to attack.
Cyber security
Cyber security for databases is the process of protecting database information from
unauthorized access, modification, or destruction. This is done by implementing a variety
of security controls such as authentication, access control, encryption, and auditing.
Authentication is the process of verifying the identity of a user or system accessing a
database. Access control is the process of restricting access to certain database objects or
data based on user permissions. Encryption is the process of encoding data to make it
unreadable to anyone but the intended recipient. Auditing is the process of monitoring and
logging database activities. By using these security controls, organizations can protect their
databases from potential threats such as malicious software, unauthorized access, data theft,
and data manipulation. Additionally, these controls help maintain the integrity of the data
within the database, ensuring its accuracy and reliability.
L. Abibaraman
Database
PEARSON ID:
Page | 105
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
There are several types of cyber security measures that can be implemented to protect
a database:
•
Access control: This refers to controlling who has access to the database and what
they can do with the data. This can be achieved through password policies, user
roles and permissions, and multi-factor authentication.
•
Encryption: Encryption involves transforming data into a coded form so that only
authorized parties can access it. Database encryption can be done at the file level or
at the column level, depending on the level of protection required.
•
Backup and recovery: Regular backups of the database can help prevent data loss
due to hardware failure, natural disasters, or cyber-attacks. Backup files should be
stored securely to prevent unauthorized access.
•
Network security: Network security measures such as firewalls, intrusion detection
and prevention systems, and virtual private networks (VPNs) can protect the
database from external threats.
•
Security patches and updates: Regularly updating the database software and
operating system with the latest security patches and updates can help protect
against known vulnerabilities.
•
Monitoring and logging: Monitoring the database for suspicious activity and
logging all activity can help identify and respond to potential security breaches.
Updating a program in a database involves making changes to the software that is
used to manage the data stored in the database. Here are some general steps that can
be followed to update a program in a database:
Identify the program that needs to be updated: Determine which program needs to
be updated and what changes need to be made to the program.
•
Plan the update: Create a plan for updating the program that includes a timeline for
the update, a backup strategy, and a rollback plan in case the update fails.
•
Backup the database: Before making any changes to the program, it is important to
create a backup of the database to ensure that data is not lost in case of an
unexpected issue.
L. Abibaraman
Database
PEARSON ID:
Page | 106
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
•
Update the program: Follow the steps provided by the software vendor to update
the program. This may involve downloading and installing an update, modifying
code, or updating configuration settings.
•
Test the update: Once the program has been updated, test it thoroughly to ensure
that it is working as expected.
•
Deploy the update: Once the update has been tested, deploy it to the production
environment.
•
Monitor the database: Monitor the database closely after the update has been
deployed to ensure that there are no issues or unexpected behavior.
•
Rollback if necessary: If issues arise after the update has been deployed, use the
rollback plan to revert to the previous version of the program and database backup.
Here are some general steps to follow when performing regular data backups in a
database:
Determine the backup strategy: Decide on the backup strategy that will be used for the
database, including the frequency of backups, the type of backups (full or incremental),
and where the backups will be stored.
Schedule the backups: Create a schedule for backups that takes into the account the size
of the database, the frequency of changes, and any business requirements for downtime.
Select the backup tool: Select a backup tool that is compatible with the database system
being used, and that provides the necessary features to support the backup strategy.
Perform the backup: Perform the backup according to the selected schedule, using the
selected backup tool. Ensure that the backup is stored in a secure location that is
separate from the production environment.
Test the backup: Test the backup regularly to ensure that it can be used to restore the
database in the event of a disaster.
Monitor the backup process: Monitor the backup process to ensure that backups are
being performed as scheduled, and that there are no issues with the backup process.
Review and refine the backup strategy: Regularly review and refine the backup strategy
as necessary, taking into account changes to the database system, business
requirements, and best practices for database backups.
L. Abibaraman
Database
PEARSON ID:
Page | 107
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
DML
Language flow in data manipulate system (DML)
In a data multiplexing system (DML) in a database, the language flow refers to the sequence
of actions that are taken to manipulate data within the system. This can include tasks such
as querying data, inserting or updating data, and deleting data. The language flow typically
starts with a user sending a query or request to the database system. The system then
processes the request and retrieves the relevant data from the database. The user can then
manipulate this data as needed, such as by updating it or deleting it. In order to perform
these tasks, the user typically needs to use a programming language that is supported by
the DML system. This language may be a specific language that is designed for the DML
system, or it may be a more general-purpose language such as SQL.As the user manipulates
data within the system, the language flow can become more complex. For example, the
user may need to perform multiple queries or requests in order to retrieve and manipulate
data from different parts of the database. Additionally, the user may need to use more
advanced programming techniques in order to perform tasks such as data analysis or
complex data transformations. Overall, the language flow in a data multiplexing system
can be complex and highly dependent on the specific needs of the user and the data being
manipulated. However, by using the appropriate programming language and following best
practices for data manipulation, users can achieve highly efficient and effective data
management within the system.
Types of Data Manipulation Language:
Data Manipulation Language (DML) is a programming language used to manage and
manipulate data within a database management system. There are several types of DML
languages, including:
•
SQL (Structured Query Language): SQL is the most commonly used DML
language and is used to manage relational databases. SQL commands include
SELECT, INSERT, UPDATE, DELETE, and others.
•
XQuery: XQuery is a DML language used to manipulate and query XML data. It
can be used to retrieve and transform XML data from various sources.
•
XPath: XPath is a DML language used to navigate and select data within an XML
document. It can be used to retrieve specific elements or attributes within an XML
document.
L. Abibaraman
Database
PEARSON ID:
Page | 108
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
•
JSONPath: JSONPath is a DML language used to select and manipulate data within
a JSON document. It can be used to retrieve and transform data from JSON
documents.
•
SPARQL: SPARQL is a DML language used to query and manipulate data within
a Semantic Web framework. It can be used to retrieve and manipulate data from
RDF (Resource Description Framework) documents.
•
RQL (Resource Query Language): RQL is a DML language used to query and
manipulate data within a RESTful web service framework. It can be used to retrieve
and manipulate data from RESTful web services.
Overall, the choice of DML language depends on the type of data being managed and
the specific requirements of the database management system.
•
INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);
(to insert new data into a table)
•
UPDATE table_name SET column_name = new_value WHERE some_column =
some_value; (to update existing data in a table)
•
DELETE FROM table_name WHERE some_column = some_value; (to delete data
from a table)
XQuery:
•
for $book in /bookstore/book where $book/price>30 return $book/title (to retrieve
the titles of all books in a bookstore with a price greater than 30)
•
insert node <new_element> into /root/parent_element (to insert a new element into
an XML document)
•
replace value of node /root/parent_element/child_element with 'new_value' (to
update the value of an element in an XML document)
These are just a few examples of commands and syntax from different types of DML, but
there are many more that can be used to manage and manipulate data in various ways.
L. Abibaraman
Database
PEARSON ID:
Page | 109
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
The primary use of Data Manipulation Language (DML) is to manage and manipulate
data within a database management system. DML allows users to perform various
operations on data such as querying, inserting, updating, and deleting data.
Some common use cases for DML include:
•
Querying data: DML allows users to retrieve data from one or more tables in a
database based on specific criteria. For example, users can use SQL to query a
database for all customers who have made a purchase in the last month.
•
Updating data: DML allows users to update existing data in a database. For
example, users can use SQL to update a customer's address or phone number in a
database.
•
Inserting data: DML allows users to insert new data into a database. For example,
users can use SQL to add a new product to a product catalog in a database.
•
Deleting data: DML allows users to remove data from a database. For example,
users can use SQL to delete a customer's account from a database.
•
DML is a critical component of database management systems, and it allows users
to interact with and manipulate data in a variety of ways. By using DML, users can
effectively manage and maintain the data within a database, which is essential for
making informed business decisions and improving organizational efficiency.
Select command
The SELECT command is a Data Manipulation Language (DML) command used
in relational database management systems to retrieve data from one or more tables.
It allows users to specify which columns they want to retrieve from the table(s) and
any filtering criteria that should be applied to the data.
Here are some examples of how the SELECT command can be used in a database:
Retrieve all columns from a table:
SELECT *
FROM employees;
Insert command
The INSERT command is a Data Manipulation Language (DML) command used
in a relational database management system to add new rows of data to a table. It
L. Abibaraman
Database
PEARSON ID:
Page | 110
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
allows users to insert data into a table by specifying the values for each column or
by inserting data from another table.
Here are some examples of how the INSERT command can be used in a database:
Insert data into a table with values:
INSERT INTO employees (first_name, last_name, department, hire_date, salary)
VALUES ('John', 'Doe', 'Sales', '2022-01-01', 50000);
Update command
The UPDATE command is a Data Manipulation Language (DML) command used in a
relational database management system to modify existing rows of data in a table. It allows
users to update one or more columns of existing data in a table.
Here are some examples of how the Update command can be used in a database:
Insert data into a table with values:
UPDATE table_name
SET column1 = value1, column2 = value2, ..., columnN = valueN
WHERE condition;
Delete command
The DELETE command can be used with various options such as deleting data using a sub
query and deleting data using a join operation. It is a powerful command that allows users
to remove unwanted data from a table in a relational database management system.
However, it is important to use the DELETE command with caution, as it can permanently
remove data from a table and cause data loss.
Here are some examples of how the delete command can be used in a database:
Insert data into a table with values:
DELETE FROM table_name
WHERE condition;
Evidence for DML
L. Abibaraman
Database
PEARSON ID:
Page | 111
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Command
Description
Evidence coding
ALTER
Modifies the structure of a table,
such as adding or deleting
columns or changing column
data types.
DROP
Deletes
a
table
from
the
database.
SELECT
Retrieves data from one or more
tables in the database. It can be
used to select specific columns
or all columns.
L. Abibaraman
Database
PEARSON ID:
Page | 112
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
INSERT
Adds new records (rows) to a
table.
UPDATE
Modifies existing records in a
table.
DELETE
L. Abibaraman
Deletes records from a table.
Database
PEARSON ID:
Page | 113
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
WHERE
Filters records based on a
specified
condition.
example,
For
"WHERE
customer_name = 'John Smith'"
would
only
return
records
where the customer name is
'John Smith'.
BETWEEN Filters records based on a range
of
values.
For
example,
"WHERE age BETWEEN 18
AND 35" would return all
records
where
the
age
is
between 18 and 35.
IN
Filters records based on a list of
specific values. For example,
"WHERE country IN ('USA',
'Canada',
'Mexico')"
would
return all records where the
country is either USA, Canada,
or Mexico.
L. Abibaraman
Database
PEARSON ID:
Page | 114
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
ORDER
Sorts the records in a specified
BY
order. For example, "ORDER
BY last_name ASC" would sort
the records by last name in
ascending order.
GROUP
Groups the records based on a
BY
specified column.
HAVING
Filters the grouped records
based on a specified condition.
L. Abibaraman
Database
PEARSON ID:
Page | 115
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Logical operations
In a database, logical operations are used to combine conditions to filter and retrieve data
from one or more database tables. The three most common logical operations in a database
are AND, OR, and NOT.
AND: The AND operator combines two or more conditions, and returns only those rows
that satisfy all the conditions. For example, if we want to retrieve all the employees who
work in the Sales department and have a salary greater than $50,000, we can use the
following SQL query:
SELECT * FROM employees WHERE department = 'Sales' AND salary > 50000;
OR: The OR operator combines two or more conditions, and returns any rows that satisfy
at least one of the conditions. For example, if we want to retrieve all the employees who
work in the Sales department or have a salary greater than $50,000
We can use the following SQL query:
SELECT * FROM employees WHERE department = 'Sales' OR salary > 50000;
NOT: The NOT operator negates a condition, and returns any rows that do not satisfy the
condition. For example, if we want to retrieve all the employees who do not work in the
Sales department, we can use the following SQL query:
SELECT * FROM employees WHERE NOT department = 'Sales';
Logical operations can also be combined with parentheses to create more complex
conditions.
For example, if we want to retrieve all the employees who work in the Sales department
and have a salary greater than $50,000 or who work in the Marketing department and have
a salary greater than $60,000
We can use the following SQL query:
SELECT * FROM employees WHERE (department = 'Sales' AND salary > 50000) OR
(department = 'Marketing' AND salary > 60000);
L. Abibaraman
Database
PEARSON ID:
Page | 116
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Task 03
Test case
A test case in a database is a set of conditions and/or data used to verify the functionality
and performance of a database application or system. Test cases are designed to ensure that
the database performs as expected, and to identify any defects or issues that may arise.
Test
Name
Test Data
Description
Expected Output
Connect
Hostname,
Verify if the database Successful
username,
can
connect message
password
successfully
to
Case
ID
TC001
connection
the
server
TC002
Create
Database name
Database
Verify if a new database New database is created
can
be
created and message "Database
successfully
created successfully" is
displayed
TC003
Use
Database name
Database
Verify if the selected Message
database can be used changed successfully" is
successfully
L. Abibaraman
Database
"Database
PEARSON ID:
displayed
Page | 117
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
TC004
TC005
Create
Table
name, Verify if a new table can New table is created and
Table
column names, be created successfully
message "Table created
data types
successfully" is displayed
User
Username,
Verify if the user can Successful login message
Login
password
login to the database is displayed
successfully
TC006
Wrong
Wrong
Verify if the user cannot Error message "Invalid
Password
Username,
login to the database username or password" is
wrong password with
an
incorrect displayed
username or password
TC007
Insert
Table
name, Verify if a new record New record is inserted and
column values
can
be
inserted message "Record inserted
successfully into a table
TC008
Update
Table
successfully" is displayed
name, Verify if a record can be Record is updated and
column values, updated successfully in message "Record updated
WHERE
a table
successfully" is displayed
condition
L. Abibaraman
Database
PEARSON ID:
Page | 118
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
TC009
Select
Table
name, Verify if data can be Data is retrieved and
column names
retrieved
successfully displayed in a table format
from a table
TC010
Drop
Table name
Table
Verify if a table can be Table is dropped and
dropped
successfully message "Table dropped
from the database
TC011
Drop
Database name
Database
successfully" is displayed
Verify if a database can Database is dropped and
be dropped successfully message
from the server
"Database
dropped successfully" is
displayed
TC012
Delete
Table name
Table
Verify if all records in a All records in the table are
table can be deleted deleted and message "All
successfully
records
deleted
successfully" is displayed
TC013
Delete
Table
name, Verify
if
specific Specified
Data
WHERE
records in a table can be deleted
condition
deleted successfully
"Records
records
and
are
message
deleted
successfully" is displayed
Table 9 Test Case
L. Abibaraman
Database
PEARSON ID:
Page | 119
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Test case 1
Test-Case
TC001
Name
Connect SQL data bases server
Purpose
Connect SQL data bases server to create
database
Test data
Hostname, username, password
Test condition
Verify if the database can connect successfully
to the server.
Expected output
Successful connection message
Actual out put
Successful connection message
Test status
pass
Table 10 Test-Case 01
L. Abibaraman
Database
PEARSON ID:
Page | 120
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Test-Case 2
Test-Case
TC02
Name
Create Database
Purpose
To create new database Quiet Attic Films
Test data
Create database
Test condition
Verify if a new database can be created
successfully
Expected output
New database is created and message "Database
created successfully" is displayed.
Actual out put
New database is created and message "Database
created successfully" is displayed.
Test status
pass
Table 11 Test-Case 2
L. Abibaraman
Database
PEARSON ID:
Page | 121
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Test-Case 3
Test-Case
TC003
Name
Use database
Purpose
Use database
Test data
Database name
Test condition
Verify if the selected database can be used
successfully
Expected output
New database is created and message "Database
created successfully" is displayed.
Actual out put
New database is created and message "Database
created successfully" is displayed.
Test status
pass
Table 12 Test-Case 3
L. Abibaraman
Database
PEARSON ID:
Page | 122
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Test-Case 4
Test-Case
TC004
Name
Create table
Purpose
Create table use database Quiet Attic Films
Test data
Table name, column names, data types
Client details
(Cid, Name, Address, Phone no, Email)
Test condition
Verify if a new table can be created
successfully
Expected output
New table is created and message "Table
created successfully" is displayed
Actual out put
New table is created and message "Table
created successfully" is displayed
Test status
pass
Table 13 Test-Case 4
L. Abibaraman
Database
PEARSON ID:
Page | 123
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Test-Case 5
Test-Case
TC005
Name
User login
Purpose
User login to manage the system quiet attic
films
Test data
Username-User
Password-123
Test condition
Verify if the user can login to the database
successfully.
Expected output
Successful login message is displayed.
Actual out put
Successful login message is displayed.
Test status
pass
Evidense
Table 14 Test-Case 5
L. Abibaraman
Database
PEARSON ID:
Page | 124
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Test-Case 6
Test-Case
TC006
Name
Wrong login
Purpose
User login to manage
Test data
Username-User1234
Password-0002
Test condition
Verify if the user cannot login to the database
with an incorrect password
Expected output
Error message "Invalid password" is displayed
Actual out put
Error message "Invalid password" is displayed
Test status
pass
Evidence
Table 15 Test-Case 6
L. Abibaraman
Database
PEARSON ID:
Page | 125
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Test-Case 7
Test-Case
TC007
Name
Insert
Purpose
To insert new value into table
Test data
Table name, column values Client(1, Abi,
Colombo, 0772456356, abi@gmail.com)
Test condition
Verify if a new record can be inserted
successfully into a table
Expected output
New record is inserted and message "Record
inserted successfully" is displayed.
Actual out put
New record is inserted and message "Record
inserted successfully" is displayed.
Test status
pass
Evidence
Table 16 Test-Case 7
L. Abibaraman
Database
PEARSON ID:
Page | 126
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Test-Case 8
Test-Case
TC008
Name
Update the value in table
Purpose
To update the value in table
Test data
Table name, column values, WHERE condition
Client set Address = 'Colombo, Phone No
=0758585903 where CID = '1';
Test condition
Verify if a record can be updated successfully
in a table
Expected output
Record is updated and message "Record
updated successfully" is displayed
Actual out put
Record is updated and message "Record
updated successfully" is displayed
Test status
pass
Evidence
Table 17 Test-Case 8
L. Abibaraman
Database
PEARSON ID:
Page | 127
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Test-Case 9
Test-Case
TC009
Name
Select
Purpose
To select the value in table
Test data
Table name, column names Client table
Cid, Name, Address, Phone no, Email
Test condition
Verify if data can be retrieved successfully from
a table
Expected output
Data is retrieved and displayed in a table format
Actual out put
Data is retrieved and displayed in a table format
Test status
pass
Evidence
Table 18Test-Case 9
L. Abibaraman
Database
PEARSON ID:
Page | 128
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Test-Case 10
Test-Case
TC010
Name
Drop
Purpose
To Drop the value in table
Test data
Table name
Test condition
Verify if a table can be dropped successfully
from the database
Expected output
Table is dropped and message "Table dropped
successfully" is displayed
Actual out put
Table is dropped and message "Table dropped
successfully" is displayed
Test status
pass
Table 19 Test-Case 10
L. Abibaraman
Database
PEARSON ID:
Page | 129
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Test-Case 11
Test-Case
TC011
Name
Drop
Purpose
Drop the database
Test data
Database name
Test condition
Verify
if
a
database
can
be
dropped
successfully from the server
Expected output
Database is dropped and message "Database
dropped successfully" is displayed.
Actual out put
Database is dropped and message "Database
dropped successfully" is displayed.
Test status
pass
Table 20 Test-Case 11
L. Abibaraman
Database
PEARSON ID:
Page | 130
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Test-Case 12
Test-Case
TC012
Name
Delete
Purpose
Delete the table
Test data
Database name
Test condition
Verify if all records in a table can be deleted
successfully
Expected output
All records in the table are deleted and message
"All records deleted successfully" is displayed
Actual out put
All records in the table are deleted and message
"All records deleted successfully" is displayed
Test status
pass
Table 21 Test-Case 12
L. Abibaraman
Database
PEARSON ID:
Page | 131
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Teat-Case 13
Test-Case
TC013
Name
Delete
Purpose
Delete value from table
Test data
Table name, WHERE condition
Test condition
Verify if specific records in a table can be
deleted successfully
Expected output
Specified records are deleted and message
"Records deleted successfully" is displayed
Actual out put
Specified records are deleted and message
"Records deleted successfully" is displayed
Test status
pass
Table 22 Teat-Case 13
L. Abibaraman
Database
PEARSON ID:
Page | 132
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Effectiveness of the test data selected for the testing
The effectiveness of the test data selected for testing is an important factor to consider when
attempting to measure the success of a software application or system. This is because the
quality of the test data can directly affect the accuracy of the results obtained when testing
the system.
In order to effectively test a system, it is important to select test data that is representative
of the data that will be used in actual operation. This means that the test data should
accurately reflect the input and output data that will be used in the actual system, while also
reflecting the expected behavior of the system. For example, if the system is expected to be
used with a variety of different data types, then the test data should include data from each
of these types to ensure that the system is correctly handling each type.
When selecting test data, it is also important to consider the size of the data set. For
example, if the system is expected to process large amounts of data, then the test data should
also be of a large size to ensure that it is properly reflecting the system’s ability to handle
large amounts of data. On the other hand, if the system is expected to process small amounts
of data, then the test data should also be of a small size to ensure that it is.
If the test data is chosen carefully, it can help to uncover any potential issues that may arise
in the database. The test data should be carefully selected to ensure that it adequately covers
all the scenarios and functions which the database is expected to provide. Additionally, it
should be tested for accuracy and consistency. Finally, the test data should also be
monitored for changes that may have an impact on the database's performance. The test
data should cover all the critical functionalities and features of the database system. It
should include both positive and negative test scenarios to ensure that the system behaves
as expected in all situations. The test data should be accurate, complete, and consistent. It
should be free from errors, duplicates, and irrelevant information that can impact the testing
process. The test data should be relevant to the business requirements and objectives of the
database system. It should reflect the real-world scenarios and use cases to ensure that the
system can perform effectively in the production environment.
The test data should be diverse, covering a wide range of data types, formats, and structures.
This will ensure that the system can handle different types of data and perform effectively
in various situations. The test data should be scalable, allowing the testing process to be
extended to larger datasets as needed. This will ensure that the system can perform
L. Abibaraman
Database
PEARSON ID:
Page | 133
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
effectively and efficiently as the data volume grows. By selecting high-quality test data that
covers all critical functionalities, reflects real-world scenarios, and is diverse and scalable,
organizations can ensure that their database system is reliable, secure, and performs
effectively in the production environment.
L. Abibaraman
Database
PEARSON ID:
Page | 134
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Feedback form.
Feedback forms are an essential part of any business, organization, or institution. They
allow companies and organizations to collect valuable customer feedback and use it to
improve their products, services, and overall customer experience. Feedback forms are an
important tool for obtaining customer opinions, suggestions, and complaints. They are
typically used by businesses and organizations to measure customer satisfaction, identify
areas of improvement, and provide customers with an opportunity to voice their opinions
and concerns.
Figure 71: Feedback form 1
L. Abibaraman
Database
PEARSON ID:
Page | 135
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 73: feedback form 2
Figure 72: Feedback form 3
L. Abibaraman
Database
PEARSON ID:
Page | 136
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Feedbacks from the users.
Figure 75: Feedback 1
The most major reply I got from the audience is satisfied with my system. It clearly with
over all of 68.8%. So it with 31.3 with neutral. Totally 16 responses.
Figure 74: Feedback 2
The overall audience go with good result in my system. It is followed by 68% with the
major of good result.
L. Abibaraman
Database
PEARSON ID:
Page | 137
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 77: Feedback 3
The major role is to keep the system safe and clear. Most of the audience with no. It was
real pulled me up. I need future implementation to work it off.
Figure 76: Feedback 4
The audience majorly with yes. Definitely I need to do more safely for my system.
L. Abibaraman
Database
PEARSON ID:
Page | 138
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 78: Feedback 5
The updates are more important to our system. The following poll was no need. So I
planned to implied the system update in every month.
Figure 79: Feedback 6
L. Abibaraman
Database
PEARSON ID:
Page | 139
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 80: Feedback 7
L. Abibaraman
Database
PEARSON ID:
Page | 140
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
User Recommendations of feedback form used to improve this system
The purpose of this feedback form is to provide recommendations to improve the current
data base system of Quiet Attic Films. It is important to have a well-defined data base
system in order to ensure that information is accurate and up-to-date. This document will
provide an overview of the current system, followed by recommendations to improve the
system. The current data base system definition focuses on the structure and components
of the system. It is designed to provide a comprehensive overview of the system and its
components. The system definition also outlines the roles and responsibilities of each
component in the system. It also outlines the data architecture, security measures, and user
access levels. The system definition also provides information on the potential uses of the
system and its capabilities. It outlines the various functions and capabilities of the system,
including data storage, analysis, and reporting. It also outlines the requirements for data
entry and retrieval. Finally, the system definition outlines the user interface and user
experience. There are several recommendations that can be made to improve the current
data base system definition. First, the system definition should include a detailed
description of the system architecture.
To encourage audience response, it is also important to ensure that the feedback questions
are clear, relevant, and meaningful to the user. This may involve using simple language,
providing context for the questions, and avoiding technical jargon or overly complex
questions. Additionally, it may involve providing multiple response options, such as Liker
scales or open-ended comments, to allow users to provide feedback in a way that is
comfortable and meaningful to them.
The totally feedback I received from the audience was positively with my system and
security. But in the other I was definitely to overcome with my system negative side too.
My major was too implement the system well as in the future. The feedback really helped
to change my system in future case. By collecting feedback from users, organizations can
identify areas for improvement, address issues or concerns, and enhance the overall user
experience. To ensure the effectiveness of a feedback form, it is important to design the
form in a way that is user-friendly, clear, and relevant to the user. Additionally,
organizations should consider offering incentives or rewards to encourage user response,
and should implement strong security measures to protect user data and privacy. Finally, it
is important to review and analyze feedback regularly to identify patterns and areas for
improvement, and to take action on the feedback received to continuously enhance the
L. Abibaraman
Database
PEARSON ID:
Page | 141
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
database system. By incorporating feedback into product development and improvement,
organizations can better meet the needs and preferences of their users and ultimately
improve the success and adoption of their database system.
L. Abibaraman
Database
PEARSON ID:
Page | 142
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Activity 04
User documentation
User documentation provides a way for users to quickly and easily learn how to use a
product. It is often written in a user-friendly style, with step-by-step instructions and visuals
to help illustrate key concepts. User documentation can be used to explain the product’s
features, how to install and configure the product, and how to troubleshoot any problems
that may arise. User documentation should always include contact information for customer
service and technical support, as well as a list of frequently asked questions and answers.
Creating user documentation is an important part of the product development process. It
should be written in a clear and concise manner, with an emphasis on usability. It should
also be updated regularly as the product evolves to ensure that users have the most accurate
and up-to-date information. Before writing user documentation, it is important to consider
who the target audience is and what they need to know. This will help the author determine
the content to include in the documentation and how to present it in an effective way. It is
also important to consider the format of the user documentation, as different types of
documents may be better suited for different types of products or services.
Types of user documentation
1. User Manuals: A user manual is a comprehensive guide that describes how to use a
database system. It includes detailed instructions on how to access the system, how to enter
and manipulate data, and how to query the system for information.
2. Tutorials: Tutorials provide step-by-step instructions to help users learn how to use a
database system. They typically include examples and screenshots to help users become
familiar with the system’s features and functions.
3. Reference Materials: Reference materials are designed to help users quickly look up
information about a database system’s features and functions. They often include a glossary
of terms, a list of commands, and other technical information.
4. Troubleshooting Guides: Troubleshooting guides provide detailed instructions on how
to solve common problems that users may experience when working with a database
system.
5. Online Resources: Online resources such as forums, FAQs, and knowledge bases
provide users with a place to ask questions and get advice from other users.
L. Abibaraman
Database
PEARSON ID:
Page | 143
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
The great user documentation
1. Introduction: A brief overview of the database, its purpose and how it is organized
2. Configuration: Instructions for configuring the database, such as setting up user accounts
and roles, as well as any security measures that need to be taken
3. Data Entry: Instructions for entering data into the database, including data formats,
validation rules and any other considerations
4. Data Retrieval: Instructions for querying the database and retrieving data
5. Database Administration: Instructions for managing the database, including backup and
recovery, performance tuning, and other maintenance tasks
6. Troubleshooting: A guide to common problems and their solutions
7. Glossary: Explanations of database and technical terms used in the documentation
8. References: Links to other resources related to the database, such as tutorials and FAQs
Technical documentation
Technical documentation is a type of document that provides information about a product,
service, or system to help users understand and use it. It is written in a reader-friendly
format and typically includes instructions, diagrams, and other information. Technical
documentation may also include safety instructions and troubleshooting tips. Technical
documentation is often required for software, hardware, and other products, and is used by
engineers, IT professionals, and end users. The purpose of technical documentation is to
provide an accurate, comprehensive, and up-to-date description of a product’s features and
capabilities. It should be written in plain language, avoiding jargon and acronyms, and
should cover all the necessary topics in detail. Technical documentation should be
organized in a logical manner, making it easy to find the information you need. When
writing technical documentation, it is important to consider the audience. Different types
of users have varying levels of technical knowledge and experience, so the document
should be tailored to their needs. Technical writers must be able to explain complex
concepts in an easy-to-understand way, as well as provide detailed instructions.
L. Abibaraman
Database
PEARSON ID:
Page | 144
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Technical documentation Above Scenario
Figure 81 Technical Document
•
For Server type, select Database Engine
•
For
Server
name,
enter
the
name
of
your
SQL
DESKTOP-
H57HACN\MSSQLSERVER.
•
I used SQL Server Authentication to connect. However, if you select SQL Server
Authentication, a username and password are required.
•
The user ID from the server account used to log in to the server. A login is required
when using SQL Server Authentication.
•
The password from the server account used to log in the server. A password is
required when using SQL Server Authentication.
•
L. Abibaraman
After you've completed all the fields, select Connect.
Database
PEARSON ID:
Page | 145
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 82 Technical documentation
To verify that your SQL Server connection succeeded, expand and explore the objects
within Object Explorer where the server name, the SQL Server version, and the username
are displayed. These objects are different depending on the server type.
L. Abibaraman
Database
PEARSON ID:
Page | 146
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 83 technical documentation
A property table is a database table used to store properties for each entry in another table.
For example, a product table may contain a column for product name, category, and price.
The property table would store additional attributes for each product, such as color, size,
material, and weight. This allows for more flexibility and extensibility when it comes to
adding additional attributes to the product table. The property table would typically contain
two columns, one for the main table's entry ID and one for the property. The property table
would then contain a record for each additional attribute associated with a particular entry.
L. Abibaraman
Database
PEARSON ID:
Page | 147
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 84 technical documentation
Creating a production table in SQL Server is the process of creating a table of data that is
used in production or for financial purposes. The process typically involves creating the
table in SQL Server, defining the columns and data types, modifying the table structure,
setting up data constraints and establishing table relationships. Once the table is created, it
can be used to store and manipulate data. Depending on the size and complexity of the
production table, additional steps may be needed to optimize performance. Additionally,
security and user access rights can be configured to ensure only authorized personnel can
access the data.
L. Abibaraman
Database
PEARSON ID:
Page | 148
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 85 technical documentation
Creating a production table in SQL Server is the process of creating a table of data that is
used in production or for financial purposes. The process typically involves creating the
table in SQL Server, defining the columns and data types, modifying the table structure,
setting up data constraints and establishing table relationships. Once the table is created, it
can be used to store and manipulate data. Depending on the size and complexity of the
production table, additional steps may be needed to optimize performance. Additionally,
security and user access rights can be configured to ensure only authorized personnel can
access the data
L. Abibaraman
Database
PEARSON ID:
Page | 149
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 86 technical documentation
A production location type table is a database table used to store information about the type
of location that a production process takes place. This could include things such as the type
of factory, the size and layout of the factory, the type of equipment used, the type of
materials used, and any other relevant information that may be necessary for the production
process. The table might also contain information about the production process itself, such
as the number of steps involved, the time frames for each step, the types of inspections that
need to be done, and any other relevant information. This information can be used to help
optimize the production process and make it more efficient.
L. Abibaraman
Database
PEARSON ID:
Page | 150
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 87technical documentation
A staff property type table is a database table used to track employee information. This
includes the employee's name, job title, salary, and other related data. This table can also
include details about the employee's workplace, such as the office location, department,
and job description. This table is often used to store important employee records that can
be used for payroll and other legal purposes.
L. Abibaraman
Database
PEARSON ID:
Page | 151
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 88 technical documentation
A client type table is a special type of table that contains data that is specific to a particular
client or user. This type of table is typically used to store data that is associated with a
particular user or client, such as preferences or account information. This type of table is
different from a regular table in that it has a different set of columns for each user or client.
This allows for each user or client to have their own set of data stored in the same table.
Client type tables can also be used to store data that is shared across multiple users or
clients, such as common settings or product information.
L. Abibaraman
Database
PEARSON ID:
Page | 152
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 89 technical documentation
A production table in a SQL Server database is a type of table that stores data that is
intended to be used in the production environment. This data can be used to support the
operations of a business by providing information needed to make decisions, create reports,
or analyze trends. Production tables are typically used to store live data such as customer
information, orders, inventory, and financial information. They are also used to store
historical data such as sales data, customer profiles, and product reviews.
L. Abibaraman
Database
PEARSON ID:
Page | 153
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
User documentation for Above Scenario
The next button is an interactive element in a graphical user interface that allows a user to
move forward to the next step in a process.
User name and password are used to authenticate and identify a user when they log into a
system. A user name is typically a unique identifier for a user, such as a name or a
combination of letters and numbers. A password is a secret code that is used in combination
with the user name to verify that the user is who they claim to be. The password is usually
kept confidential and should be changed regularly to ensure the security of the user's
information.
L. Abibaraman
Database
PEARSON ID:
Page | 154
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 90 sign in
•
User first name: This is the first name of the user. It is used to identify the user.
•
User last name: This is the last name of the user. It is also used to identify the user.
•
Date of birth: This is used to identify the age of the user.
A
B
Figure 91client id
•
Contact number: This is used to contact the user. It can be used for communication
or verification purposes.
•
The user Client id is a unique identifier for a user account.
•
It is used to identify the user in the system when making requests or using other
services. The name is the name of the user account.
•
The address is the physical address of the user.
•
The contact number is the phone number associated with the user account.
•
Lastly, the email is the email address associated with the user account.
All these pieces of information are used to identify and authenticate a user in the system.
L. Abibaraman
Database
PEARSON ID:
Page | 155
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Type B:
User Insert:
The user can insert new information into the database. This could be data such as a new
record, a new row, or a new column.
User Delete:
The user can delete existing information from the database. This could be data such as a
record, a row, or a column.
User Update:
The user can update existing information in the database. This includes changes to the data
such as editing an existing record, updating a row, or changing a column.
User Preview:
The user can preview existing information in the database. This could include data such as
a record, a row, or a column.
User View:
The user can view existing information in the database. This could include data such as a
record, a row, or a column.
Figure 92 dashboard
•
User: A user is someone who interacts with a system or technology. This includes
customers, employees, and other stakeholders who use the system or technology to
perform certain tasks.
•
Client: A client is a person or organization that pays someone else to provide goods
or services. Clients are typically organizations, such as businesses, nonprofits, or
government agencies.
L. Abibaraman
Database
PEARSON ID:
Page | 156
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
•
Production: Production is the process of creating goods or services from raw
materials or components. It involves a variety of activities, such as purchasing,
manufacturing, packaging, and shipping.
•
Staff: Staff are the people who work for an organization. They are usually hired to
carry out specific tasks or roles, such as providing customer service or managing a
team.
•
Properties: Properties are characteristics of an object or system. These can include
physical attributes, such as size, shape, color, or weight. They can also include nonphysical attributes, such as identity, function, or capability.
•
Location: Location is the place where something is situated. It can refer to a physical
space, such as a city or country, or a virtual location, such as an online platform or
website.
Figure 93 production ID
•
User: The user is the individual or organization that is using the product.
•
Production ID: The Production ID is a unique identifier assigned to each product.
•
Address Cost: The address cost is the cost associated with shipping the product to
the user.
•
Date of Release: The date of release is the date that the product was made available
for purchase or use.
•
L. Abibaraman
Type: The type of the product indicates what it is used for and how it is used.
Database
PEARSON ID:
Page | 157
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Figure 94properties ID
•
User Name: The user name refers to the name of the person who is using the system
or software.
•
Property ID: This is the unique identifier assigned to a particular piece of property
owned by the user.
•
Type: This refers to the type of property it is: land, house, car, etc.
•
Cost: This is the amount of money that the user pays for the property.
Figure 95staff ID
L. Abibaraman
Database
PEARSON ID:
Page | 158
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
•
Staff ID: A unique identifier for the user, typically assigned by the employer.
•
Address: The user's current address.
•
Salary: The user's pre-production salary, before any bonuses or overtime.
•
Name: The user's full name.
•
Type: The type of user, typically either an employee or contractor.
•
Contact No: The user's contact number.
•
Explanation: Any additional information that may be necessary to explain the user's
situation.
Figure 96 location ID
•
Postal Code: This is a code used to identify the exact location of an address, usually
a combination of letters and numbers. It is used to facilitate the sorting and delivery
of mail.
•
City: This is the name of the city in which an address is located.
•
Street: This is the name of the street, road, avenue, etc., that an address is located
on.
L. Abibaraman
Database
PEARSON ID:
Page | 159
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Types of Technical documentation
1. User Manuals
2. System Documentation
3. Installation Guides
4. API Documentation
5. Design Documents
6. Release Notes
7. Configuration Guides
8. Troubleshooting Guides
9. White Papers
10. Knowledge Base Articles
Class diagram
Class diagrams in database modeling are visual representations of database structures,
depicting the entities and relationships within a given database. Class diagrams are used to
model the structure of a database and are typically created as part of the database design
process. How we can help to visualize and document the structure of a database. They can
also be used to show the relationships between different database objects, such as tables,
views, and stored procedures. The diagram can provide a visual representation of the
physical database structure, as well as the logical relationships between different database
objects. Class diagrams are created using common database modeling notation, such as
UML or ERD. UML diagrams are commonly used for database design, as they are easier
to read and understand than ER diagrams. UML diagrams can also be used to represent
complex relationships between object Class diagrams can be used to model the structure of
a database and provide a visual representation of the physical database structure. Class
diagrams can be used to visualize the database structure and its relationships to other
entities in the database. They can also be used to document the structure of a database and
the relationships between database objects. Class diagrams are an essential tool for database
modeling and database design. They help to provide a visual representation of the database
structure.
L. Abibaraman
Database
PEARSON ID:
Page | 160
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Use case diagram
A use case diagram is a visual representation of a set of use cases that can be used to model
the functional requirements of a system. Use case diagrams are commonly used in software
engineering to model the functional requirements of a system. Use case diagrams are
composed of actors, which represent the roles or people that interact with the system, and
use cases, which represent the activities that the actors perform.
• System Administrator: Responsible for managing the system and its components
• Database Developer: Responsible for developing the database structure and objects
• Database User: Responsible for querying the database and performing data entry
• Data Analyst: Responsible for analyzing data stored in the database
The use cases associated with the Database System would include the following:
• Create Database: This use case represents the process of creating a new database. It
involves specifying the database structure, creating tables, and defining relationships
between tables.
• Query Database: This use case represents the process of querying the database. It involves
specifying a query and executing it against the database.
.• Enter Data: This use case represents the process of entering data into the database.
This report will provide an overview of UML Use Case Diagrams and their importance in
the data base management system. It will discuss the components of a UML Use Case
Diagram, the different types of diagrams available, and how to go about creating and using
one. The report will also look at some of the advantages and disadvantages of using a UML
Use Case Diagram. Finally, the report will provide a case study of a UML Use Case
Diagram in a database management system.
L. Abibaraman
Database
PEARSON ID:
Page | 161
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Data flow diagram
A data flow diagram (DFD) is a graphical representation of how data flows through a
system or organization. It is used to describe the flow of information within a system,
focusing on the inputs, processes, and outputs. DFDs use symbols and lines to represent
the various components of a system and their interactions.
The main components of a DFD include:
•
External entities: These are the sources and destinations of data. They represent the
outside world or other systems that interact with the system being modeled.
•
Processes: These are the activities that transform data within the system. Processes
can be simple or complex, and they may involve multiple inputs and outputs.
•
Data stores: These are the repositories for data within the system. Data stores can
represent physical storage, such as a database, or they can represent logical storage,
such as a data warehouse.
•
Data flows: These are the paths that data takes as it moves through the system. Data
flows are represented by arrows on the diagram.
DFDs can be used to document existing systems or to design new ones. They are useful for
identifying data redundancy, improving data flow, and identifying areas for optimization.
DFDs can be used in conjunction with other modeling techniques, such as use case
diagrams and activity diagrams, to provide a comprehensive view of a system.
Types of data flow diagram
There are four main types of data flow diagrams (DFDs):
•
Context Diagram: The context diagram is the highest level of DFD, and it provides
an overall view of the system. It shows the system as a single process and the
external entities that interact with the system.
•
Level 0 DFD: The level 0 DFD is the next level of detail, and it breaks down the
system into its main processes and data flows. It shows the inputs and outputs of
each process, as well as any data stores that are used.
•
Level 1 DFD: The level 1 DFD is a further breakdown of the system, and it shows
the detailed processes within each of the main processes shown in the level 0
diagram. It also shows the data flows between the processes and any data stores that
are used.
L. Abibaraman
Database
PEARSON ID:
Page | 162
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
•
Level 2 (and higher) DFDs: Level 2 DFDs (and higher) provide even more detail
than the level 1 diagram, and they break down the processes into their subprocesses. They show the inputs and outputs of each sub-process and the data flows
between them.
The flowchart
Flowcharts are commonly used in database design to illustrate the flow of data within
the system. A typical flowchart for database design includes the following
components:
Start/End: The start and end points of the flowchart, which represent the beginning and
end of the process being modeled.
Input/Output: The input and output points of the flowchart, which represent the data being
entered into the system and the data being generated by the system.
Processing: The processing steps in the flowchart, which represent the operations
performed on the data.
Decision Points: Decision points in the flowchart, which represent branching in the process
based on certain conditions.
Connector: Connectors in the flowchart, which represent the flow of data between
different parts of the process.
A flowchart for database design may include the following steps:
Requirements gathering: Collecting information about the data requirements of the
system and the relationships between the different data elements.
Entity-relationship (ER) diagramming: Creating an ER diagram to represent the data
entities, their attributes, and the relationships between them.
Normalization: Normalizing the data to reduce redundancy and improve data integrity.
Database schema design: Designing the database schema based on the normalized data.
Data modeling: Modeling the data flow through the system, including the input,
processing, and output steps.
L. Abibaraman
Database
PEARSON ID:
Page | 163
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Testing and implementation: Testing the database design and implementing it in the
system.
Overall, flowcharts are an effective tool for representing the flow of data in a database
system and can help identify areas for optimization and improvement.
Intro for flow chart
A flowchart is a visual representation of a process or workflow that uses symbols, shapes,
and arrows to illustrate the sequence of steps involved. It is a useful tool for organizing and
presenting information, identifying potential problems and bottlenecks, and improving the
efficiency of a process. A flowchart can be used in a wide variety of fields, including
business, engineering, healthcare, and education, among others. In this context, a flowchart
serves as a roadmap that helps to streamline complex processes, making them more
accessible and understandable for everyone involved. This can lead to better decisionmaking, improved communication, and more efficient workflows.
Symbols of flow chart
Figure 97: Symbols of flow chart
L. Abibaraman
Database
PEARSON ID:
Page | 164
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Flow chart for the operation in the system
Data flow diagram for scenario
Figure 98 Data Flow Chart
L. Abibaraman
Database
PEARSON ID:
Page | 165
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Login
Figure 99: Login
L. Abibaraman
Database
PEARSON ID:
Page | 166
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Insert
Figure 100: Insert
L. Abibaraman
Database
PEARSON ID:
Page | 167
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Delete
Figure 101: Delete
Explain in details how it works
A flowchart is a visual representation of a process or workflow that uses symbols, shapes,
and arrows to illustrate the sequence of steps involved. It is a useful tool for organizing and
presenting information, identifying potential problems and bottlenecks, and improving the
efficiency of a process. A flowchart can be used in a wide variety of fields, including
business, engineering, healthcare, and education, among others. In this context, a flowchart
serves as a roadmap that helps to streamline complex processes, making them more
accessible and understandable for everyone involved. This can lead to better decisionmaking, improved communication, and more efficient workflows.
L. Abibaraman
Database
PEARSON ID:
Page | 168
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Future improvement for the system
To identify future improvements for a system in Quiet Attic Film. It is important to
consider the system's current limitations and potential areas for enhancement. Here are
some suggestions for improving a system .Enhance functionality the Consider adding new
features or improving existing ones to make the system more useful to users. Improve
performance Identify areas of the system that are slow or inefficient and optimize them to
improve performance .Improve security Review the system's security protocols and
consider implementing additional security measures to protect sensitive data. Enhance
usability: Improve the user interface and user experience to make the system more userfriendly and intuitive. Enhance scalability Review the system's scalability and identify
ways to improve its ability to handle increased usage or larger datasets. Improve data
analysis: Consider adding new data analysis tools or improving existing ones to enable
users to gain deeper insights from the system's data. Implement automation: Identify
processes that can be automated and consider implementing automation tools to reduce
manual effort and increase efficiency Improve integration: Review the system's integration
with other systems and consider ways to improve data sharing and interoperability.
Enhance mobile capabilities: Consider optimizing the system for mobile devices to enable
users to access the system from anywhere. Improve accessibility Consider ways to improve
the system's accessibility for users with disabilities. These are just some examples of
potential future improvements for a system. It is important to evaluate the specific needs
and limitations of the system and its users to identify the most relevant and impactful
improvements to implement. Identifying future improvements for a system is an ongoing
process that requires careful evaluation of the system's current state and potential areas for
enhancement. By considering factors such as functionality, performance, security,
usability, scalability, data analysis, automation, integration, mobile capabilities, and
accessibility, system stakeholders can identify and prioritize improvements that will have
the most impact on the system's users and overall effectiveness.
L. Abibaraman
Database
PEARSON ID:
Page | 169
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Gann chart
Figure 102: Gann chart
References
Anon.,
2011-2021.
javatpoint.
[Online]
Available at: https://www.javatpoint.com/connection-oriented-vs-connectionless-service
Anon.,
2011-2021.
Javatpoint.
[Online]
ectuff4u.
[Online]
Available at: https://www.javatpoint.com/extranet
Anon.,
Available
2017-2018.
at:
https://www.ecstuff4u.com/2018/05/advantages-and-disadvantages-of-
wide.html
L. Abibaraman
Database
PEARSON ID:
Page | 170
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Anon.,
2020.
computer
network
topology.com.
[Online]
Available at: http://computernetworktopology.com/metropolitan-area-network/
Anon.,
2021.
Geeks
for
geeks.
[Online]
Available at: https://www.geeksforgeeks.org/data-communication-definition-componentstypes-channels/
Anon.,
2021.
happeo.
[Online]
Available at: https://www.happeo.com/what-is-intranet
Anon.,
2022.
Architecture
of
cloud
computing.
[Online]
Available at: https://www.geeksforgeeks.org/architecture-of-cloud-computing/?ref=gcse
Anon.,
2022.
Available
at:
Cource
hero.
[Online]
https://www.coursehero.com/file/56879271/Basics-of-Wi-Fi-
GeeksforGeekspdf/
Anon.,
2022.
EDUCBA.
[Online]
Available at: https://www.educba.com/types-of-network-topology/
Anon.,
2022.
educba.com.
[Online]
Available at: https://www.educba.com/types-of-vlan/
Anon.,
2022.
forcepoint.
[Online]
Available at: https://www.forcepoint.com/cyber-edu/osi-model
Anon.,
2022.
guru99.com.
[Online]
Available at: https://www.guru99.com/vlan-definition-types-advantages.html
Anon.,
2022.
guru99.com.
[Online]
Available at: https://www.guru99.com/types-of-computer-network.html
Anon.,
2022.
securitygladiators.
[Online]
Available at: https://securitygladiators.com/vpn/advantages-disadvantages/
Anon., 2022. tutorialspoint. [Online].
Anon.,
Available
n.d.
at:
ecomputer
notes.
[Online]
https://ecomputernotes.com/computernetworkingnotes/communication-
networks/what-is-data-communication
L. Abibaraman
Database
PEARSON ID:
Page | 171
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING
Anon.,
n.d.
types
of
transmission
media.
[Online]
Available at: https://www.geeksforgeeks.org/types-transmission-media/
Anon.,
n.d.
youtube.com.
[Online]
ink
[Online]
Available at: https://youtu.be/lKuJUnzbxJY
ink
springer,
Available
at:
2009.
springer.
https://link.springer.com/referenceworkentry/10.1007/978-0-387-39940-
9_337#:~:text=The%20semi%2Dstructured%20data%20model,occurrences%20of%20the
%20same%20attribute.
[Accessed 2022].
Vaibhav
Available
Gulati,
at:
2021.
scaler.
[Online]
https://www.scaler.com/topics/dbms/relational-model-in-dbms/
[Accessed 2022].
L. Abibaraman
Database
PEARSON ID:
Page | 172
0
You can add this document to your study collection(s)
Sign in Available only to authorized usersYou can add this document to your saved list
Sign in Available only to authorized users(For complaints, use another form )