Introduction to Database
Prof: Chris Fernandes
Office Hours: Mon 2-5, Tues 2-4, Fri 1-3
and anytime my door's open!
Office: 219 Steinmetz Hall
Course Webpage: nexus.union.edu
Text (1 required). Available at the Bookstore:
Elmasri and Navathe,
Fundamentals of Database Systems. 6th ed,
This is an introductory course to modern databases. We will discuss
the design, creation, and querying of databases, with an emphasis on
the relational model but touching on others as well. Our
primary focus will be the modeling and usage of databases.
The design of database management systems (including file
structures, indexing, etc.) are covered in our Advanced Databases course.
The goals of this course are for you to be able to:
- think critically about how to model a database
- extract the pertinent information about an enterprise which should be
incorporated into a database
- translate useful questions about data into computer-understandable
queries (and vice versa)
- understand the theoretical foundations as to why databases are
designed and used in a particular way
- understand some of the ways that database technology is applied
today and the problems that are still waiting to be solved (maybe by
Topics to be covered include
- Relational Data Model
- Entity-Relationship Model
- Conceptual and Logical design
- Relational Algebra and Calculus
- Query Processing
- Distributed Database Systems
- Other Data Models
- Exams. There is 1 midterm on Thursday,
If you cannot be at an exam for a good reason (illness, for
then please let me know so we can make other arrangements.
The final will be cumulative. You will be responsible
for all material covered in the readings and in lectures. Exams are
closed book and closed notes, though, for the midterm, you will be
allowed to bring in
a typewritten or handwritten sheet of paper with notes (front and back).
For the final, you are allowed 2 pages of notes (front and back).
- Homework. Weekly homework will be assigned throughout
the term. Homework is due
at the start of class on the day it is due. No lates will be
accepted. Homework that is not typed will not be accepted.
- Project. A design project will be assigned
near the middle of the term. You will research, design, create,
and query a database from the ground up. You will then give
an oral presentation describing your results.
- In-class quizzes. These will always be announced
in advance and usually pertain to recently-covered material.
Quizzes are open book, open notes.
- Seminars. The CS department has a (usually) weekly seminar
that explores the diverse and rich field of computer science.
Our seminars discuss a variety of topics, including, computer science research,
applying for CS jobs or graduate school, and career and technical skill development.
The seminars are frequently presented by visitors from academia and industry, and alumni.
The seminar is typically Thursday during common lunch (1250-145pm) with a lunch
provided at 12:30pm and is held in Olin 107. Seminar dates and topics are announced
in class and on the CS department mailing lists. As part of taking this course,
you are expected to attend at least one CSC seminar this term and a submit
brief written summary using
this webform (https://tinyurl.com/unionCSseminar).
Summaries are due on the last day of class and will count as part of your project grade.
Of course, you are strongly encouraged to attend as many CSC seminars as you are able.
- Homeworks: 25%
- Project: 15%
- Quizzes: 20%
- Midterm Exam: 20%
- Final Exam: 20%
Struggling on your own to figure out what to write next is where a lot of the learning
happens in CS. Give yourself the opportunity to do this -- ALONE. Here are some specifics
(this is not a complete list):
- Working together on homework is ok, but you should only
discuss problems in general terms like, "I think 'CAR'
should be its own entity set because of what it says in the
2nd paragraph of the design document" or "I think this query looks
like the ice cream demo from class." Never write the actual answer
together -- always write it by yourself and don't compare
them afterwards. If you're really questioning your own answer,
you can talk to me about it.
- If someone asks you for help on a part of some problem, help them
by doing a different example on a separate sheet of paper.
Or by going over a class demo together that is similar. If the person
is really stuck or doesn't even know when to start, that person
should be talking to me.
- DO compare answers after you get your graded homework back.
There are many ways of writing a correct answer and looking
at others' ways of thinking can help you.
- Projects will be unique to each individual, so those should
be done solo, but feel free to ask others for advice like, "How do
you interpret this part of the ER diagram I drew? I want to
see if it matches my interpretation." or "Do you think this table
needs to be split into two?"
- You must cite everything and everyone you worked with, including
people you worked with, CS helpdesk, and URLs of web sites.
You don't need to cite our own textbook or help from me.
We have an honor code and I trust y'all to follow it.
Read up on it at
honorcode.union.edu. All suspected
violations will be reported to the Honor Council chair and Dean
If you have any questions about what's ok and not ok, ask me!
What you need to do
To prepare for class, you are required to do the following:
You are expected to be present for every class. However, I realize that
sometimes other things come up (interview, illness, etc.) so
just please let me know in advance or by phone/email if you're going to
be absent. Unexcused absences are NOT allowed and will
affect your grade. If you miss class, get notes from someone
and do the readings before coming to see me. I'm happy to
explain things, but I won't repeat lectures for you.
Read the text
Lectures will primarily follow the major topics covered by the text.
You should do the reading for that week before coming to class so
that questions you have about the material can be answered during
There will always be a time for questions about the readings or previous
lectures at the beginning of class. Take advantage of it.
Check the webpage on Nexus
The reading assignments (and other announcements) will be
posted regularly on the course webpage. You are required
to check it at least once a week. I usually update it over the weekend.
Check your email twice per day
I will send email throughout the term for a variety of reasons
such as answering frequently asked questions and warning you
of pitfalls in the assignment. I know, it's old tech, but
I'm not going to text you or post to your Facebook wall. Please check it at least twice daily.
There's a lot to learn when it comes to database design, so your
job is to stay engaged. If you're using a laptop/tablet to take notes,
that's fine, but
class time is for class work. Using your computer for other things like
other classes' work, checking Facebook, reading email, or catching the latest ESPN
highlight video is not permitted. This policy extends to cell & smart phones too.
Phones should be in silent mode and out of sight (mine and yours).
Class goes by quickly. Stay focused.
If you're done with an in-class exercise, don't allow yourself to get bored.
Extend the exercise. Or help out your neighbor.
I always have at least one student each term who loses all of
his/her work due to a computer glitch or hard drive crash.
Don't let it be you. Make backups
of everything either by saving it on a USB flash drive or
storing it on your orzo account.
Union College facilitates the implementation of reasonable accommodations, including
resources and services, for students with disabilities, chronic medical conditions and temporary
disabilities resulting in difficulties accessing learning opportunities. All students needing services must
first register with Accommodative Services located in Reamer 303. It is strongly recommended that
accommodations be requested within the first two weeks of the term. Last minute requests can be denied.
Any student with a documented learning disorder is welcome to
come talk to me privately about options for completion of exams and
The Bottom Line
Ask questions and seek help.
This is the most important point of all.
I live to answer questions. Don't be afraid to come to my office every single
day if you want. It's better for everybody (you AND me) if you understand
things sooner rather than later.