1 Fall 2013. MIS 686. Classroom: GMCS 306 PROFESSOR: Dr. KOSTER OFFICE HOURS: DATABASE MANAGEMENT SYSTEMS Time: W. 16-18:40 Office: SS 3112 phone: 594-1020 Department: SS 2411 phone: 594-5316 email: akoster@mail.sdsu.edu Monday and Wednesday: Starting at 18:50 ---------------------------------------------------------------TEXTBOOKS Required: Database Management Systems, 2011 edition, A. Koster, Customized Material, Montezuma Publishing Required: Modern Database Management, 11e, Hoffer, Ramesh, Hopi, 2013 (Pearson) _________________________________________________________________ COURSE OBJECTIVES: The objective of this course is to provide students a broad familiarity with modern techniques of database design, organization and processing in computer-based information systems. The emphasis in the course will be on the application of data management software for designing, creating, and manipulating databases. In the process, concepts involved in analysis, design, and administration of large databases will be discussed. The relational database model will be covered in depth. Introduction to Data Warehouses and Big Data Course concepts will be illustrated through the design, implementation, and processing of a database using the relational database management system ORACLE and the database language SQL. ----------------------------------------------------------------PRIMARY LEARNING OBJECTIVES Describe how relational databases store business data and provide desired information. Understand the database environment and the functions of the database administrator Analyze organizational information requirements and business rules using the entity-relationship approach and model them as Entity-Relationship Diagrams (conceptual database design). Map an Entity-Relationship Diagram to a relational database (logical database design). Use normal form theory to analyze and correct some flaws in a database design. Create a database with the ORACLE Database Management System and process complex information using the SQL language. Understand the concept of transaction and describe how a DBMS enforces security, recovery from failure, and concurrency control 2 EXAMINATIONS AND GRADING: The course grade will depend on three examinations, projects, and class participation as follows: 1. Three midterm examinations and quizzes 60% (20%, 20%, 20%) 2. Assignments and projects 30% (weights:6.5, 1.5, 7, 5) 3. Class participation- Presentations 10% Letter grades are provided to students for each exam and project as an approximate indication of their standing in class, but final class grades are computed using the numeric scores. -----------------------------------------------------------------Communications Instructor-Students: Exam topics, projects, and schedule changes are sent via email. Students’ email addresses are collected during the first week of classes. Please, make sure the email system you use is reliable. ----------------------------------------------------Schedule and Topics. Exam and project dates are tentative. Changes, if any, will be announced in class and by email. (August 28) Introduction to database systems. The database environment Koster, pages 3-14 (Hoffer, Chapter 1 through page 17; light: pages 25, 27 through 31) Phases of Database Design. READINGS: Koster pp. 15-17 Information Requirements. (September 4) Data modeling using the Entity-Relationship approach (Crow’s foot conventions). READINGS: Koster, pp. 18-30. (Hoffer: Chapter 2 thru p. 93) (September 11) Data modeling using the Entity-Relationship approach, cont. Advanced elements of the Entity-Relationship approach. Generalization hierarchies. READINGS: Koster, pp. 32-37, cont. (Hoffer: Chapter 3 thru p. 125) (September 18) The Relational Database Model. Tables, attributes, candidate keys, primary keys and foreign keys, integrity rules. Other data models. READINGS: Koster, pp. 38-40 (Hoffer Chapter 4: sections called “the Relational Data Model”, pp. 154-156, and “Integrity Constraints”, pp. 158-160) Logical Database Design: Mapping an entity-relationship design into a relational database. READINGS: Koster, section on mapping: pages 41-56 (September 25) Introduction to SQL and ORACLE. The SQLPLUS interface. Editing and saving SQL commands with “pico”. READINGS: Koster, Pages pp. 57-64, pages 158-160 CREATE TABLE statement. Expressing integrity constraints. Data types. INSERT statement. SELECT queries on single tables. READINGS: Koster, Pages pp. 65-87.(Hoffer readings,chapter 6, TBA) 3 (October 2) SQL, cont. Arithmetic. Null values. Functions. Aggregate functions. GROUP BY clause, HAVING clause READINGS: Koster, Pages 65-93. (Hoffer, ch 6- limited to same topics as Koster) Project part 1 due on October 2 (Entity-Relationship Design) (October 9) Queries on multiple tables (joins). Various forms of joins. Nested subqueries for joins. Other topics TBA READINGS: Koster, page 94-107. (Hoffer, ch 7—selected topics TBA) October 9. Exam #1 (October 16) Advanced elements of SQL,cont UPDATE, INSERT, DELETE statements. Nested subqueries for data modification. Correlated subqueries. READINGS: Koster, page 108-116 Project part 2 due on October 16 (logical design) (October 23) Advanced elements of SQL,cont. View creation. Rules about modifying view data. READINGS: Koster, pages 117-123. (October 30) Normalization of databases; normal forms. READINGS: CACM Article by Kent: A Simple Guide to Five Normal Forms. Koster, section on normal forms, pages 131-146 (ignore Normal Form 5) (November 6) Transaction Management and Database Administration: ACID properties, data integrity/security/privacy, concurrency control. GRANT and LOCK commands. READINGS: Koster, pages 127-130 (GRANT commands) Pages 152-154 (Hoffer- ACID properties: Ch 11 p. 489) (Hoffer- security: Ch 11 thru bottom of p. 472 to p. 478, 480 to 484) (Hoffer- concurrency control: Ch 11 pp. 493 to p. 499 Project part 3 due on November 6 (database creation and simple processing with ORACLE) (November 13) Recovery from failure. READINGS: Koster, section on recovery from failure, pages 155-157. (Hoffer, chapter 11 pp. 486 to 488) SECOND MIDTERM EXAM: November 13 4 (November 20) Physical characteristics of input/output devices. Sequential access vs direct (random) access to data. Index files and B-Trees Koster, section on data structures, pages 147-149, 126. (Optional Hoffer, bottom p . 220 to p. 230, p.562 to 565) (November 27) Data warehouses. Readings: Hoffer Ch. 9 Project part 4 due on November 27- (advanced processing with ORACLE) (December 4). Data warehouses cont. Midterm #3 on December 4 or 11 (TBA) (December 11) Selected presentations Readings: Hoffer Ch. 9