27
CS 469 Introduction to Database CS 469 Introduction to Database Design Design and Implementation for Business and Implementation for Business and and CS 669 Database Design and CS 669 Database Design and Implementation Implementation for Business for Business https://onlinecampus.bu.edu https://onlinecampus.bu.edu Instructor George Maiewski Instructor George Maiewski Original Slides by Prof. Robert Schudy Original Slides by Prof. Robert Schudy 6 to 9 PM (Fall and Spring) 6 to 9 PM (Fall and Spring) 6 to 9:30 PM (Summer) 6 to 9:30 PM (Summer)

CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

Embed Size (px)

Citation preview

Page 1: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

CS 469 Introduction to Database CS 469 Introduction to Database DesignDesign

and Implementation for Business and Implementation for Businessandand

CS 669 Database Design and CS 669 Database Design and ImplementationImplementation

for Business for Business

https://onlinecampus.bu.eduhttps://onlinecampus.bu.edu

Instructor George MaiewskiInstructor George MaiewskiOriginal Slides by Prof. Robert SchudyOriginal Slides by Prof. Robert Schudy

6 to 9 PM (Fall and Spring)6 to 9 PM (Fall and Spring)

6 to 9:30 PM (Summer) 6 to 9:30 PM (Summer)

Page 2: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

Differences between CS469 and Differences between CS469 and CS669CS669

CourseCourse CS469CS469 CS669CS669CreditsCredits 4 undergraduate4 undergraduate 4 graduate4 graduate

ReadingsReadings TextbookTextbook TextbookTextbook

LecturesLectures RequiredRequired RequiredRequired

QuizzesQuizzes At home online At home online QuizzesQuizzes

At home online At home online QuizzesQuizzes

AssignmentsAssignments Advanced exercises Advanced exercises extra creditextra credit

Basic and advanced Basic and advanced exercises requiredexercises required

Term projectTerm project Optional, for extra Optional, for extra creditcredit

RequiredRequired

Final ExamFinal Exam In class closed book In class closed book onlineonline

In class closed book In class closed book onlineonline

Page 3: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

How to reach meHow to reach me

The best way to reach me is by email The best way to reach me is by email through the course web site. Direct through the course web site. Direct email can be sent to either email can be sent to either [email protected] or or [email protected] . .

I pick up my email many times per day.I pick up my email many times per day.

I can meet with you before class, during I can meet with you before class, during the break or after class.the break or after class.

Special meetings if necessary.Special meetings if necessary.

Page 4: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

Preparation for this Preparation for this classclass

This class has no prerequisites other This class has no prerequisites other than computer literacy and than computer literacy and willingness to study and learn.willingness to study and learn.

I will help students without I will help students without programming or other background, programming or other background, so that no one is left behind.so that no one is left behind.

You do need to be computer literate; You do need to be computer literate; we will install Oracle, use web sites we will install Oracle, use web sites and do other geeky things.and do other geeky things.

Page 5: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

Our main Rob and Our main Rob and Coronel textCoronel text

Our text for this course is Database Systems: Our text for this course is Database Systems: Design, Implementation & ManagementDesign, Implementation & Management

Edition: 11thEdition: 11th Author: Coronel, C.M., Morris, S.,Author: Coronel, C.M., Morris, S., Publisher: Cengage/Course TechnologyPublisher: Cengage/Course Technology ISBN 9781285196145.ISBN 9781285196145. It is very accessible and a “good read.”It is very accessible and a “good read.” We will cover the text one chapter per week.We will cover the text one chapter per week. The text is available used. If you really need The text is available used. If you really need

to save money, you can purchase the 9to save money, you can purchase the 9 th th or or 1010thth edition for much less, but I urge you to edition for much less, but I urge you to purchase the 11purchase the 11thth, because it is more up to , because it is more up to date.date.

It is readily available from the BU bookstore, It is readily available from the BU bookstore, Amazon, and many other web vendors.Amazon, and many other web vendors.

Beware that web vendors sometimes take Beware that web vendors sometimes take many weeks to deliver, may ship earlier many weeks to deliver, may ship earlier editions, and may not refund your money.editions, and may not refund your money.

Page 6: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

The Term ProjectThe Term Project

