Unit Name: SIT772 Database and Information Retrieval
Assessment 1: Database Design Report and Implementation
This document supplies the detailed information on assessment tasks for this unit.
Key information
- Due:Week 7-Sunday, 10 Jan 2021, 23:59 (AEST)
- Weighting:30%
- Submit:Through CloudDeakin
Learning Outcomes
This assessment assesses the following Unit Learning Outcomes (ULO) and related Graduate Learning Outcomes (GLO):
Unit Learning Outcome (ULO) | Graduate Learning Outcome (GLO) |
ULO 2: Explain the concept of data modelling and use Entity-Relationship (ER) models to represent data. | GLO 1: Discipline-specific knowledge and capabilities |
ULO3: Design and implement relational database systems through the use of SQL | GLO 1: Discipline-specific knowledge and capabilities GLO4:Critical thinking |
Purpose
This task requires students to apply their understanding and ability to use Relational Database Management Systems (RDBMS) as well as use SQL in the modelling of the physical world. Students will be provided with a set of business scenarios and are required to design a database and provide related SQL queries.
Instructions and Submission Guide
This is an individual assessment task. Students are required to submit ONE written report and THREE SQL Files.
- Read these instructions and the following four questions.
- ONE written report
- It should be in PDF format, which includes all the questions/tasks and their answers. To do so, you can work on Word document and convert it into PDF file. Important Note: Output of allSQLqueriesforTask1,Task2Task3mustbeincludedinthePDFfileaswell.Otherwise,noassessmentandpenalty willbe applied.
- Place your name, ID, Unit Information 2020 T3 in the ONE written report.
- Name the written report using student ID_givenname_A1.pdf, e.g., 123456_Kevin_A1.pdf
- THREE SQL Files used to test by markers.
- The 1st SQL file includes the answers in Task1. Name the SQL file using student ID_Sale.sql, e.g., 123456_Sale.sql.
- The 2nd SQL file includes the answers in Task2. Name the SQL file using student ID_Book.sql, e.g., 123456_ Book.sql.
- The 3rd SQL file includes the answers in Task3. Name the SQL file using student_ID_Mart.sql, e.g., 123456_ Mart.sql.
- You must guarantee the SQL file can be executed successfully before your submission.
- All the four files must be submitted via CloudDeakin assessment portal. The wrong submission venue or the wrong submitted files may lead to the penalty.
AnswersubmittedinImageformat exceptsqlresultswill notbemarked.
Question 1: [25 Marks]
We provide you with an Oracle sample database which is based on a global fictitious company that sells computer hardware including storage, motherboard, RAM, video card, and CPU.
The company maintains the product information such as name, description standard cost, list price, and product line. It also tracks the inventory information for all products including warehouses where products are available. Because the company operates globally, it has warehouses in various locations around the world.
The company records all customer information including name, address, and website. Each customer has at least one contact person with detailed information including name, email, and phone. The company also places a credit limit on each customer to limit the amount that customer can owe.
Whenever a customer issues a purchase order, a sales order is created in the database with the pending status. When the company ships the order, the order status becomes shipped. In case the customer cancels an order, the order status becomes canceled.
In addition to the sales information, the employee data is recorded with some basic information such as name, email, phone, job title, manager, and hire date.
The following illustrates the sample database diagram:
To do the following tasks, you needs to execute the schema.sql to build the database schema and run data.sqlto insert the data into the created database, if you are using Oracle database lab environment; If XAMPP with MariaDB lab environment used, it needs to execute the schemaXAMPP.sql and dataXAMPP.sql to build the database. Note: Oracle and MariaDB use different syntax.
Task 1.1: [4 Marks]
Write the SQL query to list the region names and the number of warehouses within the regions, group by countries.
Task 1.2: [4 Marks]
Write the SQL query to find all customers who have made orders from specific Employee List must include the customer ID, customer name, and ordered by their ID values in descending.
Task 1.3: [4 Marks]
Write the SQL query to list all employees who have the sequential letters ‘co’ in the employee name and in his manager name, List must include the employee’ ID, names, manager name and ordered by their names in descending.
Task 1.4: [4 Marks]
Write the SQL query to list all products’ ID, Name and price available in warehouse of countries start with “A”. The list must be ordered by the product price.
Task 1.5: [5 Marks]
Write the SQL query to list all the warehouses, their location and total sold price of each warehouse. Here, given a product, the total sold price of the product is calculated by the sold quantity of the product and its unit price. The list must be ordered by the total sold price in the ascending.
Note: One product_ID may link to more than one warehouses in the provided data. You can ignore this and just count the sale of the product to all its linked to warehouse.
Task 1.6: [4 Marks]
Write the SQL query to list the of customer and the amount they spent on orders. The output list must include customer ID, name, and the amount they have spent. The list must be sorted by the amount in the descending order.
Marking Guide:
Your queries must be functionally correct, properly formatted and of course error-free, you should demonstrate this by screenshot of the result of the query.
Question 2: [30 Marks]
Suppose you are working in Alpha Software’s as a senior database designer and you received following conceptual schema from database designer.
BOOK(Book-ID, Title, Authors, Volume, ISBN, Publisher) primary key = (Book-ID)
USER(ID, First-Name, Last-Name, Email) Primary key = (ID)
BORROW(BOOK-ID, ISBN, First-Name, Last-Name, Borrow-Date, Volume, Year) primary key = (Book-ID, FirstName, Last-Name)
Fines(ID, Amount, BOOK-ID)
The aim of new database is to track record of books in Deakin Library borrowed by Deakin students and staff. Students and staff are described by ID, last name, first name, phone, email, A book is described by a book-id (uniquely identifies each copy of book). Before T3 commence, Deakin Library buys large number of identical text books for each unit i.e. 60 books for SIT772. A book can be further be described by book name, ISSN, Volume, title, and publisher. The system records the date of barrow.
Before, approving the database design, you noticed that junior designer has made some mistakes in conceptual and logical modeling of database.
Being Senior Designer, your task is to analyze the database to reduce the inconsistencies in the design. Your role is to use the analysis of functional dependencies and normalization to find the highest normal form valid for each one of the relational schemas listed above.
- List all the users order by fines.
- List all the books order by publisher and publication year.
Note:Please, keep in mind the above design is incorrect, you are required to update the above database design. For each schema listed above, first find the functional dependencies valid in a relational schema followed by the minimal keys. In next step, find the highest normal form valid for a relational schema, and finally if a normal form found is not BCNF decompose a schema into BCNF.
Marking Guide:
5 Marks – Identification of problems in conceptual schema
10 Marks – Illustration of normalization process explaining with motivations 5 Marks – Final proposed conceptual schema
5 Marks – Proper testing by dummy data insertion
Question 3: [45 Marks]
Aladin Distributor Pt. (ADp) is an international supplier company located in Melbourne, Australia. The company purchase products from markets majorly from China and India, then sells these products to different stores/companies such as Desi Mart, China-SuperStore, Indian Groceries etc. Currently, the company has a paper-based system to manage its product acquisition and sales records. Obviously, the current system is prone to errors and slow to respond to inquiries from each regional department store. ADp is hiring your company to develop a database management system to improve the process. Your company asked you to design an ERD that reflect the business need of ADp. ADp has contract with several local companies (suppliers) in India and china. To shorten your requirement analysis, relevant departments at ADp have provided the following information:
Product Supplier: The product supplier information includes a unique supplier ID, supplier name (e.g., a company name), address, phone and email. While a supplier may have several phones and email, at present only two phone and two email are recorded on the company information. The required information about a supplier includes supplier ID, supplier name, supplier address, supplier phone and supplier email.
Product: A product ordered by Aladin Distributor Pt. from potential suppliers in China, India etc. The information about a product includes product identifier, product name, product description, and quantity-on- hand. The required information for a product includes product ID and name.
Purchase: A purchase order between Aladin Distributor Pt. and a particular supplier. The purchase order information includes the unique order number, order date, and arrival date. Certainly, it also includes relevant information about the supplier, product, and the purchasing manager who handles the purchase order. Note that some of this data is to be included via relationships between the related entities. Once a purchase order is made, the following information must be provided: order number, order date, and order quantity.
Purchase Item: A purchase item represents a particular product ordered in a given purchase order. The basic information about a line item includes an item number, quantity ordered, and unit cost. A purchase item must be related to a purchase order and a particular product. The required information for a purchase item includes item number and quantity ordered.
Customer Company: A customer company (Desi Mart, China-SuperStore, Indian etc) is a potential department store to which Aladin sells the products. The information about a customer includes company name (e.g., Desi Mart), address, and phone.
Sales List: This list includes all potential buyer companies (Desi Mart, China-SuperStore, Indian etc) for a particular product. The list contains information about the customer company, product, and the last transaction date on which the customer made a purchase of that product. If there is no transaction between the customer and product, then the date is left empty. The list is updated regularly.
Note that the above description has addressed only the “entities” involved in the data model. Additional information about the relationships between entities is summarized below:
- A purchase order is issued to a particular manager.
- A manager may be involved in one or several purchase orders.
- A purchase order may order one or several products.
- A product may or may not appear on a particular purchase order.
- A product could be purchased by several purchase orders.
- A purchase order is handled by only one manager. A manager may process one or several purchase orders.
- A product could be sold to one or several customers, and a customer might be interested in buying one or several products.
Marking Guide:
20 Marks – Conceptual Diagram (ERD)
5 Marks – Proper Normalization
5 Marks – Putting in proper constraints (PK/FK, Nulls, etc) 5 Marks – Database creation and population —
5 Marks – Proper testing by dummy data insertion
Assessment feedback
General feedback to the class will be provided via CloudDeakin-Discussion Forum. The formal assessment feedback will be released with the marks in CloudDeakin altogether.
Extension requests
RequestsforextensionsshouldbemadetoUnit/CampusChairs3daysearlybeforetheassessmentduedate.
Special consideration
You may be eligible for special consideration if circumstances beyond your control prevent you from undertaking or completing an assessment task at the scheduled time.
See the following link for advice on the application process: http://www.deakin.edu.au/students/studying/assessment-and-results/special-consideration
Assessment feedback
Detailed written feedback and results will be provided within two weeks of submission.
Referencing
You must correctly use Harvard referencing in this assessment. See the Deakin referencingguide.
Academic integrity, plagiarism and collusion
Plagiarism and collusion constitute extremely serious breaches of academic integrity. They are forms of cheating, and severe penalties are associated with them, including cancellation of marks for a specific assignment, for a specific unit or even exclusion from the course. If you are ever in doubt about how to properly use and cite a source of information refer to the referencing site above.
Plagiarism occurs when a student passes off as the student’s own work, or copies without acknowledgement as to its authorship, the work of any other person or resubmits their own work from a previous assessment task.
Collusion occurs when a student obtains the agreement of another person for a fraudulent purpose, with the intent of obtaining an advantage in submitting an assignment or other work.
Work submitted may be reproduced and/or communicated by the university for the purpose of assuring academic integrity of submissions: https://www.deakin.edu.au/students/study-support/referencing/academic- integrity