Time and Place
Location: SH 134
Time: 12:30- 1:50 PM Tuesdays and Thursdays
Course Objectives and Goals
This course provides students with an introduction to the design of databases and the use of database management systems for applications. We will cover the entity relationship (E/R) approach to database design. We will cover the relational data model, mapping E/R designs to relations, relational design theory, abstract query language such as relational algebra, and programming in SQL. Students will get exposure to how relational database management systems are used to implement a database. Time permitting, we will also consider advanced database management features such as object-oriented and object-relational database systems. This course is aimed at database design and use of database management systems in implementing database applications. It does NOT cover the implementation of database management systems which will be covered in extensive details in the follow-on courses ICS214a, ICS214b and ICS215.
Prerequisites
Students should have experience of programming in either C++ or Java. Proficiency of the UNIX environment will be helpful.
Collaboration Policy
Students are encouraged to work in a group for their project assignment. The groups should not have more than 3 students. The assignments on the other hand should be individually. Students can however feel free to discuss the assignment with their peers.
Grading Criteria
Online Assignments | 15% |
Project | 25% |
Midterm | 25% |
Final Exam | 35% |
Textbooks
A First Course in Database systems, by Jeff Ullman, and Jennifer Widom.
Database Systems Concepts, by Silberschatz, Korth, and Sudarshan