CPSC 304 Introduction to Relational Databases
Winter 2016 Term 2 (January -- April 2017)
Instructors: Hazra Imran and
Laks V.S. Lakshmanan
Welcome to the offical home of
CPSC 304 2016 Winter Term 2. Here, you will find extensive information
about the course and related resources. Please note that for many
of your needs, the go-to place is the Piazza page of the course,
which is at https://piazza.com/ubc.ca/winterterm22016/cpsc304/home. If you haven't already done so, you can sign up for Piazza at piazza.com/ubc.ca/winterterm22016/cpsc304. This is where all online discussion related to this course will happen.
Brief Course Description
Tutorials & Labs
Text and References
Important Dates and Deadlines
& Final Policy.
Quiz & Final
Overview of relational database
systems, logical database design, E-R models, formal relational query
languages, SQL, functional dependencies, normalization, formal relational query languages (Relational
Algebra and Datalog), Commercial Query Language (SQL), data warehouses, special topics.
We will normally assume that you will have read through the lecture notes
as well as related textbook chapter/sections, AHEAD of each lecture.
This will allow us to focus more on examples, exercises, and your
questions in class, and less on lecturing. The notes will be released
according to the lecture schedule. Slides on a unit will be released by 10 pm the night before the first lecture in that unit.
Text and References:
Text: Raghu Ramakrishnan and Johannes Gehrke. Database Management Systems. 3rd Edition, McGraw Hill, 2002. References: There are several to choose from, and we recommend:
- Avi Silberschatz, Hank Korth, and S. Sudarshan. Database Systems Concepts. 6th edition, McGraw Hill, 2010.
- Hector Garcia-Molina, Jeff Ullman, and Jennifer Widom. Database Systems: The Complete Book. Prentice Hall, 2nd Edition, 2008.
this course, we have designed a number of activities in order to help
you get up to speed and keep you in sync with the pace of
the course. To achieve this, we will require you to answer Clicker
Questions during lectures, and do a project as a team. The project will essentilly count as your
assignment. In addition, there will be tutorials which
will either supplement lecture material with additional
exercises/examples or augment it with additional complementary
material. Attendance at tutorials is mandatory. Tutorial exercises
will also be posted on Piazza.
Tutorials are very
important for the project. In a nutshell, in this course, you will
learn much more by actually DOING stuff, than by reading and listening
alone. Doing is also more FUN! Click here
for details about registering your clicker.
Important Due Dates and Deadlines:
- tutorial work (homework assignments) -- one week after the tutorial, at your next tutorial
- project part 1 -- Monday, January 16, using handin
- project part 2 -- Monday, February 13, using handin
- project part 3 -- Monday, February 27, using handin
- project completed -- Friday, March 31, using handin
- project demos -- Monday, April 3 and Wednesday, April 5.
- midterm 1 -- Tuesday, January 31, in class
- midterm 2 -- Tuesday, March 7, in class
for info. on your TAs, their office hours, and contact info. You will
also be able to find
your instructors' office hours and locations.
Location of TA Office Hours: Demco
Learning Center, X150.
Locations & Times of tutorials: See
Summary of Contact Hours (Laks' section only): Lectures: Tuesdays & Thursdays, 11:00--12:30 pm, DMP 310, 6245 Agronomy Road. I will be holding two kinds of office hours.
Face-to-face hours will be held Tuesdays, 5:00-6:00 pm in my office,
at 315-2366 Main Mall
(aka ICICS 315).
Normally these hours will be held one-on-one. When there
is oversubscription, these hours will be held in a group mode. Office
held in group mode may switch to a special meeting room,
which will be posted on my office door (ICICS Rm. 315) whenever the
Piazza hours: The second kind of office hour I will hold is a Piazza hour, held Thursdys 5:00--6:00 pm. I
will dedicate this hour to answering questions posted on Piazza. While
I may, from time to time, respond to questions on Piazza at other times
in an ad hoc manner, this will be a dedicated hour. All
office hours shown for TAs below are face to face. TAs will
be responding to questions on Piazza through the week.
|Lecture||11:00 am--12:30 pm, DMP 310||11:00 am--12:30 pm, DMP 310||
|Tutorials ||T2B: 12:00--1:00 pm,|
T2D 2:00-3:00 pm.
| T2B: 1:00-2:00 pm. |
T2C: 2:00-3:00 pm.
T2G: 3:30-4:30 pm.
T2H: 4:30-5:30 pm.
|T2A: 9:00-10:00 am. |
T2D: 2:00-3:00 pm.
T2F: 3:00-4:00 pm.
|Office Hour (Laks)|| |
|Face to Face: 5:00--6:00 pm, ICICS 315.|
|Piazza: 5:00--6:00 pm. |
Location of TA Office Hours: Demco
Learning Center, X150. See https://piazza.com/ubc.ca/winterterm22016/cpsc304/staff for times of TA office hours.
Online Discussion of
will use the Piazza system for all online discussion of course
material, and for posting of material and annoucements. Piazza is a
next generation Question & Answer system specifically designed
help you get answers to your questions fast. The best way to get an
answer to a question about 304 is to post it on Piazza. Piazza allows
both instructor, TAs and students to answer questions, and makes it
easy to edit both questions and answers to improve them. To join the
Piazza group for CPSC 304, please go to piazza.com/ubc.ca/winterterm22016/cpsc304 and follow the instructions.
Be sure to indicate
your full name, student ID, and the email address that you want to be
registered on Piazza (for this course) with.
Please note that Piazza is
a service that is hosted in the United States. (It is a startup that originated
at Stanford.) If this is not an issue for you, you are done and can skip the
rest of this para. If you wish to preserve your anonymity on Piazza, so
that none of your personal information is stored in the United States, you can
create a new anonymous email account and request your TA Dylan (aka Wengqiang) (email@example.com) to use that email
account for registering you. (If you already use a gmail, hotmail or other US
hosted email account, this is essentially moot.)
Final grades will be calculated
In addition, we will be running a midterm suvey of the course: You will obtain 0.5 point for
completing the survey. There may be additional surveys with similar reward points. You will be notified if they are run.
- 12% for tutorial
work (homework assignments; done in groups of size 2-3; started at
tutorial; to be completed and submitted at beginning of following
for the clicker questions (done individually, in class; discussion encouraged)
for the project (done in groups of size 4)
for midterm exams, and
for the final exam.
pass the course, you have to obtain at least 50% overall mark and, in
the final examination.
final grade for students who fail the project or the final exam will be
set to the minimum of the grade
calculated by the above
formula and 45%.
Obtain from Connect.
Midterm and Final Exam Policy:
- A valid UBC student ID must be presented before you will
be allowed to take the midterm.
- You must sign an honor code that says you are aware of
what constitutes academic misconduct and that you agree not to cheat.
- Only non-programmable calculators will be allowed.
- The midterm will be closed-book, closed-notes.
- We may require you to take preassigned seating. Please
watch this page for details.
- Simply missing a midterm does NOT automatically entitle
that person to a "makeup midterm". Absence must be explained with
proper and authentic documentation, e.g., doctor's certificate if it's
Covered for quizzes and final:
For the midterm, you are
responsible for all
material covered, including any assigned reading up to and including
the Thursdays's lecture in
the week before the midterm. Final will cover
the whole course.
Quiz and Final Samples:
Will be posted on piazza.
DISCLAIMER: The sample midterms/final (with solutions) are
posted as a study aid in preparing. They come with NO GUARANTEE about whether the actual midterm/final will or
will not be similar either in content or in style to what is