CSE logo University of Washington Computer Science & Engineering
 CSE444 Introduction to Database Systems - Spring 2008
  CSE Home   About Us    Search    Contact Info 

 Home Page
 Calendar/Lecture Notes
 Discussion List
 Connecting to SQL Server
 Exams and Solutions

CSE 444 Spring 2008 Syllabus

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. The purpose of this course is to provide an introduction to the design and use of database systems, as well as an appreciation of the key issues in building such systems.
We begin by covering the relational model and the SQL language. We then study methods for database design, covering the entity relationship model. Next, we discuss XML as a data model, and present languages for querying it. We see how XML is used for sharing data among different applications in a distributed environment. We then inspect the architecture of a database system, and discuss efficient storage of data, execution of queries and query optimization. Finally, we touch on some advanced topics in database systems.
Course Format
The class meets three times a week for lectures; we won't meet in the computer lab. We will follow parts of the textbook (see below). The lectures are designed to be clear and self-contained, and to cover all the material used in class. Still, you are strongly encouraged to read from the textbook, both in order to get a better understanding of the material covered and to learn about related topics, which are not covered in class. There will be 4 homework assignments (some of which will involve light programming), and 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 12:30-1:20, MGH 231
Midterm:  in class,  Wed. April 30 (tentative)
Final:        8:30 am -10:30 pm, Thur. June 12 (scheduled).
Instructor Information & Office Hours
Office hours  
Hal Perkins, Instructor CSE 548 543-4784 perkins[at]cs Mon. 4-4:30 & Wed. 4:30-5, CSE 006 lab + drop-in & appts. in office
Huei-hun Elizabeth Tseng, TA
tba 616-8179

<open> TA

Main textbook:

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

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

Other texts:

The library has the following that you might find useful if you require another explanation of a topic.
  • Database management systems by Raghu Ramakrishnan and Johannes Gehrke.
  • Fundamentals of database systems by Elsmasri and Navathe.
  • XQuery by Walmsley
  • XQuery from the experts, edited by Katz
  • 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
Some programming will be necessary in this course. One can only start to appreciate database systems by actually trying to use one. Databases only hold the data, the application logic needs to be written in some general purpose language, and we will use C# in this class.
Late Policy
Assignments are due at the beginning of class on the due date, unless otherwise announced. You may have up to four (4) late days during the quarter which can be used for any of the homework assignments or project phases (except for HW0 and part 0 of the project). Late days may only be used in 24-hour increments, that is, an assignment that is not submitted on time is one day late, even if it is ready an hour later. You may use at most two (2) late days on any one homework assignment or project phase. A project phase may only be submitted late if both partners have late days available, and both partners are charged for each day late. Please notify the TAs if you use late days on any assignment. Except for these late days, no late assignments will be accepted.
Tentative Grading Breakdown
Homework: 30%
Project: 25%
Midterm: 15%
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 course website and discussion list 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. Please check these resources frequently. A course mailing list will also be set up, primarily for sending messages from the course staff to everyone in the class. You will be automatically included on this mailing list if you are enrolled in the class.
Computer Systems
For the required hands-on homework, access to Microsoft SQL Server is needed, for which you will all be given accounts. This software is available in the undergraduate lab. Additional software may be required for the project and some homework assignments. It is technically possible to use other database systems such as MySQL or Oracle to do the project, but it is strongly discouraged, no support will be provided, and you need permission of the instructor if you really do have a compelling reason why you need to do this..
Note: You will be required to change the passwords the first time you access to MS SQL Server IISQLSRV. The new passwords must obey the Windows password policy as follows (from "MSDN" website):
Password complexity policies are designed to deter brute force  attacks by increasing the number of possible passwords. When  password complexity policy is enforced, new passwords must meet the  following guidelines:
   * The password does not contain all or part of the account name of 
     the user. Part of an account name is defined as three or more
     consecutive alphanumeric characters delimited on both ends by
     white space such as space, tab, and return, or any of the
     following characters: comma (,), period (.), hyphen (-),
     underscore (_), or number sign (#).
   * The password is at least eight characters long.
   * The password contains characters from three of the following four categories:
         o Latin uppercase letters (A through Z)
         o Latin lowercase letters (a through z)
         o Base 10 digits (0 through 9)
         o Non-alphanumeric characters such as: exclamation point (!),  dollar sign ($), number sign (#), or percent (%).

Please contact a TA if there is some problem with your account on IISQLSRV.

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 except when explicitly allowed otherwise. 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 Computer Science & Engineering
University of Washington
Box 352350
Seattle, WA  98195-2350
(206) 543-1695 voice, (206) 543-2969 FAX
[comments to perkins]