CS411 Fall 2004
Wednesday and Friday, 3:30 - 4:45pm,
1320 DCL
Note: First class will meet on Friday 8/27.
Administration
About the Course
As the first introductory course for databases, this course studies the
fundamentals of using and implementing relational database management systems.
First, from the user perspective (i.e., how to use a database system), the course will discuss conceptual data modeling, the relational and other data
models, database schema design, relational algebra, and the SQL query language.
Further, from the system perspective (i.e., how to design and implement a
database system), the course will study data representation, indexing, query
optimization and processing, and transaction processing.
Prerequisites
-
Background:
CS 225 or
CS 300 (current CS400).
-
Programming: For projects, you will do some significant application programming,
with both SQL and some host languages of your choice (e.g., C, C++, or Java). We will not cover programming-specific issues in this course.
Textbook
Course Format and Activities
This course will draw materials from the textbook as well as recent database
literature. Students will study the materials and complete a project.
Lectures and Class Participation
While the class lectures will be recorded for distant students, we strongly
encourage (and appreciate!) on-campus students to attend classes, because
effective lectures rely on students participation to raise questions and
contribute in discussions. Although we probably will have a large class, we will
strive to maintain interactive class discussions if possible.We will provide lecture notes before class. If ready in time, these
lecture notes will be posted on the course Web by 6pm of the day before
(in which case please print and bring them for yourself). Otherwise, we will bring copies
to class.
Questions, Discussions, and Help
- If you have any questions or clarification of class material, what
to do? First, try to discuss with your project group peers-- This way,
you can get immediate help, and also learn to communicate "professionally"
with your peers. You will know the material better by discussing with and
explaining to your peers.
- Next, if you do not get a satisfactory answers, try to post your question
to the newsgroup (class.cs411 at news server news.cs.uiuc.edu) whenever possible, or otherwise
email your section TA. Note the newsgroup is for
you and your peers to discuss class-related materials and to help one another.
The TAs will monitor the newsgroup and try their best to help. But please be
aware that the TAs may not be able to answer all questions on the newsgroup in
a timely manner, due to the overwhelming number of questions that such
newsgroups sometimes generate. Also, there are obviously things that are not appropriate for the newsgroup,
such as solutions for assignments as well as comments or requests to the staff.
- In any case, for more thorough discussion, come to our office hours
(see here for schedule) if you can! The TAs and the
instructor will have office hours for all weekdays. Don't be shy. Use our
office hours to their fullest extent to help your study.
- Any announcements will be posted on both the newsgroup and the
Announcements page. Make sure to check either
place frequently enough to stay informed.
Reading
Read the textbook for the required reading before lectures, and study them
more carefully after class. Please note that all the required readings are fair
materials for exams. These materials may not be fully covered in lectures. Our
lectures are intended to motivate as well as provide a road map for your
reading-- with the limited lecture time we may not be able to cover everything
in the readings.
Assignments
There will be four written assignments, spaced out over the course of the
semester.
Projects
There will be a semester-long project, which involves significant database
application programming. The project will be structured with several milestones
due in the course of the semester, leading to a demo and write-up near the end
of the semester.
There will be two exams: midterm and final. We will not normally give make-ups for missed exams; please see
the policies.
sample midterm: Fall 02 Solution Fall 03
Extra Quarter-Unit Work (Optional for Graduate Students)
Graduate students MAY take this course for one unit instead of .75 unit.
(Undergraduates take this course for three hours credit.) Those taking the class
for more credit are expected to do more work. In this case, the one unit
students will do an extra project. More details will be posted at the
quarter-unit project page.
Evaluation
We plan to determine final grades of the course in the following way:
-
Homework assignments: 20%
-
Project: 30%
-
Midterm exam: 20%
-
Final exam: 30%
-
Extra-project for one-unit students: 25%. The overall scores will be scaled
proportionally.