4. Requirement Analysis - 1
FUNCTIONAL
1. This is a family-owned business, and
2. They used to manage all services on
pen and paper,
3. Yet, it has grown to the point where this
method has become unfeasible and
4. Therefore, looking to professionalise
the management of the operation.
5. Requirement Analysis - 2
DATABASE
You have been contracted to
design and develop
a database system for the small SME
that provides services to
local end consumers.
The SME provides small home repairs like:
• Indoor painting,
• Joinery,
• Hand tools & etc
6. DATA - Requirement Analysis – 3
ENTITIES
These are:
• CLIENT
• EMPLOYEE
• SERVICE CATALOGUE
• INVOICE
7. CLIENT:
The system needs to store client details:
• CRUD operations on client details must
be allowed through forms
• Envisioned schema for this entity is:
• ClientID,
• ClientName,
• ClientAddress,
• ClientEmail,
• ClientMobile
8. EMPLOYEE:
• CRUD operations on client details must be
allowed through forms
• Envisioned schema for this entity includes:
• EmployeeID,
• EmployeePayrollNumber,
• EmployeeName,
• EmployeeMobile
• However, a solution (DS1) is needed to
• design a way to connect the
• Employee Entity with the Service Catalogue
• (DS1 = ClientAppointments)
9. SERVICE CATALOGUE:
The System must maintain a
catalogue of service offered
(such as: - Indoor Painting, Exterior Painting, Joinery, “Etc”)
• All services are offered at a base
• cost-per-hour rate
• plus expenses.
• Envisioned schema for this entity is:
• ServiceID,
• ServiceName,
• ServiceDescription,
• ServiceHourlyRate
10. SERVICE CATALOGUE:
At this point:
• A solution (DS2) is needed to:
• Design a way to connect ENTITIES
• Service with the CustomerCataloge
(i.e ServicesProvided):
Which conveys services performed to:
• Each customer
• On a specific date,
• Reporting the expenses &
• 3NF compliant
11. INVOICE
• An invoice is an Entity that provides flexibility to DS2.
• This allows the business to offer discounts and
• be more competitive in larger jobs.
Envisioned schema for this entity is
• InvoiceID,
• InvoiceNumber,
• InvoiceCost,
• InvoiceDiscount,
• InvoiceTotal
A solution (DS3) is needed to
• Design a way to connect ENTITIES
Invoice with the ClientAppointments (DS1)
• That is 3NF compliant and
• Conveys which appointments have been grouped together
• to produce an Invoice.
12. Other Requirements are:
2. INVOICE
• An invoice is an Entity that provides flexibility to DS2.
• This allows the business to offer discounts and
• be more competitive in larger jobs.
• Envisioned schema for this entity is
• InvoiceID,
• InvoiceNumber,
• InvoiceCost,
• InvoiceDiscount,
• InvoiceTotal
3. A solution (DS3) is needed to
• Design a way to connect the
• Invoice Entity with the ClientAppointments (DS1)
• That is 3NF compliant and
• Conveys which appointments have been grouped together
• to produce an Invoice.
13. Conceptualization
You have been contracted to:
a. Design and deliver a Database system
b. Using Microsoft Access.
c. Meet the aim of the stakeholders; which are:
To create a robust DBMS that efficiently manages:
a. Core entities,
b. Services,
c. Customers,
d. Orders, and Payments,
to facilitate seamless transactions and enhance
the overall user experience.
NB: - All services are offered at a base
cost-per-hour rate plus expenses.
14. PART – 4
RELATIONSHIPS
As per the description above,
the following Entity Relationships
have been identified, (see DS1, DS2 and DS3)
which are:
a. ClientAppointments,
b. ServicesProvided
c. InvoiceRows
15. PART – 4A
ClientAppointments
RELATIONSHIP
A one-to-many relationship
between Service and Client.
Here –
➢ Client can have multiple appointments,
➢ but each appointment is associated with a single
client.
➢ This relationship also details the EmployeeID that
provides the service &
➢ It is with an integrity constrain that the Employee
is able to provide the service.
16. 4B - Other Relationships
ServicesProvided
A many-to-many relationship
between Service and Employee.
But an employee can
provide multiple services.
InvoiceRows,
• a one-to-many relationship
• This is between Invoice &
ClientAppointments.
17. GENERAL PROCEDURE
Using the Entity-Relationship (ER)
- You are required to:
DESIGN & IMPLEMENT
this database system through:
a. Data requirements analysis,
b. Conceptual design logical design
c. Implement and testing using MS Access.
The above specification lists the bare minimum needs.
However, for everything you do to develop this;
• You are required to document &
• Present a formative-based academic report.
18. Task - 1
CONCEPTUALIZATION
Using the concepts of the
Entity-Relationship (ER) data modelling.
Create a
Conceptual Schema
for the above database system
14%
19. Task – 1B - PROCEDURE
a. Show the following design steps:
• Draw partial ER diagrams
• Showing each entity and all its attributes individually;
b. Complete the ER diagram by using the notation shown in
the example of the Student relation given below:
c. Student
• bannerID = [PK],
• fName,
• lName,
• address,
• gender,
• NIN,
• compID,
• DOB,
• ProgrammeTitle
1. Primary key: = bannerID
2. Foreign key: = ProgrammeTitle
references Programme(pTitle)
3. Alternate key: = NIN
20. TASK-1C CONSIDERATIONS
Only primary key attributes should be
included in the simplified ER diagram
Your ER diagram must make use of the
building blocks of ER diagrams;
which including
• Primary key
• Alternate keys, (simple or composite),
• Composite attribute,
• Multi-valued attribute,
• Attribute of a relationship,
• Recursive relationship,
• 1:1 relationship,
• 1:M relationship, and
• M:N relationship, among others.
21. Task - 2
IMPLEMENTATION
Process
Create the
TABLES & RELATIONSHIPS
NB:
• All the elements shown above in blue in your relational
schema must be properly implemented.
• Enforce the referential integrity including
• update rules on each of the relationships btw tables
• Moreover, set field properties and in particular:
14%
22. Task - 3
POPULATE
the Tables with Data
a. Populate the tables with meaningful data.
b. Enter sufficient data that reflect:
• Relationships
• Structural constraints
• Participation constraints and
• Cardinality ratio specified with ‘min..max’) &
• Test with the queries in Task 4
2%
23. Task - 4
QUERY
the Database
Using SQL script
a. Write at least 10 queries and
b. Run them in your database,
c. Thereafter –
d. Show that your SQL lines work
(using screen capture)
9%
24. Task - 5
APPLICATION
of the Database
a. Develop & implement a MS-Access based application
• that will allow the database users
• to access and retrieve data from the database.
In your report
• The MS-Access based application should show or have:
• A 'user friendly' graphical interface.
• Allow the users to perform the following:
i. Run Use Cases for the System;
ii. View data in Tables Employee and
iii. Clients from the datasheet view
7%
25. Task - 6
CRITICAL
EVALUATION
Submit a critical assessment of your work you
learned to design and implement a relational database.
The value of this coursework in terms of:
• Understanding
• Appreciating
• The techniques &
• Methods (or otherwise)
Lastly - things that must be included here -
from each member of the group are:
a. A brief statement of ‘my contributions’
b. Must not be longer than one page.
27. Note: - your coursework report should be typed using
Microsoft Word and nothing else
(e.g, PDF or any other software)
The report should have:
i. A cover sheet with the names and banner id of
all students involved in the submission.
ii. Heading for each task.
iii.Explain your reasoning and
iv.Provide adequate evidence of the work
(through screenshots, SQL statements, as necessary for each task).
➢ ONLY the TEAM LEAD can upload the report to the Aula.
➢ Keep your database safe until you have received the
official marks of the term, as you can be asked to
demonstrate your database.
➢ Zipped/ compressed your files at the submission point.
28. PRIVACY & SECURITY
The design presented above has no considered
data privacy and security requirements.
You are requested to produce a one-page critique of
the issues that can potentially become incidents.
You should include:
a. An Identification of Sensitive data
b. Data protection measures that you would add to design
c. GDPR compliance.
d. Reflect on data minimization,
e. Purpose limitation,
f. Storage limitation &
g. Data subject rights (e.g., right to access, rectify, or erase personal data).
h. Provide recommendations on how the system can adhere to these
principles and ensure the lawful processing of personal data.
30. Plagiarism is a serious offense
in academia.
All submissions will be checked
for plagiarism.
Students should submit their
own work,
As copied, or downloaded work
will lead to zero marks. 30