CS669 students must complete a CS669 students must complete a significant term project which involves significant term project which involves designing and implementing a modest but designing and implementing a modest but significant database system.significant database system.

The default term project is to design and The default term project is to design and implement a database system for a simple implement a database system for a simple DVD rental business vaguely similar to DVD rental business vaguely similar to NetFlix®.NetFlix®.

Undergraduate students taking CS469 may Undergraduate students taking CS469 may complete a term project for extra credit.complete a term project for extra credit.

You do not need to use Oracle for your You do not need to use Oracle for your projects.projects.

Page 7: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

Extra Credit ProjectsExtra Credit Projects

You may do extra credit projects on any You may do extra credit projects on any database topic of your choice.database topic of your choice.

You can ask me for help if you wish.You can ask me for help if you wish. Extra credit projects won’t hurt your grade. Extra credit projects won’t hurt your grade.

A good extra credit project may lift your A good extra credit project may lift your grade if you are close to the higher grade grade if you are close to the higher grade but not quite there.but not quite there.

Write a short proposal if you would like to Write a short proposal if you would like to do an extra credit project, so I can check do an extra credit project, so I can check the reasonableness of the topic and the the reasonableness of the topic and the required effort.required effort.

Page 8: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

Researching small topics for Researching small topics for the classthe class

In a lecture or discussion a question may arise In a lecture or discussion a question may arise that you would like to research and present that you would like to research and present the results to the class. I will sometimes ask the results to the class. I will sometimes ask for volunteers, or you can volunteer.for volunteers, or you can volunteer.

Usually we will want the answer at the next Usually we will want the answer at the next class session, or posted to the course website.class session, or posted to the course website.

Database is a huge technology and business Database is a huge technology and business area, and this is an important part of learning area, and this is an important part of learning how to answer database questions.how to answer database questions.

I give classroom contribution points for these I give classroom contribution points for these small research efforts.small research efforts.

These should be small efforts; if it turns out to These should be small efforts; if it turns out to be difficult let me know. That’s OK.be difficult let me know. That’s OK.

Page 9: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

Ask lots of questionsAsk lots of questions

What seems like a “stupid question” or answer is one What seems like a “stupid question” or answer is one that shows that there is something that you don’t that shows that there is something that you don’t understand.understand.

If you don’t understand something it is likely that If you don’t understand something it is likely that your classmates don’t understand it too.your classmates don’t understand it too.

Stupid questions and answers help everyone, Stupid questions and answers help everyone, including me.including me.

So ask lots of questions, particularly stupid So ask lots of questions, particularly stupid questions, and don’t be afraid to answer my questions, and don’t be afraid to answer my questions.questions.

I give extra class participation credit for good I give extra class participation credit for good questions and answers, particularly good stupid questions and answers, particularly good stupid ones.ones.

The only stupid question is the one that you don’t The only stupid question is the one that you don’t ask; there are no bad questions.ask; there are no bad questions.

Page 10: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

GradingGrading

Your grade is based on your performance in five Your grade is based on your performance in five areas:areas: ~25% of your grade is based on weekly graded quizzes.~25% of your grade is based on weekly graded quizzes. ~15% of your grade is based on graded homeworks.~15% of your grade is based on graded homeworks. ~30% of your grade is based on a comprehensive final ~30% of your grade is based on a comprehensive final

exam.exam. ~20% of your grade is based on your term project.~20% of your grade is based on your term project. ~10% of your grade is based on classroom contributions, ~10% of your grade is based on classroom contributions,

including questions, discussion, and small topics that you including questions, discussion, and small topics that you have researched for the class.have researched for the class.

It is occasionally possible to earn more than 100% It is occasionally possible to earn more than 100% for an exceptional answer or an extra credit for an exceptional answer or an extra credit problem.problem.

I don’t grade on the curve, and would be delighted if I don’t grade on the curve, and would be delighted if everyone earned an A.everyone earned an A.

Page 11: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

Grading standardsGrading standards

GradGradee

Grade Grade PointsPoints

AA 4.04.0

A-A- 3.73.7

B+B+ 3.33.3

BB 3.03.0

B-B- 2.72.7

C+C+ 2.32.3

CC 2.02.0

C- C- 1.71.7

DD 1.01.0

