Database Assignment (Completing On The Process)
Database Assignment (Completing On The Process)
Assessor Internal
Verifier
Unit 04: Database Design & Development
Unit(s)
Database Solution for Quiet Attic Films
Assignment title
J.R NIRUN HARSHAN
Student’s name
List which assessment Pass Merit Distinction
criteria the Assessor has
awarded.
INTERNAL VERIFIER CHECKLIST
Do the assessment criteria awarded
match those shown in the assignment Y/N
brief?
Is the Pass/Merit/Distinction grade
awarded justified by the assessor’s
comments on the student work? Y/N
Date Received
Submission Date 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 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.
Assignment Feedback
Action Plan
Summative feedback
Feedback: Student to Assessor
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.
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.
Assignment Brief
Issue Date
Submission Date
Submission format
Part 1: The submission should be in the form of an individual written report written in a concise, formal
business style using single spacing and font size 12. You are required to make use of headings, paragraphs
and subsections as appropriate, and all work must be supported with research and referenced using Harvard
referencing system. Please also provide in-text citation and bibliography using Harvard referencing system.
The recommended word limit is 3,000–3,500 words, although you will not be penalised for exceeding the
total word limit.
Part 2: The submission should be in the form of a fully functional relational database system demonstrated to
the Tutor; and an individual written report (please see details in Part 1 above).
Part 3: The submission should be in the form of a witness statement of the testing completed by the Tutor;
technical documentation; and a written report (please see details in Part 1 above).
Unit Learning Outcomes:
LO1 Use an appropriate design tool to design a relational database system for a substantial
problem.
LO2 Develop a fully functional relational database system, based on an existing system
design.
LO3 Test the system against user and system requirements.
LO4 Produce technical and user documentation.
Assignment Brief and Guidance:
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 location.
There should also be a record kept of the staff types that are assigned to productions
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 Achieved Feedback
.
M2 Implement a fullyfunctional database system, which
includes system security and database maintenance.
(Assignment 01)
Table of Contents
LO1 Use an appropriate design tool to design a relational database system for a
substantial problem............................................................................................................19
1.1 User Requirements and system requirements...........................................................19
1.1.1 What are user requirements?..............................................................................19
1.1.2 What are system requirements?.........................................................................19
1.2Understanding Entity-Relationship Diagram (ERD) and Database Concepts..........21
1.2.1 Entity..................................................................................................................21
1.2.2 Attribute.............................................................................................................21
1.2.3 keys....................................................................................................................22
1.2.4 Relationships in a Database Overview:..............................................................24
1.2.5 Relational Schema..............................................................................................26
1.3Normalization............................................................................................................30
1.3.1Data Redundancy and Its Consequences.............................................................30
1.3.2Normalization Goals...........................................................................................30
1.2.3Common Normal Forms.....................................................................................31
1.4 Design set of simple interfaces to input and output for the above scenario using
Wireframe or any interface-designing tool.....................................................................41
1.4.1 Wireframe..........................................................................................................41
LO2....................................................................................................................................52
TABLE OF FIGURES
Figure 1 : Q.A ERD Diagram............................................................................................23
Figure 2 : One-to-One Relationship...................................................................................25
Figure 3 : Many-to-Many Relationship..............................................................................25
Figure 4 : One-to-Many Relationship................................................................................25
Figure 5 : Q.A Relational Schema.....................................................................................27
Figure 6 : Example Common Normal Form......................................................................32
Figure 7 : First Normal Form............................................................................................33
Figure 8 : Example Client Table.......................................................................................34
Figure 9: Example Production Table................................................................................35
Figure 10: Example Location Table..................................................................................36
Figure 11: Example Property Table..................................................................................37
Figure 12: Example Staff Details Table............................................................................38
Figure 13: Example Staff Adress Table............................................................................39
Figure 14: Example Staff Payment Table.........................................................................40
Figure 15 : (Wireframe) Quiet Attic Welcom Page...........................................................43
Figure 16 : (Wireframe) Quiet Attic Login Page...............................................................44
Figure 17 : (Wireframe) Quiet Attic Home Page...............................................................45
Figure 18 : (WIREFRAME) QUIET ATTIC Staff Page...................................................46
Figure 19 : (WIREFRAME) QUIET ATTIC Client Page.................................................47
Figure 20 : (WIREFRAME) QUIET ATTIC Production Page.........................................48
Figure 21 : (WIREFRAME) QUIET ATTIC Location Page.............................................49
Figure 22 : (WIREFRAME) QUIET ATTIC Property Page.............................................50
Figure 23 : (WIREFRAME) QUIET ATTIC Payment Page.............................................51
LO1 Use an appropriate design tool to design a relational database system for a
substantial problem
User requirements are like a wish list that people or groups have when they want a new
system, product, or service. These requirements are like a detailed map of what they want
the thing to do and how they want it to work. To figure this out, it's important to really
understand what they need, what they like, what might hold them back, and what they're
aiming for. This helps make sure that whatever gets created matches up with what they
had in mind.
Examples :
User registration
Usability
Security
Availability
Operating System
Database Software
Web Serve .
Processor ( CPU )
Memory ( RAM )
Storage
Network interface
User System
category requirements requirements
The easy user registration Database system to store
process user profiles
Intuitive and user-friendly Responsive design for
interface various devices
*Functional needs Ability to search and filter Fast loading times
products
Secure payment processing Integration with payment
gateway
Fixing language barriers for Multi-language support
global users for content
Order tracking and status Real-time order
updates processing
Fast loading times for product Server with sufficient
pages processing power and
memory
Secure access to personal Encryption for user data
*Non-Functional needs information
Availability of the website Redundant server setup
24/7 for high availability
User data privacy protection Compliance with data
protection regulations
User-friendly error messages Clear error reporting and
and feedback user guidance
TABLE 1: USER AND SYSTEM REQUIREMENTS
1.2.1 Entity
what is an entity
Strong entity
Weak entity
Strong Entity Example: Imagine a "Student" entity within an educational system. This
entity stands robust and independent, housing attributes like student ID, name, and
birthdate. It doesn't rely on anything else to exist in the database; it's self-sufficient and
complete.
Strong Entity Example: Imagine a "Student" entity within an educational system. This
entity stands robust and independent, housing attributes like student ID, name, and
birthdate. It doesn't rely on anything else to exist in the database; it's self-sufficient and
complete.
1.2.2 Attribute
What is an attribute
Attributes are like the distinct characteristics that define an entity's personality. To help
distinguish these traits, here are examples:
Composite Attribute
Atomic Attribute
Multivalued Attribute
Single-Valued Attribute
Derived Attribute
Stored Attribute
Single-Valued Attribute Example: For the entity "Product," the attribute "Price" is
single-valued, as it holds just one value for each product.
Derived Attribute Example: Suppose you have an entity "Person" with attributes
"Birthdate" and "Current Date." You can calculate the "Age" attribute by subtracting
"Birthdate" from "Current Date."
1.2.3 keys
Keys are the keys to understanding relationships and identifying entities. Let's explore
types of keys :
Candidate Keys
Primary Key
Foreign Key
Candidate Keys Example: Think of an entity "Library Book." Its candidate keys could
be "ISBN" and "Library Catalog Number," both unique and essential for identification.
Primary Key Example: Among the candidate keys, "ISBN" could be chosen as the
primary key for the "Library Book" entity. It's the chief identifier in the table.
Foreign Key Example: Now, consider an entity "Borrowing Record." In this entity,
"ISBN" could be a foreign key linking back to the "Library Book" entity. It forms a
connection between the borrowing record and the book.
FIGURE 1 : Q.A ERD DIAGRAM
1.2.4 Relationships in a Database Overview:
In a relational database, relationships define how data in different tables connect with
each other. Establishing and understanding these relationships is crucial for designing a
robust and efficient database structure. There are three primary types of relationships:
one-to-one, one-to-many, and many-to-many.
Database relationships define the associations between tables, determining how data is
related and can be accessed across different entities. These relationships are expressed
through foreign keys, which link a field in one table to the primary key of another.
One-to-One Relationship:
Example:
A "Person" entity is related to a "Passport" entity. Each person has one passport,
and each passport belongs to one person.
One-to-Many Relationship:
Example:
Many-to-Many Relationship:
Example:
What is Normalization
Normalization is a crucial process in database design that aims to optimize data storage,
reduce redundancy, and enhance data integrity. It involves organizing data within tables
to minimize data anomalies and inconsistencies, such as data repetition and incorrect
information.
Data redundancy occurs when the same data is duplicated across different records in a
database. This redundancy can lead to various issues:
1.3.2Normalization Goals
First Normal Form (1NF): This form ensures that data is atomic, meaning that there are
no repeating groups or multivalued attributes. It's a foundation for further normalization.
1.4.1 Wireframe
What is a wireframe ?
2. Layout: Wireframes help establish the overall layout and grid system of a design,
specifying the positioning of content and how it will adapt to different screen sizes
or devices.
4. Simplicity: Wireframes are intentionally kept simple, often using basic shapes
and placeholder text. They prioritize clarity and ease of understanding over visual
aesthetics..
Examples of wireframes:
Low-Fidelity Wireframe: These are simple, basic sketches that outline the
structure and components of a webpage or app without much detail. They can be
hand-drawn on paper or created using wireframing software. For example, a low-
fidelity wireframe might use boxes to represent images, buttons, and text, with
arrows indicating navigation flow.
High-Fidelity Wireframe: These wireframes are more detailed and may include
placeholder text, icons, and images. While they still lack full visual design, high-
fidelity wireframes provide a clearer representation of how the final product might
look and function.
Overall, wireframes are valuable tools for designers, developers, and stakeholders to
collaborate and ensure that a digital product's structure and functionality meet the
intended goals before investing in the full design and development process.
The Welcome Page serves as the gateway to the Quick Attic platform, providing
users with a cinematic introduction to their experience. A prominent "Login to
Continue" button invites users to embark on their cinematic journey by accessing
the platform. This welcoming page sets the stage for what's to come, offering a
sneak peek of the excitement that awaits.
The Login Page offers a streamlined login process with just "Enter" and "Exit"
buttons. Users can simply press "Enter" to access the platform, ensuring a user-
friendly and efficient login experience, much like a well-edited film scene that
keeps the narrative moving forward smoothly.
FIGURE 17 : (WIREFRAME) QUIET ATTIC HOME PAGE
Quiet Attic Home Page:
The Home Page is the epicenter of Quick Attic's digital presence, setting the stage
for the cinematic journey. It curates essential content, including news updates,
featured projects, and announcements, engaging visitors and preparing them for
their filmic adventure. This page resembles the opening sequence of a film,
capturing the audience's attention and curiosity.
This wireframe represents the interface for inputting staff details into the database.
It features intuitive buttons for adding new staff members, updating staff
information, and clearing inputs. The interface is meticulously designed to
streamline staff management, akin to a film director orchestrating the talents of a
diverse cast, ensuring that each staff member is in the right place at the right time.
The Client Page provides a user-friendly interface for inputting and managing
client details. Users can effortlessly add new client profiles, clear client data, and
update client information. The "Home" button ensures a seamless return to the
main page, guaranteeing a smooth and efficient experience, much like a film
director skillfully managing the characters in a story.
FIGURE 20 : (WIREFRAME) QUIET ATTIC PRODUCTION PAGE
The Production Page acts as an interface for inputting and managing production-
related data within the database. It offers options for booking new productions,
updating production details, and clearing inputs. The "Back to Home" button
ensures a smooth return to the main page, much like orchestrating the various
elements of a film production to create a compelling narrative.
The Location Page is designed for inputting and managing location details within
the database. It features fields for efficiently recording and updating location data.
This user-friendly interface streamlines location management.
This wireframe illustrates the interface for inputting and managing property
details in the database. It provides options for adding new property listings,
updating property information, and clearing inputs. The "Back to Home" button
seamlessly returns to the main page, ensuring efficient property management.
The Payment Page represents the interface for inputting and managing payment
details in the database. Users can make payments, update payment information,
and clear inputs. The "Back to Home" button facilitates a quick return to the main
page.
Activity 02
Develop a relational database system according to the ER diagram you have created (Use
SQL DDL statements
2.1 SQL
What Is SQL ?
SQL stands for Structured Query Language. It is a standard language for interacting with
relational databases. SQL is used to perform tasks such as creating and modifying
database structures, inserting, updating, and deleting data, and querying information from
databases.
FirstName VARCHAR(50),
LastName VARCHAR(50)
);
COMMIT;
Why SQL?
Declarative Language:
SQL allows users to declare what data they want without specifying how to get it. This
declarative nature makes it user-friendly.
Scalability:
SQL databases can handle large amounts of data and provide efficient ways to retrieve
and manipulate it.
Data Integrity:
SQL enforces data integrity constraints, ensuring the accuracy and reliability of the stored
data.
Standardization:
Versatility:
SQL can perform a wide range of tasks, from simple data queries to complex data
manipulation and management operations.
_______________________________________________________________________
2.1.1Creating a database
FIGURE 25 : EXECUTING
Now press refresh to view your new Database
You can auto generate your command if needed depending on the platform you created
your erd
Creating ERD > Generating relational scema > AUTO generating SQL commands
Activity 3
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.
INTERFACE
What is an Interface?
An interface, in the context of software and systems, serves as the point of interaction
between different components, systems, or users. It defines the methods and protocols by
which entities communicate or exchange information. Interfaces can take various forms,
each serving a specific purpose in facilitating interaction within a system. In the context
of database systems, interfaces can include user interfaces (UI), application programming
interfaces (APIs), or any mechanism through which users or systems interact with the
database.
WELCOME PAGE
HOME PAGE
PROPERTY PAGE
PRODUCTION PAGE
STAFF PAGE
Ensure that the database interfaces meet user and system requirements by testing various
aspects of interaction.
Test Cases:
2.Insert Data:
Scenario: Verify the system's ability to insert data through the interface.
Steps:
Use the interface to insert a new employee record.
Confirm that the data reflects correctly in the database.
3.Update Data:
4.Delete Data:
Test 01
System Name : Quiet Attic Film Production System
Page : Welcome
Buttons Used : Login_To_Continue
Expected output : Page
(Button)
Should open
click LOGIN page
Login_To_Continue
pass
(SPACE LEFT INTENTIONALLY)
Test 02
System Name : Quiet Attic Film Production System
Page : Login
Buttons Used : Login ,Exit
Expected output : Page
Should forward to
Home page
LOGIN
pass
Should exit
EXIT pass
Test 03
System Name : Quiet Attic Film Production System
Page : Home
Buttons Used : Production , Location , Client , Staff , Payment , Property ,Login ,Exit
Expected output : Page
(space left intentionally)
Should forward to
Client page
CLIENT
pass
Should forward to
Property page
PROPERTY pass
Should forward to
Location page
pass
LOCATION
Should forward to
Production page
PRODUCTION
pass
Should forward to
Payment page
PAYMENT pass
Should forward to
Staff page
STAFF pass
Should forward to
Login page
LOGOUT pass
Should Exit
EXIT pass
(space left intentionally)
Test 04
System Name : Quiet Attic Film Production System
Page : Client
Buttons Used : Add , Update , Clear , Home
Expected output : MessageBox & Page
Should show a
message box
ADD
pass
Should show a
message box
When client id is
entered and another
message box after
updating
UPDATE
pass
Should show a
message box
CLEAR
pass
Should forward to
home page
HOME
pass
Test 05
System Name : Quiet Attic Film Production System
Page : Property
Buttons Used : Add , Update , Clear , Home
Expected output : MessageBox & Page
Should show a
message box
ADD
pass
Should show a
message box
When property id is
entered and another
UPDATE message box after
updating
pass
Should show a
confirmation
message box
CLEAR When clear button is
pressed and another
message box after
saying yes
Pass
Should forward to
home page
HOME
pass
Test 06
System Name : Quiet Attic Film Production System
Page : Location
Buttons Used : Add , Update , Clear , Home
Expected output : MessageBox & Page
Should show a
message box
ADD
pass
Should show a
message box
When Location id is
entered and another
UPDATE message box after
updating
pass
Should show a
confirmation
message box
CLEAR When clear button is
pressed and another
message box after
saying yes
Pass
Should forward to
home page
HOME
pass
Test 07
System Name : Quiet Attic Film Production System
Page : Production
Buttons Used : Add , Update , Clear , Home
Expected output : MessageBox & Page
Should show a
message box
ADD
pass
Should show a
message box
When Client id is
entered and another
UPDATE message box after
updating
pass
Should show a
confirmation
message box
CLEAR When clear button is
pressed and another
message box after
saying yes
Pass
Should forward to
home page
HOME
pass
Test 08
System Name : Quiet Attic Film Production System
Page : Payment
Buttons Used : Add , Update , Clear , Home
Expected output : MessageBox & Page
Should show a
message box
ADD
pass
Should show a
message box
When Payment id is
entered and another
UPDATE message box after
updating
pass
Should show a
confirmation
message box
CLEAR When clear button is
pressed and another
message box after
saying yes
Pass
Should forward to
home page
HOME
pass
Test 09
System Name : Quiet Attic Film Production System
Page : Client
Buttons Used : Add , Update , Clear , Home
Expected output : MessageBox & Page
Should show a
message box
ADD
pass
Should show a
message box
When client id is
entered and another
message box after
updating
UPDATE
pass
Should show a
confirmation
message box
When clear button is
pressed and another
message box after
saying yes
CLEAR
pass
Should forward to
home page
HOME
pass
3.1.2 User Interaction Impact on Database and Data visibility
User interactions dynamically influence the SQL database through data addition,
updating, and deletion processes.
Data Addition:
Users add new data by triggering SQL INSERT statements. These statements validate
input, enforce data integrity constraints, and append new information to relevant tables.
For instance, registering a new customer involves executing an INSERT query to update
the customer table.
Data Updating:
Users modify existing data by triggering SQL UPDATE statements. These statements
allow users to change specific values in records, ensuring the database reflects the most
current information. For example, updating a customer's address involves executing an
UPDATE query to modify the corresponding data in the customer table.
Data Deletion:
Users initiate data deletion through SQL DELETE statements, removing specific records
from the database based on specified criteria. This maintains database cleanliness,
eliminating outdated or unnecessary information. For example, deleting a product from an
e-commerce system executes a DELETE query to update the database by removing the
product details.
In summary, user interactions dynamically shape the SQL database by adding, updating,
and removing data, ensuring it aligns with the evolving needs of the system's users.
CLIENT
(Button ADD)
How User interaction affected SQL after Entering details to Form and entering button
ADD
How User interaction affected SQL after Entering details to Form and entering button
UPDATE
How User interaction affected SQL after Entering details to Form and entering button --
CLEAR
PROPERTY
(Button ADD)
How User interaction affected SQL after Entering details to Form and entering button
ADD
(Button UPDATE)
How User interaction affected SQL after Entering details to Form and entering button
UPDATE
(Button CLEAR)
How User interaction affected SQL after Entering details to Form and entering button
CLEAR
(Button ADD)
How User interaction affected SQL after Entering details to Form and entering button
ADD
(Button UPDATE)
How User interaction affected SQL after Entering details to Form and entering button
UPDATE
(Button CLEAR)
How User interaction affected SQL after Entering details to Form and entering button
CLEAR
(Button ADD)
How User interaction affected SQL after Entering details to Form and entering button
ADD
(Button UPDATE)
How User interaction affected SQL after Entering details to Form and entering button
UPDATE
(Button CLEAR)
How User interaction affected SQL after Entering details to Form and entering button
CLEAR
(Button ADD)
How User interaction affected SQL after Entering details to Form and entering button
ADD
How User interaction affected SQL after Entering details to Form and entering button
UPDATE
How User interaction affected SQL after Entering details to Form and entering button
CLEAR
(Button ADD)
How User interaction affected SQL after Entering details to Form and entering button
ADD
How User interaction affected SQL after Entering details to Form and entering button
UPDATE
(Button ClEAR)
How User interaction affected SQL after Entering details to Form and entering button
CLEAR
Testing is an indispensable process for ensuring that the Quiet Attic Film Production
System aligns with the specified requirements and operates free of defects. The primary
objective is to identify and rectify errors, bugs, or any discrepancies compared to the
expected criteria. A meticulously tested software product guarantees reliability, security,
and high performance, ultimately leading to time and cost savings and ensuring customer
satisfaction. Testing for the Quiet Attic Film Production System includes various types,
such as Functional Testing, Non-functional Testing, and Maintenance.
Testing Types:
Functional Testing:
Non-functional Testing:
Concentrates on evaluating the complete and fully integrated software product, exercising
the full computer-based system. Known as System Testing, this black box testing
validates end-to-end system specifications.
Maintenance:
Involves testing software modules logically integrated as a group, exposing defects when
modules are combined. Emphasizes interfaces and data flow between modules, crucial for
maintaining system integrity.
Testing Strategies:
Unit Testing:
Validates the complete and fully integrated software product, assessing end-to-end system
specifications. A black box testing technique focused on exercising the full computer-
based system.
Integration Testing:
Software modules are logically integrated and tested as a group, with a primary focus on
exposing defects in integrated modules. Emphasis is on interfaces and data flow between
modules.
In the context of Quiet Attic, each module undergoes testing due to their interconnected
nature. Thorough testing of each data component is essential, considering errors in any
module could potentially impact the entire system. Comprehensive testing of the entire
system in a single run is crucial to assess its overall effectiveness. Given the significance
of data as an organizational asset, the integrity barriers of the database schemes play a
crucial role in protecting valuable data. Database testing is mandatory to ensure the
evolutionary development of Quiet Attic. Positive test results instill confidence in the
well-developed database for the Quiet Attic Film Production System.
3.1.4 Conclusion: Testing Quiet Attic Film Production System
In conclusion, the testing phase for the Quiet Attic Film Production System has been a
critical and illuminating process. Our comprehensive test plan, encompassing unit,
integration, system, performance, security, and user acceptance testing, aimed to ensure
the system's alignment with both user and system requirements. The following key
observations and conclusions can be drawn from the testing endeavors:
Functional Validation:
Unit and integration testing verified the correctness of individual components and their
seamless integration, showcasing the reliability of data transfer mechanisms to and from
SQL databases.
End-to-End Performance:
System testing demonstrated the robustness of the film production system, highlighting its
ability to perform end-to-end operations, including the welcome page interactions and
API functionality.
Performance testing assessed the system's scalability, revealing that it efficiently handles
varying loads. The system's responsiveness across different devices and screen
resolutions was consistent, ensuring a positive user experience.
Security Measures:
Security testing confirmed the effectiveness of access controls and the secure
transmission of data to the SQL database, fortifying the system against potential
vulnerabilities.
User Acceptance and Usability:
User acceptance testing engaged end-users, providing valuable insights into the system's
usability. Feedback indicated a positive reception, affirming that the welcome page and
API interactions meet user expectations.
The selection of diverse and relevant test data proved instrumental in uncovering potential
issues related to scalability, security, and data integrity. It served as a robust foundation
for comprehensive testing, contributing to the overall effectiveness of the evaluation
process.
Continuous Improvement:
As we move forward, the testing outcomes offer valuable feedback for continuous
improvement. Identified areas of success will be maintained, while any discrepancies will
be addressed promptly to enhance the system's overall performance and user satisfaction.
In essence, the testing phase has not only validated the Quiet Attic Film Production
System's adherence to user and system requirements but has also provided a roadmap for
refining and optimizing its capabilities. This comprehensive evaluation positions the
system for a successful and efficient role in the film production workflow.
For the purpose of obtaining independent feedback on the Quiet Attic Film Production
System, I have chosen to utilize Google Forms as the primary feedback collection
method. This involves seeking insights from both non-technical users and developers
through surveys. The rationale behind this choice and the process is detailed below:
Accessibility:
audience.
Ease of Use:
The intuitive design simplifies the feedback process, encouraging a higher response rate.
Supports various question types for diverse feedback, capturing both qualitative and
quantitative insights.
Effortless Distribution:
Seamless distribution via email, social media, or other channels ensures broad
participation.
Real-Time Responses:
Seamless integration with other Google tools streamlines data management and analysis.
3.2.1 Process of Feedback Collection:
Form Creation:
A Google Form has been created with a clear title, description, and a mix of question
types.
Distribution:
The form will be shared with non-technical users , friends and developers through
relevant channels.
Embedded images within the form provide context and clarity for respondents.
3.2.2 Responses Received From The Feedback
Upon collecting responses from the feedback on the Quiet Attic Film Production System
using Google Forms, several valuable insights were obtained from both non-technical
users and developers. The feedback has been categorized and summarized as follows:
User-Friendliness:
Navigation Experience:
Positive responses were received regarding the navigation experience, with users
expressing ease in accessing various features.
Some users provided suggestions for enhancing the visual appeal of the welcome page,
emphasizing the importance of a captivating first impression.
Technical Challenges:
A few developers noted minor technical challenges during the integration process but
acknowledged that they were addressed promptly.
Activity 04
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.
QUIET ATTIC
Key Features:
Staff members, clients, and other users can register and manage their profiles within the
system, providing essential details for streamlined communication and collaboration.
Client and Location Management:
Clients can be registered, and their information can be easily accessed, facilitating
seamless communication and project tracking. Locations for film productions can also be
managed efficiently.
Financial Management:
The system includes a robust financial module for managing payments, ensuring
transparency in financial transactions related to productions, staff salaries, and other
financial aspects.
Production Management:
Efficiently manage all aspects of film productions, including project timelines, crew
assignments, script details, and production schedules.
Property Management:
Track and manage properties used in film productions, including equipment, sets, and
other assets. This feature ensures optimal resource allocation and prevents unnecessary
expenditures.
The system offers reporting and analytics capabilities to provide insights into various
aspects of film production, aiding decision-making and project evaluation.
Technical Overview:
The Quiet Attic System is built on a relational database using SQL, allowing for
efficient storage, retrieval, and manipulation of data. The system incorporates a user-
friendly interface for staff, clients, and other stakeholders, making it accessible and easy
to navigate. It ensures data integrity through appropriate constraints and security
mechanisms, safeguarding sensitive information.
Streamlined Operations:
The system simplifies and automates many administrative tasks, reducing manual efforts
and enhancing overall efficiency.
Enhanced Collaboration:
Facilitates effective communication and collaboration among staff members, clients, and
other stakeholders involved in film production.
Financial Transparency:
Data-Driven Decision-Making:
Offers valuable insights through reporting and analytics, enabling informed decision-
making for improved project management and resource allocation.
The Quiet Attic System aims to revolutionize film production management by providing
a centralized platform that integrates various aspects of the production process. Through
its user-friendly interface and powerful features, the system empowers film production
companies to focus on creativity while efficiently managing logistical and
administrative tasks.
4.2 ---------Technical Documentation------------
Hardware Specifications:
Processor:
Memory (RAM):
Minimum: 4 GB.
Recommended: 8 GB or higher.
Storage:
Graphics Card:
Network Connection:
Software Specifications:
Operating System:
Windows 10 or later.
Development Environment:
SQL Server (latest version preferred) for data storage and retrieval.
Additional Software:
Microsoft .NET Framework: Ensure that the system has the required .NET Framework
version installed for compatibility with Visual Studio and other dependencies.
Recommendations:
Collaboration Tools:
Utilize collaboration tools such as Microsoft Teams or Slack for effective communication
among team members.
Backup Solutions:
Development Environment:
Consider using Visual Studio 2019 or later for the best compatibility with the latest
technologies and tools.
Note:
These specifications are designed to ensure the Quiet Attic System runs optimally on the
user's hardware and software environment. Adjustments may be needed based on specific
features, data volumes, and future enhancements. Regular updates and patches for the
operating system, development environment, and database management system are
recommended for security and performance. Always check for the latest hardware and
software recommendations from Microsoft and other relevant vendors.
Class Diagram
Description:
Purpose: The Level 0 DFD provides a high-level overview of the entire system, capturing
the main processes and the flow of data between them.
Components:
External Entities (Rectangles): Represent external entities that interact with the system.
These can be users, external systems, or data sources.
Data Flows (Arrows): Represent the flow of data between processes and external entities.
Data Flow Diagram (DFD) Level 1:
Description:
Purpose: The Level 1 DFD expands on one of the processes from the Level 0 DFD,
providing more detail about the internal workings of that process.
Components:
Processes (Squares): These are decomposed into sub-processes, providing a more detailed
view of the activities within the selected process.
Data Stores (Two parallel lines): Represent storage locations where data is maintained.
Data Flows (Arrows): Represent the flow of data between processes, data stores, and
external entities.
Use Case Diagram
FLOW CHARTS
Admin login : ,
Add : ,
QUIET ATTIC
Thank you for selecting Quiet Attic Film Production System to meet your software needs.
We are thrilled to embark on this journey with you and are dedicated to delivering a
seamless and enriching experience.
Should you require any assistance or have inquiries, our customer hotline is at your
service. Your feedback is highly appreciated, and our team is here to support you in every
step of the way.
Best Regards,
CLIENT
ADD
PODUCTION UPDATE
CLEAR
ADD
PAYMENT UPDATE
CLEAR
ADD
STAFF UPDATE
CLEAR
ADD
LOCATION UPDATE
CLEAR
ADD
PROPERTY UPDATE
CLEAR
Guide to the system.
This guide is designed to assist you in navigating and utilizing each area effectively.
Whether you're a client, staff member, or involved in the production process, Quiet Attic
Film Production System is here to streamline your operations. Refer to this guide for step-
by-step instructions and make the most of your film production endeavors with Quiet
Attic!
To have a successful login you should enter the correct USER NAME & PASSWORD
incase you failed to enter the the correct correct USER NAME & PASSWORD you
would be shown the below textbox by the system
If you successfully entered User Name and Password you would be forwarded to the
home page as below shown
This is the easiest this you could do here as for the user friendly system you could easily
navigate throughout the system using the above buttons (CLIENT , PROPERTY ,
LOCATION , PRODUCTION , PAYMENT , STAFF ) . Incase you want to logout or
exit
Step 03 : ADDING , UPDATING and CLEARING data
For this I am not going to be including all the pages because all works at the same way.
Below shows how client table interact and respond when you Add Update and Clear data
and btw you might be wondering what is Home button don’t worry its just forwards you
to Home 😊.
Adding of Details
Retrieving details
To update the Details first you must enter your already existing ClientID after that it
would load already existing/entered details
Updating details
After retrieving your details now you can update as you wish then press update again
As if the last time this works similar . first you need to enter client id YOUR ALREADY
EXISTING then after that it would show you a confirmation messagebox which you need
to select yes or no after that you could see your data disappear from the database (be
mindful before deleting your data)
CONFIRMATION MESSAGE :
Viewing the data/details in SQL Server :
To View your details you saved in the SQL Open SQL server management software >
connect to the database and follow the bellow image instructions
ERROR 01
There seems to be an issue when inserting details into the payment and production tables
using the client ID. The problem arises when I attempt to delete the client ID without
removing the associated payment and production IDs. It prevents the deletion of the client
ID, indicating an error in the process.
In simple terms
You need to delete all the data that were made using the same client id in terms related
parties
ERROR 02
This error occurs when you try to add the same client id that’s already in the system so
please be mindful to no add already existing cliendids to the system again
As quiet attic development team we are aware of this errors and we are in the process of
fixing these error but be rest assured we give you our full confidence that we would fix
these errors asap and give you a quality system experience and we are extremely sorry
that you gotta face these errors . if you got any other assistance needed be kind enough to
contact us through the email that we provided and once again we apologies for the
inconvenience