* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download AUCSC 330 - Database Management Systems I
Relational algebra wikipedia , lookup
Serializability wikipedia , lookup
Microsoft SQL Server wikipedia , lookup
Open Database Connectivity wikipedia , lookup
Functional Database Model wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Concurrency control wikipedia , lookup
Clusterpoint wikipedia , lookup
AUCSC 330, Sec B2/H2 Course Outline Augustana Campus, University of Alberta, Winter 2016 AUCSC 330 - Database Management Systems I Course Objectives: To introduce you to current database systems theory and practice, including • relational database design, specifically entity-relationship modelling, relational schemas, functional dependencies and normalization; • relational algebra, the SQL query language, application design and development using a current database management system; • B-tree indexes and hashing, query processing, transaction management. Calendar Description: Introduction to current database management systems in theory and practice. Topics include relational database design (including entity-relationship modelling, relational schema, and normal forms); relational algebra, use of a query language (typically SQL) and other components of a current database management system; overview of database system architecture, file structures (including B-tree indices), query processing, and transaction management; new directions. Prerequisite: AUCSC 112 or 210, and AUMAT 250 Credits/Hours: Core Skills: Instructor: Office: 3 credits (3 lecture + 1.5 lab hours per week) thinker, communicator Dr. Bill Hackborn C152, 780-679-1106. Office Hours: Tuesday/Thursday: 2:30 – 4:30 p.m. OR by appointment at other times/days Wednesday/Friday: 10:00 – 11:00 a.m. E-mail: [email protected] (when emailing, please use CSC330 in the subject line) Recommended Text: Database System Concepts, 5th Edition; Silberschatz, Korth & Sudarshan Authors’ website for the text: http://codex.cs.yale.edu/avi/db-book/db5/ Other Resources: AUCSC 330 eClass site (via the eClass link on the Augustana home page) Evaluation: Your final grade is determined by the weighted scheme below: Participation 10% Assignments 30% Group Project 15% Midterm Exam 15% Final Exam 30% Participation: This will be based partly on class attendance and partly on class contributions (e.g. asking good questions, answering questions, etc.). If you need to miss a class, please send me an email, preferably before the missed class, stating the reason for your absence. At the end of the course, I’ll ask you for a self-evaluation of your participation, which may affect the result. Assignments: There will be four assignments. These will involve both written work (including diagramming) and lab work (using a database management system). Limited consultation with another student about assignment solutions is acceptable if the work you submit is still genuinely your own (see the statement on Academic Integrity below). AUCSC 330, Sec B2/H2 Course Outline Augustana Campus, University of Alberta, Winter 2016 Group Project: Groups (of roughly 3 students per group) will tackle a Community Service Learning (CSL) project involving an analysis of the information needs for a Augustana web application and the implementation of those needs using a database management system. These projects coincide with software engineering projects in AUCSC 320. Each group will present their work at the Student Academic Conference on the evening of Monday, April 4. Midterm Exam: Tentatively scheduled for Wednesday, March 2, in the lab class. Final Exam: To be scheduled by the Registrar (the exam period is April 14 to 23). Grading: In this course, conversion of percentage scores to letter grades is roughly 92-100% A+ 87-91% A 82-86% A- 78-81% 74-77% 70-73% B+ B B- 66-69% 62-65% 58-61% C+ C C- 54-57% 50-53% 0-49% D+ D F Grade thresholds may be shifted slightly to take into account the relative performance of students within the course. Normally this shift will benefit students. Academic Integrity: The University of Alberta is committed to the highest standards of academic integrity and honesty. Students are expected to be familiar with these standards regarding academic honesty and to uphold the policies of the University in this respect. Students are particularly urged to familiarize themselves with the provisions of the Code of Student Behaviour (see link given below) and avoid any behaviour which could potentially result in suspicions of cheating, plagiarism, misrepresentation of facts and/or participation in an offence. Academic dishonesty is a serious offence and can result in suspension or expulsion from the University. (GFC 29 SEP 2003) For more information, please go to http://www.tie.ualberta.ca/ and click on the Code of Student Behaviour link at the bottom of the page. Past Evaluative Material: Previous tests and exams will be posted on the course eClass site. Cell Phone Use: Out of respect for your own learning, your fellow students, and your instructor, texting and other cell phone use is NOT permitted in the classroom. Cell phones are distracting. Recording of Class Sessions: Audio or video recording of lectures, labs, seminars or any other teaching environment by students is allowed only with the prior written consent of the instructor or as a part of an approved accommodation plan. Recorded material is to be used solely for personal study, and is not to be used or distributed for any other purpose without prior written consent from the instructor. Special Needs: Students registered with Student Accessibility Services (SAS) who will be using accommodations in the classroom, or who will be writing exams through SAS, are required to provide an Accommodation Letter to me as soon as possible and are encouraged to make an appointment with me to discuss these accommodations and any other related concerns. If you require disability-related educational supports and you have not yet met with the SAS advisor, please contact Student Accessibility Services, FL 2-329, Faith and Life Centre, 780-679-1649, or [email protected] . Readings: The course overview on the next page indicates the sections of the text book that deal with the topics covered. It is advisable to read these sections, or (since the textbook is merely recommended) equivalent material found elsewhere, to complement the information covered in class (as class time alone is not enough to cover every topic completely). Be an active learner. NOTE: Policy about course outlines can be found in Section 23.4(2) of the University Calendar. AUCSC 330, Sec B2/H2 Course Outline Augustana Campus, University of Alberta, Winter 2016 Course Overview Topic Text Reference Approx. Date of Completion Introduction to Database Systems Chap 1 Jan. 6 Database Design and the Entity-Relationship Model entities, relationships, attributes, keys, constraints entity-relationship diagrams reducing an E-R schema to relational schemas other database design issues, UML Sec 6.1-6.3 Sec 6.4-6.8 Sec 6.9 Sec 6.10-6.11 Jan. 15 The Relational Data Model the structure of relational databases relational algebra relational calculus Sec 2.1 Sec 2.2-2.6 Sec 5.1-5.2 Jan. 29 SQL background, data definition, basic structure set operations, aggregate functions, null values, views nested subqueries, complex queries modification of a database join types and conditions Sec 3.1-3.3 Sec 3.4-3.6, 3.9 Sec 3.7-3.8 Sec 3.10 Sec 3.11 Feb. 5 Advanced SQL data types, integrity constraints, authorization embedded SQL, dynamic SQL other advanced features Sec 4.1-4.3 Sec 4.4-4.5 Sec 4.6-4.8 Feb. 26 Relational Database Design features of good relational design, first normal form functional dependencies and higher normal forms the overall database design process, temporal data Sec 7.1-7.2 Sec 7.3-7.7 Sec 7.8-7.9 Mar. 16 Application Design and Development user interfaces and tools, web applications triggers, more on authorization, application security Sec 8.1-8.5 Sec 8.6-8.8 Mar. 18 File Structures, Indexing, and Hashing secondary storage and file organization ordered indices, B-tree index files and variations static and dynamic hashing, indexing vs. hashing Chap 11 Sec 12.1-12.5, 12.10 Sec 12.6-12.8 Mar. 30 Query Processing overview, measures of query cost determining the cost of some operations Sec 13.1-13.2 Sec 13.3-13.7 Apr. 1 Transaction Management transaction ACID properties, transaction states concurrency and serializability using locks to control concurrency Sec 15.1-15.2 Sec 15.4-15.5, 15.8 Sec 16.1 Apr. 8