Undergraduate students enrolled in CSci 321 must have taken and successfully passed CSci 303, Algorithms, and CSci 304, Computer Organization.
Design, organization and implementation of database management systems: file organization and processing, hierarchical, network, and relational models of database structure, data definition and data manipulation languages, security and integrity of databases, and the study of existing database implementations.
Homeworks include both questions about the material presented in class and programming projects. The latter will require implementation in both C/C++ (whose knowledge will be assumed) and SQL (which will be covered in class).
Homeworks should be written or printed single-sided, and stapled in the upper left corner. Use of typesetting and drawing programs is required (no handwritten homeworks, please!). LaTeX and tgif are strongly recommended but not required (see Notation.tex , Figure.tex , and Figure.obj for a set of examples).
I do not accept late homeworks except for justifiable reasons, such as an illness (you must provide a doctor's written note).
Homeworks account for 50% of your grade.
There will be two in-class examination: the Midterm and the Final. I believe that exams should be administered to test your understanding, not your memorization, of the material. Hence, these exams are open-book and open-notes. Exams cover any material taught from the first lesson until the last lesson before the exam itself.
The Midterm Exam accounts for 20% of your grade; it will be scheduled sometime around mid-semester during normal class meeting times, in McGlothlin-Street Hall 020. The Final Exam accounts for 30% of your grade; it is scheduled for Tuesday, December 16, 2003, 8:30 a.m. - 11:30 a.m., in McGlothlin-Street Hall 020.
An overall grade of at least 90% results in a final grade A. An overall grade of at least 80% but less than 90% results in a final grade B. An overall grade of at least 70% but less than 80% results in a final grade C. An overall grade of at least 60% but less than 70% results in a final grade D. An overall grade of less than 60% results in a final grade F.
I reserve the right to raise the final grade, but not to lower it: if your overall grade is 89%, I might decide to give you an A- or a B+, but if it is 80% you are guaranteed at least a B.
I am very strict about the Honor Code, and I trust you are too. Any work you submit must be your own. You are not permitted to discuss your approach, your work, or your implementation for a particular homework or exam with anybody else but your instructor or the teaching assistant for this course. You may discuss material presented in class or found in reference books with your classmates; indeed, you are encouraged to do so.
In particular, unless stated otherwise, sharing or accessing information in permanent format (such as accessing someone else's files or allowing access to your own files, obtaining hardcopy outputs or handwritten notes, etc.), will be considered a violation of the Honor Code. If you have even the slightest doubt about whether a certain activity is admissible, ask before you do it!
Your programming projects will be tested on the Computer Science Unix System, hence you are strongly encouraged to develop them there. If you don't already have an account on our system, get one by typing newuser at the login prompt in one of the workstations in M-S Hall 121, and an empty password (i.e., hit the carriage return) at the password prompt. Then, follow the instructions that appear on the screen. To get started on Unix, you might browse our departmental system information.
If you have a disability that may affect your participation in this course and wish to discuss academic accommodations, please contact me as soon as possible.