Unit 04 Database Design and Development
Unit 04 Database Design and Development
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 assessment board.
Action Plan
Summative feedback
Assessor Date
signature
Student Date
signature
1. A Cover page or title page – You should always attach a title page to your
assignment. Use previous page as your cover sheet and make sure all the details
are accurately filled.
2. Attach this brief as the first section of your assignment.
3. All the assignments should be prepared using a word processing software.
4. All the assignments should be printed on A4 sized papers. Use single side printing.
5. Allow 1” for top, bottom , right margins and 1.25” for the left margin of each page.
1. The font size should be 12 point, and should be in the style of Time New Roman.
2. Use 1.5 line spacing. Left justify all paragraphs.
3. Ensure that all the headings are consistent in terms of the font size and font style.
4. Use footer function in the word processor to insert Your Name, Subject,
Assignment No, and Page Number on each page. This is useful if individual sheets
become detached for any reason.
5. Use word processing application spell check and grammar check function to help
editing your assignment.
Important Points:
1. It is strictly prohibited to use textboxes to add texts in the assignments, except for
the compulsory information. eg: Figures, tables of comparison etc. Adding text
boxes in the body except for the before mentioned compulsory information will
result in rejection of your work.
2. Carefully check the hand in date and the instructions given in the assignment. Late
submissions will not be accepted.
3. Ensure that you give yourself enough time to complete the assignment by the due
date.
4. Excuses of any nature will not be accepted for failure to hand in the work on time.
5. You must take responsibility for managing your own time effectively.
6. If you are unable to hand in your assignment on time and have valid reasons such
as illness, you may apply (in writing) for an extension.
7. Failure to achieve at least PASS criteria will result in a REFERRAL grade .
8. Non-submission of work without valid reasons will lead to an automatic RE
FERRAL. You will then be asked to complete an alternative assignment.
9. If you use other people’s work or ideas in your assignment, reference them
properly using HARVARD referencing system to avoid plagiarism. You have to
provide both in-text citation and a reference list.
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.
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:
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.
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.
Table of Figures
Figure 1 ER Diagram ........................................................................................................... 27
Figure 2 Relationship.......................................................................................................... 27
Figure 3 ER Diagram for Quiet Attic Films.......................................................................... 28
Figure 4 Wireframe - Home Page....................................................................................... 37
Figure 5 Wireframe - Login Page........................................................................................ 37
Figure 6 Wireframe - Admin Access Page .......................................................................... 38
Figure 7 Wireframe - Manager Access Page ...................................................................... 38
Figure 8 Wireframe - Client Access Page ........................................................................... 39
Figure 9 Wireframe - Staff Access Page ............................................................................. 39
Figure 10 Wireframe - Manager Details ............................................................................ 40
Figure 11 Wireframe - Client Details .................................................................................. 40
Figure 12 Wireframe - Staff Details.................................................................................... 41
Figure 13 Wireframe - Production Details ......................................................................... 41
Figure 14 Wireframe - Property Details ............................................................................. 42
Figure 15 Wireframe - Location Details ............................................................................. 42
Figure 16 Code Editor ......................................................................................................... 47
Figure 17 Syntax Highlighting............................................................................................. 48
Figure 18 Debugging. ......................................................................................................... 48
Figure 19 Quiet Attic Films - Homepage Interface............................................................. 50
Figure 20 Quiet Attic Films - User Login Interface ............................................................. 50
I would like to sincerely thank Mr. Abdur Rahman for all her help and consideration
during these lectures and assignment. He gave personal care for every student and
showed concern to everyone student without any inequality. His advice has been helpful
to me in grasping important ideas.
I also want to express my gratitude to everyone who has helped me along the way in my
academic career, whether directly or indirectly. Your help has been invaluable, and I
appreciate everyone's efforts in making this project achievable.
In this assignment, our objective is to design and implement a relational database system
for Quiet Attic Films production company. The company need a strong database to
effectively handle the broad range of projects it produces.
There is main 4 activities and each of them aiming to guide use through the process of
creating an effective database solution. Initially, we'll analyze the user and system
requirements provided by Quiet Attic Films, focusing on understanding their
organizational structure and data needs. This analysis will lead us to design conceptual
and logical database models, capturing the relationships between entities and their
attributes.
In Activity 3, quality control comes first. Here, we'll create a thorough test strategy to
verify the system to specified requirements. Our goal is to guarantee the database
system's dependability and usefulness by running relevant test cases using iterative testing
procedures. To aid in the comprehension and upkeep of the created solution, we will also
provide technical and user documentation that describes the architecture, data flow, and
operating processes of the system. We will find areas for improvement and make
recommendations for improvements to increase the database system's ability to satisfy
Quiet Attic Films' changing demands through assessment and feedback.
By the end of this activity, we can understand what a database is, what are
requirements, and some important stuff about database design and development.
What is Database?
A database is an organized collection of information or data stored electronically in a
computer system. The computerized data managed through a Database Management
Studio (DBMS). It helps to easily access, manage, delete, create, and update data.
a. Functional Requirements
• Mandatory requirements need to be fulfilled by the software, based on user
requirements and the developer.
• Some functional requirements for Quiet Attic Films
Admin
o Ability to view, update and delete the details from Production, Client,
Properties and Staff for the users.
o Should be able to check which staff working in which production.
o Should be able to check client’s production and location.
o Should be able to check the availability of staffs and properties.
o Should be able to check payment history.
Production Manger
o Should be able to create profiles.
o Should be able to accept or decline appointments.
o Ability to view ongoing productions.
o Should be able to check which staff working in which production.
o Should be able to check payment history.
Staff
o Should be able to create profile.
Client
o Should be able to make an appointment.
o Should be able to make a payment.
o Should be able to view previously done productions.
o Should be able to check their productions works.
o Should be able to create a profile.
b. Non-Functional Requirements
• Some extra functions can be added to the software but it’s not mandatory.
• Some Non-Functional Requirements
o Security, Storage, Performance, Flexibility
c. Software Requirements
▪ It is a comprehensive description of the intended purpose and environment for
software under development.
▪ Basica software and software version needed to run the program.
o Windows 7 or latest version
o Visual Studio 2015 or above
o MySQL version 2015 or above
d. Hardware Requirements
▪ Some certain hardware needed to run a certain software.
▪ Mostly it’s based in Processor, Ram, Storage Devices.
o Processor – Intel Core I5
o Ram - 8 GB
o Storage – 10 GB
Employee
Attributes
• Attributes represent the characteristics of an entity. And every type of attribute
has its identical shape.
• There are 6 types of attributes.
1. Simple attribute - An attribute that cannot be broken down to components
part. (Ex – Staff_id, Basic_salary)
2. Composite attribute – An attribute that can subdivide to component parts.
(Ex – Name, Address)
3. Single valued attribute – An attribute that take only one value for a given
entity. (Ex – Staff_id)
4. Multi valued attribute - An attribute that take more than one value for a given
entity. (Ex – Telephone_number, Skill)
5. Stored attribute – An attribute whose values are stored in the database.
(Ex – Basic_salary, DOB)
6. Derived attribute – An attribute whose value can be calculated from related
stored attribute. (Ex – Annual_salary, Age)
Relationship
• Relationship represents the association or connection between two or more
entities. It shows how entities are related and interacted with each other within a
database.
EX – Teachers teach subjects.
Figure 2 Relationship
Anomaly
o It simply means error.
o An inconsistency or an unexpected behaviour that can occur when inserting,
updating, or deleting a data from a database.
o The reason is poorly structured database that have not been normalized.
Student Table
Student_ID Name University Major Course_ID Course title Lec_Name Lec_Loc Mark
S001 Kamal Colombo Accounts CA Co. Arch Hari X01 65
S001 Kamal Colombo Accounts AA Accounting Nisan Y02 74
S003 Nipun Jaffna Com.SC CA Co. Arch Kelvin X01 89
S003 Nipun Jaffna Com.SC DM Data Mining Lakshman Z05 76
S003 Nipun Jaffna Com.SC CS Co. Security Kavi L03 54
Table 1 Unnormalized Table
Follower
Student_ID Course_ID Course_Title Lec_Name Lec_loc Mark
S001 CA Co. Arch Hari X01 65
S001 AA Accounting Nisan Y02 74
S003 CA Co. Arch Kelvin X01 89
S003 DM Data Mining Lakshman Z05 76
S003 CS Co. Security Kavi L03 54
Table 3 1NF - Follower
Student
Student_ID Name University Major
S001 Kamal Colombo Accounts
S002 Nipun Jaffna Com.SC
Table 4 2NF – Student
Course
Course_ID Course_Title Lec_Name Lec_loc
CA Co. Arch Hari X01
CA Co. Arch Kelvin X01
AA Accounting Nisan Y02
DM Data Mining Lakshman Z05
CS Co. Security Kavi L03
Table 5 2NF - Course
Follower
Student_ID Course_ID Mark
S001 CA 65
S001 AA 74
S003 CA 89
S003 DM 76
S003 CS 54
Table 8 3NF Follower
Lecture
Lec_Name Lec_Loc
CA X01
CA X01
AA Y02
DM Z05
CS L03
Table 10 3NF – Lecture
Production
Production_id Production_type Number_of_Days Client_id
2 Advertisement 5 1
6 Information Film 1 2
7 Training Film 2 2
Table 11 Production
Location
Location_id L_address City Production_id
00300 Greenwich London 2
Park, London
00700 Windsor Castle Windsor 2
Grounds
00800 River Cam, Cambridge 6
Cambridge
00900 Quiet Attic London 6
Studio
00950 St James’s London 7
Park, London
Table 13 Location
Table 16 Use
1001 John Camera Crew 100.00 0778542316 24.03.1992 No 2, Temple Road, Matara
1002 Nimal Actor 200.00 0743259874 15.05.1996 No 10, Market Road, Galle
1003 Vipun Runner 25.00 0726541239 02.05.2000 No 40, Court Road, Kinniya
1004 Farhad Producer 550.00 0753244865 06.09.2001 No 10, Main Road, Colombo
1005 Dhanushka Producer 550.00 0751694582 30.03.1995 No 24, Market Road, Kandy
1006 James Actor 200.00 0762548326 24.02.1989 No 65, Theatre Road, chillaw
1007 Hendry Voice Actor 100.00 0712548965 10.10.1991 No 02, 1st Cross Road, Galle
1008 Niyas Camera Crew 100.00 0773014586 24.11.1987 No 10, St Peter Road, Matara
1009 Mike Actor 200.00 0710540065 02.12.1999 No 36, Park Road, Kandy
1010 Kasun Runner 25.00 0785421565 20.12.1998 No 48, Mall Road, Vavuniya
1011 Shakthi Voice Actor 100.00 0762589631 31.07.1990 No 35, Lake Road, Kandy
1012 Siyath Producer 550.00 0774125896 10.12.1979 No 79, Station Road, Jaffna
1013 Nuwan Camera Crew 100.00 0789874561 25.06.1989 No 55, 2nd Cross Road, Galle
1014 Charley Actor 200.00 0774503210 16.12.2000 No 06, Kovil Road, Puttalam
Table 17 Staff
Client Details.
Production details.
Location Details.
Visual Studio
• Visual Studio is an integrated development environment (IDE) software that helps to
develop software codes very efficiently.
• It has compilers, code completion tools, graphical designers, and many more for
enhance developers’ productivity.
• When it comes to DBMS included interface development, it has some varieties of
feature and tools.
o Windows Forms:
Visual studio provides windows forms to create visually appealing and
interactive user interfaces.
o Database Forms:
Visual studio provides database form to create databases and implement SQL
queries and commands. By this we can store data in a proper way and retrieve it
whenever possible.
In this activity I have explained about the process of making a fully functional system.
So, to complete it we'll go through the types of SQL, what is and IDE, use of SSMS in
software development, interface development with Visual Studio and more.
• Features of an IDE
o Code Editor:
A specialize text editor for write coding with various features as autocompletion
and code folding.
o Build Automation:
o Syntax Highlighting:
It highlights different elements of the code in different colors and makes it easier
to read and understand the code. This helps when we work with an algorithm that
involves multiple functions, variables, and data structures.
o Quick Action & Refactoring:
It provides short terms for common actions like fixing bugs, optimizing code
structure, readability, and overall develops efficiency and code quality.
o Debugging:
Tools for debugging such as breakpoints, step-by-step execution, and variable
inspection.
o Version control Integration:
Support for version control systems like Git, allowing developers to manage their
code revisions and collaborate with others.
o Testing:
Testing includes integration with testing frameworks and in-IDE test execution
capabilities.
o Code Analysis:
Tools that can be utilized to analyze code encompassing static code analysis,
linting as well as performance profiling.
o Project Management:
Assistance with the management of software projects, encompassing
dependencies, build configurations and deployment is provided through Project
Management.
o Extensibility:
Extensibility involves the capability to incorporate additional features and
functionality by using plugins or extensions.
o Integrated Documentation:
Inclusion of IDE-based access to help resources and documentation.
o User Interface:
A user-friendly and customizable interface to assist.
Advantages Disadvantages
• Code Assistance: It has various features to • Resource Intensive: It's hardware dependable,
features to assist coding. so old hardware pcs hard to compete with it.
• Debugging Tools: IDEs includes powerful • Lack of Portability: IDEs are typically tied to a
debugging tools. specific platform
• Language Support: It supports a large number • Cost: Even though many IDEs open source
of coding languages. some top-class IDEs are expensive.
• Integrated Tool: it has built-in equipment • Limited Flexibility: IDEs are often tailor-made
such as GUI layout and database control. to precise coding languages or framework
Table 18 Advantages and Disadvantages of an IDE
o Debugging:
Figure 18 Debugging.
It helps to find and fix errors in the errors, and personally helped me a lot when I
was working on the project. Tools for debugging such as breakpoints, step-by-step
execution, and variable inspection help to identify where the things are going
wrong and fix it.
Testing includes integration with testing frameworks and in-IDE test execution
capabilities. It helps to execute the program, by that we can get output of the
program, find any errors, and debug it.
Visual Studio
• Visual Studio is an integrated development environment (IDE) software that helps to
develop software codes very efficiently.
• It has compilers, code completion tools, graphical designers and many more for
enhance developers’ productivity.
• When it comes to DBMS included interface development, it has some varieties of
feature and tools.
o Windows Forms:
Visual studio provides windows forms to create visually appealing and
interactive user interfaces.
o Database Forms:
Visual studio provides database form to create databases and implement SQL
queries and commands. By this we can store data in a proper way and retrieve it
whenever possible.
Homepage
User Login
Manager page
Client page
Staff Details
Location Details
Property Details
1. Query Editor
This is the part that we use to write all the queries. MS SQL server offers interactive
and user-friendly interface and gives recommendations for tables, columns, and
other items for easy query creation and a variety of other features.
2. Object Explorer
Object Explorer shows the database objects contained in the server in a tree format.
For quick reference, this section lists all the database, security, and server objects.
We can see each object's components by simply pressing the plus icon (+) to the left
of the object to expand it.
4. Execute Button
It helps the users to run the queries and get the results.
6. Parse
This will validate the query's syntax but doesn't check the database.
7. Changing query results destination
This will allow us to set the query result's destination. There are three options for
that:
1) Results to Grid
2) Results to Text
3) Results to File
With these steps you can connect your database to the visual studio, but to access
and update the database we need to write a code for the connection establishment.
• INSERT Command
• UPDATE Command
• DELETE Command
• BETWEEN
• INNER JOIN
• HAVING
• IN
Figure 64 IN Command
In this activity I have provided some test case and user feedback to show the capabilities
and the minor issues that Quiet Attic Films System has.
Test Cases
Test Case: 01
Pass/Fail Pass
Test Case: 02
Pass/Fail Pass
Table 21 Test Case 02
Test Case: 03
Pass/Fai Pass
l
Table 22 Test Case 03
Test Case: 04
Scenario Provide an error message when the field are empty while register
Test case Display error message
Test Display error message when the required fields are empty while registering data in
Data location table
Expected Display an error message when the required fields are empty while registering in location
Results table
Actual The program has stopped
Results
Pass/Fail Fail
Reason Semi-Colon (;) expected
Table 23 Test Case 04
Expected Display an error message when the incorrect username or password entered
Results
Actual "Invalid. Please try again!"
Results
Pass/Fail Pass
Table 24 Test Case 05
Scenario Check Username, Password which are already save in table and redirect them to the
assigned form
Test case Redirect to the assigned form
Test Username: 1001
Data Passwords: John
Test Case: 07
Scenario Display the details of the location where the Location_id: 00300
Test case Valid data type
Test Location_id: 00300
Data
Expected Display the details of the location where the Location_id: 00300
Results
Actual Display the details.
Results
Pass/Fail Pass
Table 26 Test Case 07
Test Case: 08
Pass/Fail Pass
Table 27 Test Case 08
Feedback Forms
Responses
Figure 83 Response 01
Figure 85 Response 03
Figure 87 Response 05
Overall, we must fix the error in Production Details, otherwise the system is successful.
In this part necessary technical documentation and user manual are provided. By the
technical documentation, it will be much easier when we do future enhancement and
upgrades done by the same or a different team. For the user documentation, the user will
get a clear idea of the system and will get to know how to operate the system.
Introduction
Abstract:
Leading London, England-based film production firm Quiet Attic videos specializes in
making short educational videos and eye-catching TV commercials. They have given us
the assignment of creating and putting into place a database system that meets their
needs as they work to improve operational effectiveness and data management. To
create a customized database solution, this project requires you to comprehend the
workflow and data management requirements of Quiet Attic Films.
Overview:
This project's main goal is to create a complete database system for Quiet Attic Films
centered around the idea of a "production." Their commercial activities revolve around
their productions, each of which is customized for a particular customer. Notably,
customers could order several projects at once, which calls for a scalable and adaptable
database architecture.
Requirements
Hardware Requirements
• Processor: Intel Core i5 processor (8th generation or newer) or equivalent AMD
Ryzen processor for optimal performance.
• Memory: 8GB of RAM (16GB recommended)
• Storage: 256GB SSD
• Graphic Card: NVIDIA GTX 660 or Integrated graphics card with DirectX 11
support for basic graphics rendering and video playback.
Software Requirements
• OS: Windows 10 Professional (64-bit) or Windows 11 Professional (64-bit)
• Visual Studio: Visual Studio 2019 or above
• SSMS: SQL Server Management Studio (SSMS) 17.9 or above
• User Login
• Register manager, client, staff, production, location, and property details.
• Update manager, client, staff, production, location, and property details.
• Delete manager, client, staff, production, location, and property details.
• Search manager, client, staff, production, location, and property details.
Installation steps:
1) Download software:
• Go to the official Microsoft website or trusted sources to download the installation
files for SQL Server Express, Visual Studio 2022, and SQL Server Management
Studio (SSMS) 2019. Make sure to download the appropriate versions based on your
operating system (e.g., Windows 10).
By following these steps, you can successfully install the database system designed for
Quiet Attic Films and begin using it to manage their production operations effectively.
In other hand for this scenario, I have used UML diagrams to represent the technical
documentation
It's also known as an event diagram which helps to display how the users and the objects
interact with each other. It includes the lifeline of objects, process that interact with the
object, and the messages exchanged between the object that performs a function.
Login.
Register production.
Update production.
Search Manager.
Register Client.
Make payment.
It is a flowchart that shows all the functions of system activities. It shows everything
from the very beginning, defines the various decision paths and steps that need to be
taken to move on to the next activity. This diagram helps to get a high-level overview of
the dynamic aspects of a system.
Book a production.
Homepage
Login Page
From the login page, by identifying the user type they will redirect to the specific user
page.
• Admin -> Admin page
• Manager -> Manager page
• Client -> Client page
• Staff -> Staff page
1. My Details: My details from each page show the form that includes the option that
helps to search, register, update, delete the specific user data.
2. Production: It will redirect to the production page
3. Property: It will redirect to the property page
4. Location: It will redirect to the location page.
Location Details
This user manual provides step-by-step instructions on how to use Quiet Attic Films
System software for database management. This guide covers parts like How to log in,
register, search, update, and delete user, production, location, and property details. And
it includes how to access and manage users, and payment details.
.
M2 Implement a fullyfunctional database system, which
includes system security and database maintenance.