glosolar companyschema/ eerdatabasequeriesnormalization

22
GloSolar IEOR 115 Database Design Project Review 1 Group 6 Company Schema/ EER Database Queries Normalization

Upload: evelyn-washington

Post on 20-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

GloSolarIEOR 115

Database Design ProjectReview 1Group 6

Company Schema/ EER Database Queries Normalization

Page 2: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

GloSolar is a small Startup Solar Installer

Headquarters: Downtown Berkeley

Market: Business done primarily in Bay Area/Sonoma County

Company Size: Eight employees total; three work in the Berkeley Office.

Company Overview

Company Schema/ EER Database Queries Normalization

Page 3: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Existing Database StructureFirst 3 Months: Began with customer tracking by

storing its customer data on a single sheet of a large Google Spreadsheet.

Current customer resource management database: Google Apps & Relational Database based on Excel for orders

Need for Project Management as well as data tracking

No existing relational database structure to track the physical Solar Systems and the different customers from start to finish state, as well as each and every single order.

Company Difficulties: Operations are spread out throughout California

Database must be able to both track projects as well as entire company operations including payroll and purchases

Company Schema/ EER Database Queries Normalization

Page 4: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Company Schema/ EER Database Queries Normalization

Page 5: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Final Relational Schema

Company Schema/ EER Database Queries Normalization

Page 6: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Final Relational Schema

Company Schema/ EER Database Queries Normalization

Page 7: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Final Relational Schema

Company Schema/ EER Database Queries Normalization

Page 8: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Table Relationships

Page 9: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Switchboard

Company Schema/ EER Database Queries Normalization

Page 10: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Forms

Company Schema/ EER Database Queries Normalization

Page 11: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Query 1

Give a list of sales representatives and their number of paying customers, from highest to lowest.

Company Schema/ EER Database Queries Normalization

Page 12: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Query 2

Which advertisement generates the most revenue per dollar spent on that advertisement?

Company Schema/ EER Database Queries Normalization

Page 13: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Query 3In what months are the most projects started?  Order months from those with the most projects to those with the fewest?

Company Schema/ EER Database Queries Normalization

Page 14: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Query 4Which customers have given the most referrals?

Company Schema/ EER Database Queries Normalization

Page 15: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Query 4

Provides a clean report for list of referrals

Company Schema/ EER Database Queries Normalization

Page 16: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Query 5

Which projects that have not yet been completed have been in progress the longest?

Company Schema/ EER Database Queries Normalization

Page 17: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Normalization Analysis

• Person BCNFPerson(Person_id, Last_Name, First_Name,

MI, Address, Phone_Number, Email_Address)

Functional Dependencies:Person_id First_Name, Last_Name, MI,

Address, Phone_Number, Email_Address

Company Schema/ EER Database Queries Normalization

Page 18: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Normalization Analysis

• CreditCard 2NFCreditCard(Payment_id, CreditCardNumber,

CreditcardCompany, CCV)

Functional Dependencies:Payment_id CreditCardNumber, CreditCardCompany,

CCVCreditCardNumber CreditCardCompany, CCV

• Normalized into BCNF: CreditCard(Payment_id, CreditCardNumber)CreditCard(CreditCardNumber, CreditCardCompany,

CCV)

Company Schema/ EER Database Queries Normalization

Page 19: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Normalization Analysis

• Project BCNFProject(Project_id, Cutsomter_id1b ,

Completion_Date, Start_Date, Total_Price)

Functional Dependencies:Project_id Customer_id, Total_Price,

Start_Date, Completion_Date

Company Schema/ EER Database Queries Normalization

Page 20: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Normalization Analysis

• Order BCNFOrder(Order_id, Employee_id1a, Project_id4,

Order_time, Payment_id22, Shipper_id18,Product_id19)

Functional Dependencies:Order_id Employee_id, Project_id, Order_time,

Amount, Payment_Method_id, Shipper_id. Product_id

Company Schema/ EER Database Queries Normalization

Page 21: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Normalization Analysis

• Supplier 3NFSupplier(Supplier_id, Name, Address,

Email_Address, Phone)

Functional Dependencies:Supplier_id Name, Address, Email_Address,

PhonePhone Supplier_id

• Can be normalized into BCNF:Supplier(Supllier_id, Name, Address,

Email_Address)Supplier_Phone(Supplier_id, Phone)Company Schema/ EER Database Queries Normalization

Page 22: GloSolar CompanySchema/ EERDatabaseQueriesNormalization

Questions?Thank you!

Company Schema/ EER Database Queries Normalization