Database Management, CSCI 3423, Fall 2021 Computer Science Division

profilebishnu
ProjectDescription.docx

Project Description:

In this project, you will design and implement a database to a Kindergarten (pick a name). This database

will be used to store/maintain various types of data to help run the business. This database should help the

Kindergarten management/staff to store, retrieve and modify students and employee’s information,

financials, health records, inventory records … etc.

The final project is composed of three parts:

• Part 1: Project proposal (10%)

• Part 2: Project implementation (60%)

• Part 3: Project Presentation (30%)

Part 1 – Project Proposal – due October 19th @ 11:00 pm:

Report 1 Contents (1-2 pages):

• What data will your database store? You can list a preliminary set of entities/attributes that will

be in the database, no relationships required at this time. Keep in mind that it is likely that your

entities/attributes will be incomplete and will be changed later. The more time and effort you put

in it, the less time you need to spend modifying it later in the project!

• List 10 questions (Not SQL) that can be answered by querying the database (e.g., How many

students did not get the flu vaccine last year?)

Part 2: - Project Implementation – due Nov 20st @ 11:00 pm:

Report 2 Contents:

1) Project goals.

2) Database description: A general description of the database, what data is stored in the database.

How the database will benefit the users.

3) Data model & design:

o Completed ER/EER diagram, 5 tables minimum (8 tables in case the group has 2

members)

 MUST use https://www.draw.io to draw the ER diagram, and then take a

snapshot.

 Include a snapshot of the diagram in the report.

o Business rules.

o Data dictionary: For each one of the tables, list columns, data types, column restrictions,

column descriptions.

4) Implementation:

o Use MySQL Server and MySQL Workbench to create the database/tables.

 Include a snapshot of the SQL code in your report

o Populate the each table with a minimum of 20 rows of sample data. Make sure the

entered data is descriptive (not just random numbers and letters.

 Include a snapshot of the SQL code in your report.

o Use MySQL Server and MySQL Workbench to write/run the SQL queries below. For

each query, provide the following in Report 2:

 Snapshot of the code and the output in the report.

 In about 2 lines, explain what the query returns.

Queries:

 1 trivial query. Simple select with ordering.

 2 medium difficulty queries. Queries that use composite condition for selection,

computations, aggregate function and grouping.

 1 query that uses subquery.

 2 queries that uses join (1 inner join, 1 left or right outer join).

 1 view (query must use join – hint: you can use one of the queries from the

previous question).

 1 query that uses union.

 1 custom stored function.

 1 custom stored procedure.