FF 00

•The grade of “C” is the lowest grade acceptable for credit toward MS degree requirements.•MS students must have a grade point average of at least 3.0 to graduate.•A grade of “D” is the lowest passing grade for undergraduates.

Page 12: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

Individual differencesIndividual differences

Please let me know soon if you have Please let me know soon if you have perceptual, cognitive, learning style or perceptual, cognitive, learning style or other significant individual differences or other significant individual differences or disabilities, so that I can better meet your disabilities, so that I can better meet your needs.needs.

I base your grade on how well you have I base your grade on how well you have learned the material. With some disabilities learned the material. With some disabilities some metrics may not be fair, so I may use some metrics may not be fair, so I may use other metrics when necessary to assure other metrics when necessary to assure fairness.fairness.

Page 13: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

About gradesAbout grades

I feel that our students are generally very I feel that our students are generally very good, and not average, and there have been good, and not average, and there have been generally more A and B grades than lower generally more A and B grades than lower grades.grades.

I determine the final grades for each of the I determine the final grades for each of the grading measures (quizzes, final exam etc.) grading measures (quizzes, final exam etc.) separately, and look at both the individual separately, and look at both the individual and collective measures for each student.and collective measures for each student.

Feel free to ask how you are doing and I will Feel free to ask how you are doing and I will let you know.let you know.

I will give you feedback along the way in the I will give you feedback along the way in the form of letter grades on quizzes, exercises form of letter grades on quizzes, exercises and project submissions.and project submissions.

Page 14: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

The weekly The weekly “quizzercises”“quizzercises”

The quizzes will be taken online through the Blackboard The quizzes will be taken online through the Blackboard Vista system. Quizzes are open book, the Final Exam is Vista system. Quizzes are open book, the Final Exam is Closed Book.Closed Book.

Most quizzes cover the material from the previous two Most quizzes cover the material from the previous two week’s lectures.week’s lectures.

Most people should be able to finish the quizzes in the Most people should be able to finish the quizzes in the time given.time given.

I schedule the quizzes between classes. You will have I schedule the quizzes between classes. You will have about a week to find a time to take the quiz at home.about a week to find a time to take the quiz at home.

You may make comments about each quiz online as you You may make comments about each quiz online as you are taking the quiz. See the section at the end of the are taking the quiz. See the section at the end of the quiz.quiz.

These are open book and open notes combination quizzes These are open book and open notes combination quizzes and exercises designed to measure how well you can and exercises designed to measure how well you can apply what you have learned. Remember, the final exam apply what you have learned. Remember, the final exam is Closed Book, Closed Notes.is Closed Book, Closed Notes.

Page 15: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

A normal class meeting timelineA normal class meeting timeline

Before-class office hours

Questions

Review of previous week’s material

Begin lecture on this week’s new material

Five minute break

Finish lecture on this week’s new material

Questions

6:00 PM

~6:15 PM

~6:30 PM

~7:45 PM

~8:50 PM

9:00 PMAfter-class office hours

Page 16: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

How the classes are How the classes are organizedorganized

Before each class session is before-class office time Before each class session is before-class office time when you can meet with me in the classroom. If you when you can meet with me in the classroom. If you need help at any other time contact me by email. We need help at any other time contact me by email. We can also talk by phone or meet if necessary.can also talk by phone or meet if necessary.

At 6 PM we will begin class with any questions that At 6 PM we will begin class with any questions that you may have.you may have.

Next we review the material for the previous week Next we review the material for the previous week for 15-30 minutes. In the first class we review the for 15-30 minutes. In the first class we review the prerequisite material.prerequisite material.

Then we begin the first part of the lecture for the Then we begin the first part of the lecture for the week.week.

Then we take a halftime break.Then we take a halftime break. Then we continue the week’s lecture and discussion.Then we continue the week’s lecture and discussion. Quizzes are taken online, which cover the material Quizzes are taken online, which cover the material

introduced in the previous week’s lecture and introduced in the previous week’s lecture and reviewed at the beginning of this week’s lecture.reviewed at the beginning of this week’s lecture.

At around 9 PM we begin after-class office hours.At around 9 PM we begin after-class office hours.

Page 17: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

Why is the default DBMS Why is the default DBMS Oracle?Oracle?

