CSE logo University of Washington Department of Computer Science & Engineering
 CSE444 Fall 2002
  CSE Home   About Us    Search    Contact Info 

 Home Page
 Calendar/Lecture Notes
 Email archive
 Alternative Archive option
 Assignments and Solutions

CSE 444 Syllabus

Dan Suciu, Autumn 2002

University of Washington 
Web site: http://www.cs.washington.edu/education/courses/cse444/CurrentQtr/

Course Goals
Databases are at the heart of modern commercial application development. Their use extends beyond this to many applications and environments where large amounts of data must be stored for efficient update and retrieval.  Their principles and fundamental techniques are being extended today to the Web and to other, non-relational data, mostly XML.  The purpose of this course is to provide an introduction to the design and use of database application using a database systems, to some of the techniques used to manage XML data, and to gain an appreciation of the key issues in building a database system.
We begin by studying the usage of database systems through the SQL query language. Then we will study the relational model in detail, and database design using the entity relationship model. We then discus semistructured data, XML, and languages used for accessing it: XPath and XQuery. In the second half of the course we will discuss data storage, algorithms for implementing the physical operators, indexes, query optimizations, and some aspects of transaction management.
Course Format
The class meets three times a week for lectures. We won't meet in the computer lab except perhaps very occasionally. We will follow parts of the textbook (see below). There will be 6 homework assignments (some of which will involve light programming). In addition, there will be a programming project. You can usually find copies of the slides used in the lecture on the web site, on the day of the lecture.
MWF 10:30-11:20, EE1 045
Instructor Information & Office Hours (subject to change -- check Web site)
Office hours  
Dan Suciu, Professor Sieg 318 685-1934 suciu[at]cs.washington.edu Monday 11:30 - 12:20
Yana Kadiyska, Teaching Assistant Sieg 226a
Sieg 226b
N/A yana[at]cs.washington.edu Tue: 1:00-2:00 pm,
Wed: 9:30-10:30 pm

Main textbook:

  • Database Systems: the Complete Handbook, by Hector Garcia-Molina, Jennifer Widom, and Jeffrey Ullman. Available from the University Bookstore

Alternative textbook (almost the same text, but in two volumes):

  • A First Course in Database Systems, by Ullman and Widom and Database System implementation by Garcia-Molina, Ullman and Widom, 2000

Web sources: there will be some reading assignments from the Web:

Other texts:

The library will have on reserve three other books that you might find useful if you require another explanation of a topic:
  • Fundamentals of database systems by Elsmasri and Navathe.
  • Database management systems by Raghu Ramakrishnan.
  • Foundations of database systems by Abiteboul, Hull and Vianu.
  • Data on the Web: from relations to semistructured data and XML by Abiteboul, Buneman, Suciu.
Programming and Homework
This is not a programming class. Nevertheless, some programming will be necessary. There will be some mandatory SQL programming for setting up and querying a database. Such queries are usually short compared to typical programs in other languages. There will be some SQL practice, and some homework that doesn't involve programming at all. The bulk of the programming will be for the class project.
Late Policy
Assignments are due at the beginning of class on the due date, unless otherwise announced. Barring unusual circumstances, late homework will not be accepted.
Tentative Grading Breakdown
Homework: 25%
Project: 25%
Midterm: 20%
Final: 25%
Intangibles: 5%
I hope you will attend every lecture. If you miss a lecture, talk to a friend who was present, and be sure to check the Web site for class messages.
The World-Wide Web and e-mail will be used extensively to provide you with course information, such as the schedule mentioned above, homework assignments and solutions, class messages and many other things.
Computer Systems
For the required hands-on homework, students need access to Microsoft SQL Server.  This software is available in the NT lab (Sieg 232). Additional software may be required for the project. You are allowed to use a different relational database management system, if you wish. For example a commercial one like Oracle or DB2, or one of the freely available ones, like Postgres (http://www.us.postgresql.org/), or MySQL (http://www.mysql.com/). If you do so, then you need to install and manage it yourself: we will not provide support.
Computer Use Policy
Some excerpts from the campus policies. Take them seriously: "You must use all UW [computing] resources in strict accordance with local, state, and federal laws. These laws cover such areas as illegal access to computer systems, networks, and files; copyright violations; and harassment issues... Software and information resources provided through the university for use by faculty, staff, and students may be used on computing equipment only as specified in the various software licenses. Unauthorized use of software, images, or files is regarded as a serious matter and any such use is without the consent of the University of Washington...If abuse of computer software, images, or files occurs, those responsible for such abuse will be held legally accountable."
Academic Misconduct
 All work turned in is expected to be your own. Although students are encouraged to study together, each student is expected to produce his or her own solution to the homework problems. Coping or using sections of someone else's program, even if it has been modified by you, is not acceptable. The University has very clear guidelines for academic misconduct and the staff of CSE 444 will be vigorous in enforcing them.

CSE logo Department of Computer Science & Engineering
University of Washington
Box 352350
Seattle, WA  98195-2350
(206) 543-1695 voice, (206) 543-2969 FAX
[comments to yana[at]washington.edu]