The class meets one time a week for lectures. We will follow parts of the textbook (see below). While the lectures are designed to be clear and self-contained, and to cover all the material used in class, 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. Please note that the lectures will be a combination of whiteboard, powerpoint, and live demos. Lecture notes will be made available online, but they are brief and insufficient to learn the material. The lesson is: do not miss classes, and do take notes.
There will be several homework assignments involving programming, several paper reviews, and a take-home final exam.
Introduction to Data Management: Introduction to the principles of database management systems. Topics include database system architecture, data models, theory of database design, query optimization, concurrency control, crash recovery, and storage strategies. 4 credits.
Here is a more specific list of potential topics that will be covered in this quarter's PMP 544 (not necessarily in this order):
Required:
Database Systems: the Complete Book, by Hector Garcia-Molina, Jennifer Widom, and Jeffrey Ullman. Available from the University Bookstore. Second edition.
Other texts:
The library has the following that you might find useful if you require another explanation of a topic.
Homework assignments: you are allowed a total of 4 late-days with at most 2 late-days per assignment that you can use in 24-hour chunks at anytime. Once you use-up your late days, no additional extensions are granted for any reason! Late submissions will not be graded. Think of late days as a safety net in case of a true emergency, not as a convenience. Normally, you should use no late days during the entire quarter; if you do have an emergency, then you should use 1 or 2 late days. If you end up using all 4 late days, you are doing it wrong.
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. We will use the following tools in class:
The course website and discussion board will be used extensively to provide you with course information, such as the schedule mentioned above, homework assignments, class messages and many other things. There is a discussion board hosted on Piazza that everyone should use to keep in touch outside of class. Please see the main webpage of the course for details.
You are encouraged to discuss the content of this course with anyone you like. Unless otherwise stated, each homework and programming assignment is to be done individually.
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."
Any attempt to misrepresent the work you submit will be dealt with via the appropriate University mechanisms, and your instructor will make every attempt to ensure the harshest allowable penalty. The guidelines for this course and more information about academic integrity are in a separate document. You are responsible for knowing the information in that document.