(and not MSSQL, UDB/DB2, MySQL or (and not MSSQL, UDB/DB2, MySQL or another DBMS)another DBMS)

Most of the examples in the text are based on Most of the examples in the text are based on Oracle.Oracle.

Oracle leads the industry in the development and Oracle leads the industry in the development and delivery of database technologydelivery of database technology

Oracle is the most commercially important DBMS.Oracle is the most commercially important DBMS. Oracle has essentially all of the features in any Oracle has essentially all of the features in any

relational or object-relational DBMS.relational or object-relational DBMS. Many of the ANSI/ISO SQL standards are based on Many of the ANSI/ISO SQL standards are based on

Oracle, and Oracle supports the standards Oracle, and Oracle supports the standards comparatively well, so when you learn Oracle you comparatively well, so when you learn Oracle you are mainly close to the portable standards.are mainly close to the portable standards.

Oracle runs on all common platforms, including Oracle runs on all common platforms, including Mac’s and PCs.Mac’s and PCs.

Oracle is very scalable.Oracle is very scalable.

Page 18: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

You can use another You can use another DBMSDBMS

I don’t require you to use Oracle for your I don’t require you to use Oracle for your exercises or term project.exercises or term project.

If it is better for you to use another SQL If it is better for you to use another SQL DBMS, for example because that’s all that DBMS, for example because that’s all that you use at work, let’s discuss it.you use at work, let’s discuss it.

You will need to map some of the syntax.You will need to map some of the syntax. Microsoft SQL Server 2005 and 2008 support Microsoft SQL Server 2005 and 2008 support

the functionality that we cover in this class, the functionality that we cover in this class, though sometimes in nonstandard ways.though sometimes in nonstandard ways.

MySQL with the InnoDB back-end supports MySQL with the InnoDB back-end supports most of the functionality, though the most of the functionality, though the implementation is not very mature.implementation is not very mature.

IBM’s UDB supports all of the functionality in IBM’s UDB supports all of the functionality in this class, with a solid comparatively this class, with a solid comparatively standards- compliant implementation.standards- compliant implementation.

Page 19: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

Academic conduct Academic conduct policypolicy

Boston University takes academic conduct Boston University takes academic conduct seriously, in part because academic honesty is seriously, in part because academic honesty is critical to fostering a good fair learning critical to fostering a good fair learning community.community.

Plagiarism can earn you a hearing before the Plagiarism can earn you a hearing before the Student Academic Conduct Review Board.Student Academic Conduct Review Board. Students may be represented by an attorney.Students may be represented by an attorney. The Board determines guilt or innocence and any The Board determines guilt or innocence and any

punishment, which may include an F in the course, punishment, which may include an F in the course, suspension, or expulsion.suspension, or expulsion.

Our full academic conduct code is at Our full academic conduct code is at http://www.bu.edu/met/metropolitan_college_people/student/resources/conduct/code.html

The short form of the code is to never present The short form of the code is to never present someone else’s work as your own.someone else’s work as your own.

We use Turnitin.com to verify originality.We use Turnitin.com to verify originality.

Page 20: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

MSDNAAMSDNAA

Metropolitan College provides all registered students with access to Metropolitan College provides all registered students with access to the Microsoft Developer Network Academic Alliance (MSDNAA).the Microsoft Developer Network Academic Alliance (MSDNAA).

This provides you with free access to most Microsoft software free of This provides you with free access to most Microsoft software free of charge, for academic use. You may wish to download Visio charge, for academic use. You may wish to download Visio Professional to develop database design diagrams for this class.Professional to develop database design diagrams for this class.

Information on our MSDNAA program is available by following the Information on our MSDNAA program is available by following the MSDNAA link on the Met Computer Science home page, which is MSDNAA link on the Met Computer Science home page, which is CSMET.bu.edu. The MSDNAA link looks like this:CSMET.bu.edu. The MSDNAA link looks like this:

