Reference no: EM132633882
COIT20247 - Database Design and Development Assignment - Central Queensland University, Australia
Part A - Database implementation using MS Access
Introduction - The sample solution of assignment 1 will be released on the unit website approximately two (2) weeks after the assignment 1 due date. You must use that sample solution of assignment 1 only for the following tasks:
Assessment task -
1. Normalization
a) Map the ERD, from the sample solution, into a set of relations in at least Third Normal Form (3NF). You must ensure that your relations meet 3NF. There is no need to show your working.
b) Select any two of your relations from the previous step, 1a), and perform the following for each of those two relations:
List all the functional dependencies exist in the relation.
Demonstrate that the relation meets Third Normal Form (3NF).
2. Relational database implementation
In implementing the ER model provided, you must complete the following tasks:
Create all the relations in a Microsoft Access database. Consider each attribute in every table and make appropriate choices regarding data types & sizes, indexes, required/not required and validation rules. Your choices should be appropriate for each attribute and should support data integrity. (Note: see the Data Integrity section below for specific data integrity requirements)
Create relationships as appropriate. Enforce referential integrity for all appropriate relationships in the database. Apply cascade update and/or delete options wherever necessary.
Review the default index created by Access for each table. You should ensure that the indexes follow the guidelines given in the unit textbook.
Populate the database with sample data of your own. You must include sufficient sample data to test your queries and report. Please note that the expected result of query questions may depend on the actual sample data populated.
Data integrity
You are required to implement integrity constraints within the database to enforce the following requirements:
For the test table, the result of test only can take the value either 'positive' or 'negative'.
For the hospital table, the number of respiratory machines must be in the range between 0 and 1000.
The treatment description in the treatment table should not be blank.
For the test table, the primary key testID must be consisted of a letter 'T' (or 't') and following three digits.
Information requests
Create queries to answer the following information requests. Note: Do not use the Access query builder (QBE) to create your queries - you should type the queries manually using SQL view /editor.
The marking process of the queries for information requests may also consider the effectiveness of your SQL statements that have been used in the queries. It is important that your SQL statement must reflect the correct business logic & SQL syntax. (Note: Use enough sample data so that the output is produced by each and every query).
Question 1. List the full names, phones, and ages for these patients whose home addresses are either in Brisbane or Gold Coast, and their ages are greater than 60 years old. Order by their family names.
Question 2. There are many doctors in each hospital. But not every doctor participates in the treatment work due to their different specialties and other tasks. List the names and specialties of doctors, who are working at Princess Alexandra Hospital in Brisbane and have not participated in the treatment work of corona virus-infected patients.
Question 3. List details of the patients from Rockhampton and their closely contacted persons. These details include patient's full names and phones, closely contacted person's full names and phones, as well as the contact process or scenario descriptions.
Question 4. List the names, phones, and the number of virus tests for the patients who are from Brisbane.
Question 5. Which hospitals have the highest number of respiratory machines? Find out the names of the hospitals, their phones, and the number of respiratory machines.
Question 6. Which patients have been tested more than once on virus test? Show the patient names, phones, and the number of virus tests.
Report -
Create a simple report object showing the details of patients under the treatments. The details should include the patient's full names, treatment descriptions, responsible doctor names, and the hospital names. You need to provide appropriate heading and format the report properly.
Implementation Report
You must also provide a short implementation report describing your experiences with this assignment. You may discuss any of the following:
1. Any two interesting things/procedures you learnt by doing this assignment.
2. Any one requirement of the assignment that was relatively difficult / complex to solve but successfully completed by you.
Use the implementation report to demonstrate that you have thought carefully about the issues that arise when implementing a relational database.
Part B - Database implementation using My SQL Server (Optional)
Consider a simplified version E- R model on the treatment activity, where you only deal with three relations Patient, Treatment and Doctor (ignore all other relations) based on the E- R model provided for assignment 1 sample solution. Using MySQL Workbench 6.3 CE to create a database with the above three relations, include specifying the primary keys, foreign keys and drawing an E- R diagram. Alternatively, you can complete the above task by using My SQL 5.7 Command Line Client to create the database and corresponding tables with sample data populated.
Due to COVID19, the face - to - face demonstration of creating database schema from students by using MySQL becomes unviable. Therefore, Part B is not required to implement. You don't need to submit a separate file on this part. In Week 11 or 12 tutorial session, your local tutor will show you the basic skills on how to create a database using MySQL Workbench.
Attachment:- Database Design and Development Assignment Files.rar