13
Case Two: Our Cinema Created By: Group Project Team 8 Jimmy Quach Danny Nguyen Alex Rzewuski

Our Cinema Movie Rental PowerPoint

Embed Size (px)

Citation preview

Case Two: Our CinemaCreated By:

Group Project Team 8Jimmy Quach

Danny NguyenAlex Rzewuski

Executive SummaryThis report provides our thoughts and analysis on our case: Cinema. The project was assigned to give us a better understanding of database planning, analysis, design, implementation, and testing.

Our Cinema (Movie Rental)● Location: Canada● Each store has a unique distributor that

supplies the store with tapes● Employees work at the stores and help

customers rent movies which is all inputted into the database

● Return and due dates are recorded● Late fees are also applied● THINK BLOCKBUSTER (Back in the day…)

The Major Areas: ● Milestone 1 - Creating the physical

database schema (DDL)● Milestone 2 - Preparing a set of

queries (DML)● Milestone 3 - Conducting an analysis

to address initial database sizing requirements, potential security threats, and backup and recovery strategies (DCL)

Project Overview

1. What is our project goal?

2. What is our project objective?

3. What are our criteria for success?

4. What assumptions do we have bring to this project?

5. What are the potential risks and obstacles?

Project Discussion Intro (Milestone 1)

Thought Process:

● Looked at an example format of how a physical database schema (SQL script) looks like

● Read and analyzed the logical model● Defined the naming conventions, SQL

syntax, and datatype declaration for each table in order by Rental Status, Movie Rental, Customer, etc...

● Filled in the constraints for each table such as primary keys, foreign keys, not null, default, check, etc…

● Uploaded and ran script but came up with quite a few errors

Project Discussion Problems (Milestone 1)For Milestone 1, when making the physical database schema, we found out that it’s important to create the tables in a specific order. For example, by creating the Movie Rental table first, it will fail if executed because the foreign keys of that table have not yet been defined as a primary key for its related table.In order to execute it successfully TAPE_TAPEID, MOVIE_MOVIEID, STORE_STOREID, EMP_PSIN, PAY_PAYID, RENTSTAT_ID MOVIERENT_DUEDATE, MOVIERENT_OVERDUECHARGE, MOVIERENT_RENTRATE Needs to be created first.

MOVIERENTTAPE_TAPEID INTEGER,MOVIE_MOVIEID INTEGER,STORE_STOREID INTEGER,MOVIERENT_RENTDATE DATE PRIMARY KEY,CUST_CUSTID INTEGER,EMP_EMPSIN INTEGER,PAY_PAYID INTEGER,RENTSTAT_STATID INTEGER,MOVIERENT_DUEDATE DATE,MOVIERENT_OVERDUECHARGE NUMBER(5,2) DEFAULT 0.00,MOVIERENT_RENTRATE NUMBER(5,2),

Also, we learned that tables had to be dropped in the reverse order of creation.We edited and applied these changes and finally got our SQL script to run successfully without any errors.

Project Discussion Problems (Milestone 1)

Project Discussion Intro (Milestone 2)

Thought Process:

● The queries seemed manageable to handle

● We split the queries into three parts so that each group member could contribute

● If we were stuck, we would look at the notes from our Power Point lectures or we would look online

● Combined our findings● Edited and checked our work

Project Discussion Problems (Milestone 2)In this particular query, we had issues getting the query to run. Looking back at it again they were some noticeable mistakes

Mistakes● No join clauses in From statement● Data is unorganized

Query 9: List all the movies rented for a particular customer. Please display the movie title,Rental status, rental rate, rental employee, the employee accepting the payment, payment type and payment status. SELECT DISTINCT CUSTOMER.CUST_NAME AS "Customer Name", MOVIE_TITLE AS "Movie Title", RENTSTAT.RENTSTAT_STATID AS "Rental Status", MOVIERENT_RENTRATE AS "Rental Rate", MOVIERENT.EMP_EMPSIN AS "Rental Employee", PAYMENT.EMP_EMPSIN AS "Employee Accepting Payment", PAYMENT.PAYSTAT_STATID AS "Payment Type", PAYSTAT_DESC AS "Payment Status"FROM CUSTOMER, MOVIE, RENTSTAT, MOVIERENT, PAYMENT, PAYSTATWHERE CUSTOMER.CUST_CUSTID='1001';

Project Discussion (Milestone 3)

Topics discussed: ● Database security● Backup and Recovery● Database sizing

requirements

Security Threats1.Privilege Abuse2.SQL Injection3.Weak Audit Trail

Backup and Recovery● Backup Our Cinema database in multiple

locations such as our RMAN repository and Enterprise Manager Cloud Control

● Oracle’s Recovery Manager (RMAN)● Additional Components

o A Flash Recovery Areao Media Management Softwareo Recovery Catalog Database

Post Project Thoughts - Take AwaysThe query writing practice in Milestone 2 has made us stronger SQL query writers than we were at the beginning of the class. We got better at time management and group collaboration as the project went along. Milestone 1 was harder than expected, we didn’t have as strong a background in DDL as we would have liked. If we could do things differently, Query 9 in Milestone 2 would have been redone. As far was what worked well, everything went much more smoothly after Milestone 1, we didn’t have it working 100% until after the due date and the other Milestones were finished with time to spare. Since SQL is important to many of our career paths, any additional knowledge learned through this project can only benefit us in the future. Since Milestone 1 was to create all the tables and in Milestone 2 we had to insert them, we all have much greater understanding of what relational databases are since we built them from scratch.

Questions?