When I request your MSDNAA membership you will receive an When I request your MSDNAA membership you will receive an email from the MSDNAA E-Academy License Management System email from the MSDNAA E-Academy License Management System (ELMS) at following address: (ELMS) at following address: [email protected]. Some . Some spam filters may direct this email to a junk email folder, so you may spam filters may direct this email to a junk email folder, so you may want to check your junk email folder or add the address above to want to check your junk email folder or add the address above to your contacts or other white list. Later this academic year, you will your contacts or other white list. Later this academic year, you will be able to access the MSDNAA site using your Kerberos login.be able to access the MSDNAA site using your Kerberos login.

Page 21: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

DBMSDBMS

The recommended DBMS is The recommended DBMS is Oracle Database 10g, 11g or Oracle Database 10g, 11g or 12c Express Edition.12c Express Edition.

Some of you will be using Some of you will be using Microsoft’s MSSQL.Microsoft’s MSSQL.

Page 22: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

The class scheduleThe class schedule

The class schedule follows the study The class schedule follows the study guide found in the course web site.guide found in the course web site.

We will try to stick to this schedule We will try to stick to this schedule but we could be off a little as but we could be off a little as needed.needed.

For assignment descriptions see For assignment descriptions see Vista Blackboard Web Site at Vista Blackboard Web Site at vist.bu.edu.vist.bu.edu.

Page 23: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

Topics coveredTopics covered

## TopicsTopics AssignmentsAssignments

11 Course introduction.Course introduction.Chapter 1 Database Chapter 1 Database SystemsSystems

Study RobCor Chapter 1Study RobCor Chapter 1Install DBMSInstall DBMS

22 Chapter 2 Data ModelsChapter 2 Data Models Study RobCor Chapter 2Study RobCor Chapter 2Quiz 1Quiz 1

33 Chapter 3 The Relational Chapter 3 The Relational DatabaseDatabase

Study RobCor Chapter 3Study RobCor Chapter 3

44 Chapter 4 ER ModelingChapter 4 ER Modeling Study RobCor Chapter 4Study RobCor Chapter 4Quiz 2Quiz 2

55 Chapter 5 NormalizationChapter 5 Normalization Study RobCor Chapter 5Study RobCor Chapter 5

Page 24: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

--

Study RobCor8 Chapter 6Study RobCor8 Chapter 6

## TopicsTopics AssignmentsAssignments

6 Chapter 6: Advanced Data Chapter 6: Advanced Data ModelingModeling

Study RobCor8 Chapter 6Study RobCor8 Chapter 6Quiz 3

77 Chapter 7: SQLChapter 7: SQL Study RobCor8 Chapter 7Study RobCor8 Chapter 7

88 Chapter 8: Advanced SQLChapter 8: Advanced SQL Study RobCor8 Chapter 8Study RobCor8 Chapter 8Quiz 4

99 Chapter 9: Database Design Study RobCor8 Chapter 9Study RobCor8 Chapter 9

Page 25: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

--## TopicsTopics AssignmentsAssignments

1010 Chapter 10: Transaction Chapter 10: Transaction Management and Management and Concurrency ControlConcurrency Control

Study RobCor8 Chapter 10Study RobCor8 Chapter 10Quiz 5Quiz 5

1111 Chapter 11: Performance Chapter 11: Performance TuningTuning

Study RobCor8 Chapter 11Study RobCor8 Chapter 11

1212 Chapter 12: Distributed Chapter 12: Distributed DBMSDBMS

Study RobCor8 Chapter 12Study RobCor8 Chapter 12

1313 Chapter 13: Business Chapter 13: Business Intelligence and Data Intelligence and Data WarehousesWarehouses

Study RobCor8 Chapter 13Study RobCor8 Chapter 13

Page 26: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

--

1414 Chapter 14: DB Chapter 14: DB Connectivity and Web Connectivity and Web TechnologiesTechnologies

Study RobCor8 Chapter Study RobCor8 Chapter 1414

1515 Chapter 15: Database Chapter 15: Database Administration and Administration and SecuritySecurity

Study RobCor8 Chapter Study RobCor8 Chapter 1515Quiz 6Quiz 6

FinalFinal Final examFinal exam Comprehensive two-hour Comprehensive two-hour in-class exam in three in-class exam in three hours. Closed book.hours. Closed book.

Page 27: CS 469 Introduction to Database Design and Implementation for Business and CS 669 Database Design and Implementation for Business

Other TopicsOther Topics

Topics suggested or Topics suggested or provided by studentsprovided by students