E204050-1705397223627-347555-Database Design and Development - 190001
E204050-1705397223627-347555-Database Design and Development - 190001
2
Page
LO2 Develop a fully functional relational database system, based on an existing system
design
Pass, Merit & P2 P3 M2 M3 D2
Distinction Descripts
* 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
3
Page
assessment board.
Action Plan
Summative feedback
5
Page
1. A Cover page or title page – You should always attach a title page to your assignment.
Use previous page as your cover sheet and make sure all the details are accurately
filled.
2. Attach this brief as the first section of your assignment.
3. All the assignments should be prepared using a word processing software.
4. All the assignments should be printed on A4 sized papers. Use single side printing.
5. Allow 1” for top, bottom , right margins and 1.25” for the left margin of each page.
1. The font size should be 12 point, and should be in the style of Time New Roman.
2. Use 1.5 line spacing. Left justify all paragraphs.
3. Ensure that all the headings are consistent in terms of the font size and font style.
4. Use footer function in the word processor to insert Your Name, Subject, Assignment
No, and Page Number on each page. This is useful if individual sheets become
detached for any reason.
5. Use word processing application spell check and grammar check function to help
editing your assignment.
Important Points:
1. It is strictly prohibited to use textboxes to add texts in the assignments, except for the
compulsory information. eg: Figures, tables of comparison etc. Adding text boxes in
the body except for the before mentioned compulsory information will result in
rejection of your work.
2. Carefully check the hand in date and the instructions given in the assignment. Late
submissions will not be accepted.
3. Ensure that you give yourself enough time to complete the assignment by the due
date.
4. Excuses of any nature will not be accepted for failure to hand in the work on time.
5. You must take responsibility for managing your own time effectively.
6. If you are unable to hand in your assignment on time and have valid reasons such as
illness, you may apply (in writing) for an extension.
7. Failure to achieve at least PASS criteria will result in a REFERRAL grade .
8. Non-submission of work without valid reasons will lead to an automatic RE FERRAL.
You will then be asked to complete an alternative assignment.
9. If you use other people’s work or ideas in your assignment, reference them properly
using HARVARD referencing system to avoid plagiarism. You have to provide both in-
text citation and a reference list.
6
Page
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
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.
[email protected]
Student’s Signature: Date: 14/01/2024
(Provide E-mail ID) (Provide Submission Date)
8
Page
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:
9
Page
10
Page
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.
12
Page
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.
13
Page
.
M2 Implement a fullyfunctional database system, which
14
15
Page
Task 01 18
Definition for a database System 18
Features of Database System 18
Components of Database System 21
Benefits of Database Systems 22
Data Dictionary & Metadata 24
User Requirements for Quiet Attic Films 27
System Requirements for Quiet Attic Films 28
Hardware Requirements for Quiet Attic Films 30
Effectiveness of user & system requirements for Quiet Attic Films 31
Definition of an Entity Relationship Diagram (ERD) 33
Components of an ER Diagram 33
ER Diagram for the Stated Scenario in Activity One 35
Logical Design of the Scenario 36
Data Anomaly 36
Normalization 37
Normalization Process 37
Data Validation 39
Data Validation Types 40
Task 02 43
Quiet Attic Films Database SQL DDL Statements 43
What is Database Security? 45
Importance of Database Security 47
Security of the quiet attic database 49
Database Security and Threats 50
Database Maintenance 52
Usage of SQL Statements 54
16
Page
Task 04 60
Technical Document 60
Data Flow Diagram of the of Quite Attic Films Data Management System 65
REFERENCES 66
17
Page
A database management system (DBMS) is system software for creating and managing
databases. A DBMS makes it possible for end users to create, protect, read, update, and
delete data in a database. The most prevalent type of data management platform, the
DBMS essentially serves as an interface between databases and users or application
programs, ensuring that data is consistently organized and remains easily accessible.
(Mullins, n.d)
A database system is a computer program that works with the user, other programs, and
the database to collect and study information. It helps to keep data in a neat and effective
way so that it can be easily stored, handled, and found when needed. According to the
forbes.com (n.d) there are 15 Essential Features Database Management System Should
Have as follows:
• Data Integrity:
Entity Integrity: Makes sure that every row (or record) in a table has its own special key
called a primary key. This stops any copies of the same record from being in the table.
Referential Integrity: Makes sure that the information in connected tables stays the same
by enforcing relationships and foreign key constraints.
• Data Security:
Authentication and Authorization: Manages who can use the database by making users
prove who they are and deciding if they can access it, depending on their roles and
permissions.
18
Encryption: Keeps important information safe by turning it into a code that only people
Page
• Concurrency Control:
Handles many users using the database at the same time to avoid issues and make sure the
data stays reliable.
• Data Retrieval:
Gives a way to ask the database for specific information using a query language like SQL.
It also uses indexing and optimization methods to make these queries run faster.
• Data Modelling:
Helps create the design of the database, which includes how tables, connections, and rules
are set up.
• Data Independence:
Logical Independence: Permits modifications to how the database is organized, like tables
and columns, without impacting the programs that use the data.
Physical Independence: Enables adjustments to how the data is stored physically without
impacting how it's organized logically.
• Scalability:
Can manage more data and users by either adding more resources to one server (scaling
up) or spreading the data across multiple servers (scaling out).
• Concurrency Control:
Handles many users using the database at the same time to avoid issues and make sure the
data stays reliable.
• User Interfaces:
Offers easy-to-use interfaces for administrators, developers, and end-users to work with
the database.
Together, these characteristics help make a database system efficient, reliable, and secure,
making it a crucial part of different applications and industries.
20
Page
• Software:
Software is a bunch of programs that help manage and control a database. It includes
database software, the operating system, network software (to share data with others), and
the apps used to get to the data.
• Data:
Data are the basic facts that need sorting and processing to make sense. Database
dictionaries are used to gather, document, control, and organize data in a company. A
database is like a storage place for information about another database (metadata).
• Procedures:
Procedures are the instructions in a database system. They cover everything from setting
up and installing to logging in and out, handling daily tasks, making data backups, and
creating reports.
• Data Security:
Database systems have ways to control who can see or change the information. You can
set up access rights for different levels, like for users or roles. Authentication methods
make sure only the right people can get to or edit specific data.
• Data Independence:
Database systems create a layer of abstraction between where the data is physically stored
and how users or applications work with it. This abstraction improves data independence,
letting changes be made to the database structure without impacting the application
programs.
• Data Centralization:
Database systems bring all the data to one central location, making it simpler to control
and manage who can access it. This centralized approach makes data administration
easier and lowers the chances of having data inconsistencies that can happen with data
stored in different places.
• Scalability:
Database systems are created to handle more data as it increases. This scalability makes
sure that the system can manage larger amounts of data and user requests without losing
performance.
1. Data Elements:
• Name: The unique identifier for a data element.
• Description: A detailed explanation of the purpose and meaning of the data
element.
• Data Type: Specifies the type of data (e.g., text, number, date) the element can
hold.
2. Relationships:
• Entity Relationships: Describes how different data entities are related to each
other.
• Foreign Keys: Indicates relationships between tables in a relational database.
3. Attributes:
• Default Values: The default values assigned to a data element if no value is
provided.
• Constraints: Rules and limitations on the data, such as length restrictions or format
requirements.
4. Metadata:
• Creation Date: When the data element was added to the system.
•
24
5. Usage Information:
6. Security Information:
• Access Controls: Specifies who has permission to view or modify the data
element.
Purpose:
• Clarity and Understanding: Ensures that everyone in the organization has a
consistent understanding of the data.
• Data Consistency: Promotes standardized usage and interpretation of data
elements.
• Data Governance: Provides a foundation for effective data management and
governance.
Example:
Consider a Data Dictionary entry for a "Product" entity in an e-commerce database:
What is Metadata:
“Metadata is simply data about data. It means it is a description and context of the data. It
helps to organize, find and understand data.” (Kononow, 2018)
25
Types of Metadata:
Page
2. Structural Metadata:
• Format: The file format or structure of the data.
• Schema: Describes the organization and structure of the data, particularly in
databases.
3. Administrative Metadata:
• Author: The individual or entity accountable for creating or managing the data.
• Access Rights: Information regarding who has access or the authority to modify
the data.
Importance:
• Data Discovery: Facilitates seamless exploration and identification of pertinent
data.
• Data Quality: Assists in evaluating and upholding the quality and dependability of
data.
• Data Governance: Underpins effective management, control, and adherence to
data-related policies.
Example:
Consider metadata for a document file:
• Descriptive Metadata: Title, Author, Description.
• Structural Metadata: File format (e.g., PDF, DOCX), Number of Pages.
• Administrative Metadata: Date Created, Last Modified, Access Permissions.
26
Standards:
Page
• Client Management:
The system should enable users to uphold a client list and link numerous productions to a
single client.
• Location Tracking:
Users should possess the capability to log and trace production locations. Productions
may take place at one or more locations, and users must be able to connect locations to
specific productions.
• Property Usage:
The system must ease the handling of properties utilized in productions. Users should be
capable of recording particulars about properties (like buildings, costumes, or small
items) and monitoring which properties are necessary at each location for a given
production.
• Staff Assignment:
27
Users should be able to document and oversee staff types assigned to productions. This
Page
includes specifics about each staff type, their roles, responsibilities, and qualifications.
• Reporting:
The system is required to offer reporting capabilities, enabling users to produce reports on
productions, clients, locations, properties, and staff assignments.
These user requirements constitute the necessary functionalities for developing and
executing a database system aligned with the requirements of Quiet Attic Films.
For the Quiet Attic Films, here are system requirements for designing and implementing
the database:
• Normalization:
Apply normalization techniques to organize the database systematically, eliminating
redundancy and ensuring data integrity. Normalize the schema to minimize update
anomalies.
28
•
Page
• Security Measures:
Implement robust security measures to regulate access to sensitive data. Define user roles
and permissions, ensuring that only authorized personnel can view, modify, or delete
specific information.
These requirements are about creating a database for Quiet Attic Films. They cover the
basic things needed for development. It's important to be flexible and make changes as
needed during the development. The goal is to make sure the system meets the company's
changing needs.
29
Page
The hardware requirements for implementing the database system for Quiet Attic Films
are:
• Server:
A dependable server is needed to host the database. It must have enough processing
power, memory (RAM), and storage space to manage Quiet Attic Films' data storage and
retrieval requirements.
• Storage:
Enough storage capacity is necessary to hold the database and related media files. This is
particularly important in film production, where handling large amounts of multimedia
data, such as videos and images, is common.
• Network Infrastructure:
A strong network infrastructure is crucial for smooth communication between the
database server and client machines. This is especially important for accessing and
updating data, considering the collaborative nature of film production.
• Backup System:
A reliable backup system is required to regularly and securely back up the database. This
involves extra storage space for backup files and a plan for recovering data in case of
system failures or data loss.
• Client Machines:
Adequate client machines, like computers or devices used by Quiet Attic Films staff, are
necessary to access and interact with the database system. These machines should meet
the required specifications to efficiently run the necessary software.
These hardware requirements are crucial for establishing a database system that can
effectively meet the needs of Quiet Attic Films
30
Page
The success of the system for Quiet Attic Films depends a lot on how well the users and
the system requirements are thought out.
User Requirements:
• Clarity:
The user requirements work well if they are easy to understand for everyone, even those
who aren't tech experts. When things are clear, everyone knows what the database is
supposed to do.
• Alignment with Business Goals:
The user requirements should match what Quiet Attic Films wants to achieve as a
business. If the database does what it's supposed to, it helps the company manage
productions, clients, locations, properties, and staff better.
• Comprehensive Coverage:
Everything works effectively when the user requirements cover all the important parts of
handling film production data. This means having detailed info about productions, clients,
locations, properties, and staff assignments, making sure nothing important is left out.
• Flexibility:
The requirements are good if they let the system handle different situations well. For
example, if a client has many productions at once or if a production is happening in
multiple places, the system should be able to deal with that.
• User Involvement:
It's effective when the people who will use the system are part of deciding what it should
do. This makes sure the system really meets the everyday needs of Quiet Attic Films.
31
Page
• Scalability:
It's good if the system is built to grow as the company grows. If more productions, clients,
locations, or staff types are added, the system should be able to handle that without a
problem.
• Reliability:
The system requirements are effective if they make sure the database works well all the
time. A reliable system performs consistently, making sure there are no unexpected
breaks or problems during film production.
• Security:
Effectiveness is reached by having strong security in place. This means keeping important
data safe from unauthorized access, making sure the information stored in the database
stays private and unchanged.
• Usability:
The system requirements are good if they make the database easy to use. A system that is
user-friendly and easy to understand helps Quiet Attic Films staff work with it efficiently.
• Integration:
It's effective if the system can smoothly work with other tools or software used by Quiet
Attic Films. This makes sure everything flows well together, preventing any confusion or
separate data collections.
32
Page
The whole system is effective when the user and system requirements come together to
create a well-designed, practical, and easy-to-use database system. Regular
communication and teamwork between everyone involved, including users and the
development team, are super important. Success is measured by how closely the system
matches what Quiet Attic Films needs and how much it helps make film production
processes smoother and better.
Components of an ER Diagram
• Entities:
Entities serve as representations of real-world objects, concepts, or entities stored in the
database. Each entity is visualized as a rectangle within the ER diagram.
• Attributes:
Attributes act as the properties or characteristics of entities, elucidating their features.
These attributes are portrayed within ovals and are linked to their respective entities.
33
• Relationships:
Page
• Cardinality:
Cardinality establishes the numerical relationship between two entities in given
relationship. It specifies the quantity of instances of an entity that can be correlated with
another entity. Notable cardinality notations encompass "one-to-one" (1:1), "one-to-
many" (1:N), and "many-to-many" (M:N).
• Primary Key:
The primary key serves as a distinctive identifier for each record within an entity,
guaranteeing the unique identification of each entity instance. In the ER diagram, the
primary key is typically denoted by underlining.
• Foreign Key:
A foreign key is a field in one table that references the primary key in another table,
establishing a connection between the two tables to represent a relationship. In an ER
diagram, a foreign key is often indicated by an arrow pointing toward the referenced
table.
• Weak Entities:
Weak entities lack a primary key attribute of their own and rely on another entity
(referred to as the owner or parent entity) for identification. Weak entities are symbolized
with a double rectangle.
• Associative Entity:
An associative entity is utilized to depict a many-to-many relationship between two
entities. It functions as an entity created to associate instances of other entities, possessing
its own attributes, and incorporating foreign keys referencing the associated entities.
34
structure, emphasizing entities, their attributes, and the relationships among them.
35
Page
Data Anomaly
“A data anomaly, also known as an outlier, is an observation or data point that deviates
significantly from the norm, making it inconsistent with the rest of the dataset. Data
anomalies can be either intentional or unintentional and may result from errors, noise, or
merely unique occurrences. These anomalies can significantly impact data analysis,
leading to incorrect or misleading insights.” (Soloveichik,2023)
• Update Anomaly:
Suppose we have a table with 10 columns, including "employee Name" and "employee
address." If an employee changes their location, we need to update the table. However, if
the table is not organized properly (normalized), and an employee has multiple entries,
updating them all might be tricky. We could miss updating one of them.
• Insertion Anomaly:
36
Imagine a table with 4 columns: "Student ID," "Student Name," "Student Address," and
Page
"Student Grades." When a new student joins the school, we can fill in the first three
• Deletion Anomaly:
This anomaly occurs when important information is unintentionally deleted from a table.
For example, if we have information about students and the courses they have taken
(student ID, Student Name, Course, address), and a student leaves the school, deleting the
entry related to that student will also erase the course information. However, courses
depend on the school, not the student.
Normalization aims to solve these issues by organizing tables more effectively. In simple
terms, it separates tables into smaller ones and establishes relationships between them
using keys.
Normalization
“Normalization is a database design technique that reduces data redundancy and
eliminates undesirable characteristics like Insertion, Update and Deletion Anomalies.
Normalization rules divides larger tables into smaller tables and links them using
relationships. The purpose of Normalisation in SQL is to eliminate redundant (repetitive)
data and ensure data is stored logically.” (Peterson,2023)
Normalization Process
The process of normalization is a systematic method in the design of a database that seeks
to arrange and structure data to reduce redundancy, dependency, and anomalies,
ultimately enhancing data integrity and efficiency. This procedure consists of several
steps, commonly denoted by various normal forms (1NF, 2NF, 3NF, etc.).
values. Additionally, the table must possess a primary key, acting as a unique identifier
Page
Throughout the normalization process, the primary objective remains organizing data
systematically to minimize redundancy, enhance data integrity, and prevent anomalies.
Achieving these goals contributes to the overall efficiency, maintainability, and reliability
of the database structure. It's crucial to note that the extent of normalization applied
should be balanced with the specific requirements and use cases of the database to avoid
overly complex queries and potential performance issues.
Data Validation
As mentioned, on the website databasemanagement.fandom.com (n.d) Data validation
holds significant importance in the realm of databases, where constant updates, deletions,
queries, and movements of information necessitate the maintenance of valid data. The
application of straightforward data validation rules contributes to the consistency,
functionality, and enhanced value that databases offer to their users.
In the context of SQL usage, data validation is the linchpin of maintaining data
consistency within a database. The crux of data integrity lies in factors such as
constraints, referential integrity, and the options for deletion and update. SQL
encompasses various constraint types, including check, unique, not null, and primary
constraints. Check constraints verify the truth of a statement about the data across all
rows in a table. The unique constraint ensures distinct values across rows in specified
columns. The not null constraint mandates the presence of data in a particular column.
Notably, in SQL, the not null constraint is applicable to a single column. Lastly, the
primary key constraint combines the uniqueness and data presence requirements, ensuring
no duplicate values in specified columns and necessitating the presence of data.
Referential integrity, a crucial component of data integrity, primarily concerns two tables:
39
the lookup table and the data table. Its application typically aligns with data insertion,
Page
deletion, or updating. Referential integrity impedes inserts and updates in the foreign key
Inserts and deletes sanctioned by referential integrity involve data originating from the
lookup table. Three associated options include:
• Length Validation:
Page
• Range Validation:
Range validation entails verifying that numeric values entered a field fall within an
acceptable range. For instance, if a field represents ages, the system checks that the
entered age is within a realistic and meaningful range (e.g., 0 to 120). This helps maintain
the accuracy and relevance of the data by preventing outliers or invalid entries.
• Format Validation:
Format validation ensures that data adheres to a specific structure or format. This is
typically applied to fields like email addresses, phone numbers, or identification numbers.
By enforcing a consistent format, the system ensures that the data is not only accurate but
also standardized, making it easier to manage and query.
• Consistency Validation:
Consistency validation is focused on preserving the relationships and coherence between
different pieces of data within the database. For instance, if there's a foreign key
relationship between two tables, the system checks that the foreign key values correspond
to valid primary key values in the referenced table. This type of validation is crucial for
preventing referential integrity issues and ensuring the reliability of interconnected data.
• Uniqueness Validation:
Uniqueness validation ensures that values in a specific field, often a primary key, are
unique across all records in a table. This prevents the occurrence of duplicate entries,
which can lead to confusion and data inconsistencies. Maintaining uniqueness is
fundamental for accurate identification and retrieval of specific records within the
database.
41
Page
Collectively, these types of data validation contribute to the overall integrity, accuracy,
and reliability of the data stored in a database, ensuring alignment with the intended
structure and consistency over time.
42
Page
Select Statement
43
Page
Between Statement
44
Page
Access Control:
It's important to limit who can get into the database for security reasons. Access control
methods make sure that only the right people or programs can use the database. This
includes checking who the users are (authentication) and giving them the right
permissions based on their jobs (authorization).
Encryption:
We use something called database encryption to keep our information safe. This means
making our data secret when it's stored on the computer (at rest) and when it's moving
between the computer and other programs (in transit). Encryption helps stop people who
45
Authentication:
We use strong ways to make sure only the right people can use the database. This
includes having secure rules for passwords and using a double-check system called multi-
factor authentication. These methods stop fake users from pretending to be real ones and
getting into the database.
Database Firewall:
Using a database firewall is like adding extra security to watch and control the traffic
going in and out of the database. It helps stop people who shouldn't get in, protects
against attacks like SQL injections, and filters out any harmful requests trying to come in.
Patch Management:
It's important to keep the database software and related systems current by adding the
latest security updates. Doing this regularly helps fix known problems and makes it less
46
Confidentiality:
Databases usually have important and private stuff like personal details, money records,
and business secrets. Keeping things confidential means that only the right people or
programs are allowed to see and use this information.
Integrity:
Database integrity is like making sure the information stored is correct and trustworthy. If
we don't have good security, there's a chance that data might get changed, deleted, or
messed up, either by mistake or on purpose. Database security stops these unauthorized
changes and keeps the information reliable.
Availability:
Companies use databases to get important information quickly. Database security makes
sure the database keeps working well and doesn't have too much downtime because of
security problems or attacks.
Compliance:
Lots of businesses must follow rules and laws about keeping data safe. To meet these
rules and standards, it's important to have strong security measures for databases.
47
Cost Reduction:
If there are security problems or data breaches, it can lead to big money losses, legal
troubles, and harm a company's reputation. Putting money into database security
measures can stop these problems and lower the costs that come with them.
48
Page
49
Page
Unauthorized Access:
If people who shouldn't be there get into a database, it can cause problems like stealing
important information, changing things without permission, or exposing sensitive data.
To stop this, we need to use good ways to check who's allowed in and control their access
properly.
SQL Injection:
SQL injection is when bad actors put harmful code into places where we type
information. This can mess with how the database works, allowing them to get in without
permission, change data, or even delete records. To prevent this, we use methods like
checking and controlling the input and using special types of queries.
Data Breaches:
A data breach happens when important information is seen or shared without permission.
This can occur if access controls are not strong enough, if someone inside the
organization does something they shouldn't, or if there's an attack from outside. To avoid
data breaches, we use methods like encrypting data, keeping an eye on who accesses it,
and making sure only the right people can get in with strong authentication.
Data Manipulation:
Bad people might try to change or delete information in a database. This could mess up
records, lead to money fraud, or cause other bad things. To stop this, we need to use the
right access controls, keep track of what happens with audit trails, and have plans for
backing up data to protect against these changes.
Bad software, like malware and ransomware, can go after databases, making the
Page
information sick or locking it up. Ransomware might even ask for money to unlock the
Insider Threats:
People who work inside a company, like employees or contractors who can get into the
database, might be a security risk. They could do things on purpose or by accident that
harm data security. To handle this, we use methods like controlling access based on job
roles, keeping an eye on what users do, and training employees to be aware of security.
Physical Threats:
Real-world dangers like stealing, natural disasters, or accidents can harm the physical
stuff holding the database. To prevent this, we use safety measures like controlling who
51
can get in, making backups, and storing copies of data in a different place (off-site
Page
storage).
Index Maintenance:
Indexes make it faster to find information in a database. To keep things running smoothly,
database maintenance involves taking care of these indexes. This might mean organizing
or rebuilding them based on how people use the data and any changes that happen.
Statistics Update:
The database system uses statistics to make searches faster. Updating these statistics
regularly makes sure the system has the right info about how data is spread out. This
helps make things work better and faster.
Security Audits:
Doing regular security checks helps find and fix weak points in the database system. This
involves looking at who has permission to access, keeping an eye out for anything
suspicious, and making sure everything follows the rules and security standards.
Space Management:
Taking care of how much space is used on the computer disks is important for how well
the database works. This means keeping an eye on how big the data and log files are,
arranging files in the best way, and adding more space when it's necessary.
SELECT:
Use: Gets information from tables.
Example: Get column1 and column2 from the table when a condition is met.
INSERT:
Use: Adds new information to a table.
Example: Put new values into column1 and column2 in the table.
UPDATE:
Use: Changes existing information in a table.
Example: Change the value in column1 to a new value when a condition is met in the
table.
DELETE:
Use: Takes out information from a table.
Example: Remove data from the table when a condition is met.
CREATE:
Use: Makes a new table, view, or other things in the database.
Example: Create a table with column1 and column2 having specific data types.
ALTER:
Use: Changes the structure of an existing table or view.
Example: Add a new column3 with a specific data type to the table.
DROP:
Use: Deletes an existing table or view.
Example: Remove the table from the database.
54
Page
GRANT:
Use: Gives specific permissions to users or roles.
REVOKE:
Use: Takes back specific permissions from users or roles.
Example: Disallow the user from selecting data from the table.
JOIN:
Use: Puts together information from different tables based on a shared column.
Example: Combine data from table1 and table2 where their columns match.
WHERE:
Use: Picks out specific information based on a condition.
Example: Get data from the table where a column has a certain value.
ORDER BY:
Use: Arranges the results in ascending or descending order.
Example: Arrange the data in the table in ascending order based on a specific column.
GROUP BY:
Use: Puts together rows with similar values in chosen columns.
Example: Group rows in the table based on a specific column and count them.
HAVING:
Use: Filters results after using GROUP BY.
Example: Show only the grouped data where the count is more than 1.
55
Page
Delete Production
Delete a production ID from the database system.
57
Page
How to Choose Test Data that Will Increase the Efficacy of Testing
Choosing the right test data is super important for testing to work well. First, really
understand what the system needs and the important situations to test. Use different kinds
of situations, like normal ones and tricky ones. Check the extreme values with boundary
analysis. Try out bad inputs to see how the system handles mistakes. Use data that looks
like what happens in the real world, with the right amount and types. Mix up the data to
see how things work together. For big tests, use lots of data and make it act like a busy
time. When testing changes, check both new stuff and old stuff to catch any problems.
Test how the system handles security issues and protects data. For user-friendly testing,
use data that fits different kinds of users and how they use the system. Follow privacy
rules and keep sensitive info safe. Make things a bit random in tests to see how the system
deals with unexpected stuff. Get thoughts from people involved, like users, to make sure
we are covering everything. Write down what we are testing and what we expect to
happen. Have a good process to manage our test data, keeping track of changes. Doing all
58
this helps make sure we are testing really checks the system well for how it works, how
Page
fast it is, and how safe and easy it is to use, making the whole testing process better.
59
Page
To get into the system, just type in the right username and password on the login screen.
Then, click the login button to go ahead.
When you go to the Quiet Attic films menu, you can pick where to go by choosing from
these options: production database, new production, add new staff, or production settings.
60
Page
61
Page
63
Page
65
Page
Databases: Explaining Data Normalization, Data Anomalies and DBMS Keys. (2019).
towardsdatascience.com. Available at: https://towardsdatascience.com/softly-explained-
data-normalization-data-anomalies-and-dbms-keys-f8122aefaeb3 (Accessed: 16
November 2023)
Essential Features Your Database Management System Should Have. (n.d). forbes.com.
Available at: https://www.forbes.com/sites/forbestechcouncil/2023/02/01/15-essential-
features-your-database-management-system-should-have/?sh=1ee8771551f2 (Accessed:
13 November 2023)