Class Meetings
Venue: Fuller Labs 320
Date/Time: Monday and Thursday: 1:00pm - 2:50 pm
Teaching Staff
Instructor:
Elke A. Rundensteiner, FL-238, x-5815 (rundenst)
Office Hours (in FL-238): Tu 3:00pm - 4:00pm and Thu: 4:00pm - 5:00pm.
TAs: (TA Fuller Labs sub-basement in room FL-A22)
Kenneth Loomis (kjloomis)
Office Hours: Tu: 4:00pm to 5:00pm, Wed 1:30pm to 2:30pm
Xika Lin (xika)
Office Hours: - Mo: 10:00am - 11:00am, Th: 5:00pm - 6:00pm
Purpose of Course
In this digital age, data of every increasing volumne
is beginning generated daily. This overload of data is
putting those that know how to effectively manage and extract
information from such mountains of data into a distinct advantage.
In many cases, data is mission critical to an enterprise's
economic success.
Thus database systems are a critical component of today's software systems.
This second course in database systems concentrates on the study of the
internals of such database management systems. That is, we will look
"under the hood" to learn about the key techniques and technologies
within database systems.
In particular, we will learn
about what makes a database management system efficient so to be able
to extract relevant information out of huge data sets. The principles
and theories of physical storage management, query processing and
optimization, and index structures for relational databases,
transaction processing, and concurrency control will be covered. Time
permitting, a selected subset of issues from database recovery,
security, web database systems, or client server systems, may be
discussed.
The knowledge gained should be useful not
only for building software systems that have to
handle data of huge volumes, but also for
effectively using a commercial DBMS system.
Who should take the Course
The intended audience is computer science and computer engineering
majors. In this class, you will assume that you already know how to
use a database system, such as Oracle or SQL Server. And, thus that
you are familiar with concepts such as the relational data model,
relational query languages such as SQL and database database design
such as ER modeling.
Any student taking this class is expected to have sufficient
programming experience. This means that you should be comfortable with
at least one high-level programming language, be it Java, C++, etc.
Recommended Background
Beginning database design knowledge such as gained in CS3431
or in a job
(in particular, knowledge of the relational data model and SQL)
and some knowledge of software development
(such as gained in CS3733) are recommended. If you are in doubt
about your background being sufficient,
please discuss this with the instructor of the course.
Mailing List and Email Consulting
A group mailing list cs4432 for the
class has been set up for timely communication of
relevant information pertaining to the class.
This may concern
cancellations of the lectures due to snow storms,
last minute changes to some assignment, you name it. Basically
any issues that must be communicated to the class in a
very timely fashion. It is thus the student's
responsibility to make sure
that he or she have indeed been added to the list.
However most
routine
communication
about the class,
such as information and questions about
the projects and assignments,
is expected to take
place via the mywpi course website.
Course Requirements and Grading Policy
Final grades will be computed based on a total
of 100 pts as follows:
- Homework Assignments: 20%.
- 3 Projects: 30%. (10% each)
- 3 Exams: : 45% (15% each)
- Class participation: 5%.
Grading policy for each project and homework will be provided at the time
of the assignment.
All are assumed to be done individually by each student, unless
otherwise stated on the assignment.
Exams.
There will be three exams held in class. They will be closed book,
closed notes. Each exam will test your understanding
of the ideas and objectives of the class as
covered in the course book, in lectures and in homework assignments.
Written Homeworks.
There will be 4-6 written homework assignments. Written assignments
consist of problems from the book,
made up problems, or readings from the literature.
Projects.
There will be 3 project assignments.
Each assignment will involve programming of some functionality
of a database system.
MyWPI Information Portal: Discussion Board and Grade Repository
We plan to manage this course via the MyWPI information portal.
In particular, your submission of homeworks and projects,
whenever electronic, will be done
via MyWPI. Similarly, questions, discussions, and other
exchanges about the assignments is expected to take place
via the MyWPI discussion board.
Your grades for the different assignments will also be
posted on MyWPI. You can access
the MyWPI information portal here:
myWPI
If you have general questions about myWPI, you can get
information and your questions answered either from
http://www.wpi.edu/+myhelp or via email to myhelp@wpi.edu.