Rochester Institute of Technology Golisano College of Computing and Information Sciences Department of Information Sciences and Technologies 4002-360.01 ~ Introduction to Database & Data Modeling ~ Spring Quarter 2013 Syllabus REMINDER: The information presented in this syllabus is subject to change, expansion, or modification as educationally appropriate during the quarter. Instructor: Jim Habermas Office: 70-2634 (585) 746-9331 email address: jrhabermas@gmail.com imessage: jrhabermas@gmail.com Office Hours: Monday & Wednesday 12 noon 3pm MyCourses conference: 4002.360 Intro Database and Data Modeling Course Text(s) and Materials 1. Kroenke, David M., Database Concepts (5 th Edition), Pearson Prentice-Hall, Upper Saddle River, NJ, 2010. (REQUIRED) 2. Fehily, Chris, SQL Visual QuickStart Guide (3 rd Edition), Peachpit Press, Berkeley CA, 2008. (REQUIRED) Be sure to bring a storage device (USB drive, etc.) to every class. Important RIT Deadlines Last day of add/drop is Sunday before Week 2 March 10th, 2013 Last day to withdraw with a grade of W : End of Week 8 Friday April 26th, 2013 Note: IST department policy states that a student has up to one (1) quarter to challenge a grade in a course. Course Description A presentation of the fundamental concepts used in data modeling and database implementation. The data modeling process, basic relational concepts, and the process of normalization, relational algebra, SQL, and guidelines for mapping a data model into a relational database will be covered. Students will model a multimedia and/or text-only problem and implement it on a single machine with a commercially available database package. 4002-360 Page 1 of 7 Intro to Database & Data Modeling
Course Objectives General: Provide students with the foundation skill set required to work with relational databases as they are used in business and industry application domains. The skill set includes the ability to read and interpret a simple data model, normalization, and the implementation of a small relational database. Specific: Upon successful completion of the course, the student should be able to: Read and interpret an entity-relationship (ERD) model diagram, and map it into a relational model. Apply the technique of normalization to a relational model that results in a set of normalized relations to the level of BCNF. Map a relational model into a DBMS product through SQL DDL statements. Query a relational database implemented in a DBMS product through SQL DML statements. Prerequisites 4002-218 Programming for IT II or equivalent 1016-206 Discrete Math for Tech II or equivalent Course Role in IT Curriculum This is an introductory database course required for all Information Technology students. Programs in Which This Course is Required for Graduation BS/IT Specific Program Outcome(s): Identify needs, analyze tasks, and develop profiles of users Program effectively within the student s specialty area Implement and query a relational database Participate effectively as a team member Be able to work effectively with the users of an organization Practice user centered design development and deployment BS/ANSA and BS/GD&D Specific Program Outcome(s): (same as above) 4002-360 Page 2 of 7 Intro to Database & Data Modeling
Course Organization Practice Exercises: Working with databases and SQL requires skills that are best mastered through practice. Following each lecture there will generally be a Practice Exercise designed to reinforce lecture concepts. These exercises will be collected and reviewed by your instructor/teaching assistant. You should complete the PE during the class session. If you do not complete them in class, they are due at the beginning of the next class session. Not handing in a Practice Exercise for any reason will result in a grade of zero for that exercise. There are no make-ups for missed Practice Exercises and they can t be submitted late. Homework: Homework assignments will be assigned as an integral part of this course. This work is to be done outside of the usual class hours. Homework assignments will be assigned each week and are due the following week. Homework assignments are due in the drop box by Sunday night at 6pm EXCEPT Week #9 when homework is due Thursday May 2 th at 6pm. A penalty of 25% per day late will be assessed for late submission of homework. Also, you will NOT be able to re-do an assignment once it is turned in for grading. The penalty of 25% off per day counts every day, including Friday, Saturday, Sunday and holidays. 4 days beyond the assigned due date the project is not permitted to be turned in for a grade. Examinations: Exams are designed to test (1) your mastery of terms and concepts, and (2) the successful application of concepts. There will be two (2) exams during the quarter. The use of notes, textbooks, and calculators will not be allowed during these exams (unless special accommodations on record at RIT permit them). The Midterm will generally be composed of two (2) parts. Part I will be a written examination covering material discussed during class, from the reading, and from your lecture notes. Part II will be a practical examination where each student will work with a database and execute DDL, DML, and DCL SQL statements to address a given problem or scenario. Midterm measures fundamental skills. If a student does not do well on this exam, he/she may still continue in the course, but should see the instructor immediately to discuss the situation. The Final measures more advanced topics that are keys to the student s understanding of databases and success in future database courses. The Final will be composed of two parts. Part I will be a practicum given on the last day of week 10. Part II will be given on the final day assigned to the course. Anticipated test dates are shown on the attached schedule. Requests to take a test at a different time will not be honored except in exceptional circumstances such as a documented medical excuse, a serious family emergency, conflicts with a RIT-approved off-campus event or other RIT-scheduled examination, and must be arranged with the instructor at least 24 hours in advance. 4002-360 Page 3 of 7 Intro to Database & Data Modeling
Missing an exam will result in a grade of zero (0) unless special arrangements have been made with the instructor. The final will be given during the officially scheduled time in finals week. Again, requests to take the final at a different time will not be honored except in the exceptional circumstances previously listed. If you have a conflict with another final exam, see your lecture professor as soon as possible before exam week. Extra Credit Work: No extra credit assignments will be given; so plan accordingly. Class Attendance Attendance in lectures is documented with practice exercises and sign-in sheets. You are required to attend all lectures and avail yourself of class time to participate in course discussions and activities. Your actions in the classroom and the lab should reflect the standards of behavior expected in a professional environment: you should be respectful of the professor, your classmates, and any course support personnel (notetakers, interpreters, etc). Plus you should willingly participate when asked to do so. Course Communication RIT mycourses Conference: All homework assignments, lecture notes, and other distributable course materials will be made available through RIT s course management system, mycourses. The mycourses conference for this course is in the My RIT Courses dropdown section, under 20123 Spring Courses, 4002.360 Intro Dbase & Data Model. Unless otherwise indicated, all student homework assignments will be submitted via mycourses dropboxes. You are expected to check the course conference and your email regularly. Your instructor will use this conference to disseminate information relevant to this course. Failing to read information posted in the course conference is not an excuse for late work. 4002-360 Page 4 of 7 Intro to Database & Data Modeling
Electronic Mail: Communicate with your instructor using the e-mail address(es) given on the front page of this document. Please begin your subject-line with, 360, followed by your chosen subject title. Faculty members receive large amounts of email daily. Following this subject-line guideline will keep your message from getting lost in the shuffle. All student email should be sent from an RIT account. Student Responsibilities Please review the general student responsibilities on the RIT Center for Student Conduct and Conflict Management Services site as outlined at http://www.rit.edu/studentaffairs/studentconduct/rr.php3. Out of courtesy to the course instructor and other students, all ringers for cell phones/pagers should be turned off while in class. If you have a Notice of Accommodation, you must provide a copy of it to your instructor with within one (1) week of start of this course. Database Lab Facilities Out of courtesy to RIT instructors and students, database laboratory computers may be used prior to the beginning of class and for in-class exercises only. Students needing to use database lab equipment at other times may request permission from instructors. If machines are available and use will not disrupt class activities, the instructor may be willing to grant permission on an ad hoc basis. Academic Honesty Policy Academic dishonesty is misrepresenting anyone else s work as your own. This includes the past or current work of any other person student, friend, colleague, relative, faculty member or absolute stranger, either with or without his/her knowledge. Academic dishonesty can be plagiarism, collusion, or outright cheating. A detailed reference to clarify what is and is not plagiarism can be found at the RIT Library: http://library.rit.edu/researchguides/citing.html. Plagiarism and other academic actions contrary to RIT s code of conduct will be addressed in accordance with RIT s Academic Honesty Policy (http://www.rit.edu/studentaffairs/studentconduct/rr_academicdishonesty.php). Except for assignments that are specifically designated as being group efforts, all work submitted (practice exercises, homework, exams, etc.) under your name is assumed to be your own individual effort and will be graded as such under RIT s Academic Honesty Policy. Submission of coursework under your name to your instructor indicates that you understand and agree to abide by the honesty policy. 4002-360 Page 5 of 7 Intro to Database & Data Modeling
Course Outline 1 Conceptual Foundation of the DBMS 1.1 Terminology 1.2 DBMS components and basic architecture 2 Conceptual Foundation of the Relational Model 2.1 Terminology 2.2 Keys and Referential Integrity 2.3 Functional Dependencies and normalization 3 Data Modeling Techniques 3.1 The motivation for Data Modeling 3.2 Basic E-R elements and components 3.3 Basic relationships 3.4 Reading and Interpreting an E-R diagram 4 Relational Mapping and Normalization 4.1 Rules for representing E-R relationships with the relational model 4.2 Constructing a relational model from an E-R diagram 5 Relational Algebra review and SQL 5.1 General syntax rules 5.2 SQL DDL statements 5.3 Introduction to a DBMS product 5.4 Using SQL DDL statements to create a DB 5.5 SQL DML statements 5.6 Using SQL DML statements to query a DB Grading The grading scale and the grading criteria used in this course are as follows: Component Weight Practice Exercises/Attendance 15% Homework Projects 25% Midterm Part I and II 30% Final Part I: Practicum 15% Final Part II 15% Grade Range Grade >= 90.0% A >= 80.0% & < 90% B >= 70.0 % & < 80.0% C >= 60.0 % & < 70.0% D < 60.0% F 4002-360 Page 6 of 7 Intro to Database & Data Modeling
Course Schedule The estimated course schedule is shown below. All dates, lecture topics, and assignments are subject to reasonable change at the discretion of your instructor. Changes will be announced. Reading assignments are shown for the Kroenke (K) text. The Fehily (F) text is your SQL guide and contains many examples along with more abbreviated discussions of key topics. Your instructor recommends that you read topics in both texts as they are covered in lectures. Week Day Topic Assignments 1 1 Introduction K: Chap. 1 HW 1 2 Development 2 3 Simple Tables K: Chap. 2 HW 2 4 Relations and Keys 5 Constraints K: Chap. 3 3 HW 3 6 Normalization K: Chap. 5 F: Chap. 2, pgs 45-50 7 Relationships K: Chap. 4 4 F: Chap. 2, pgs 33-44, Chap. 11 HW 4 8 Many-to-Many, WHERE clause K: Chap. 4 5 9 Review K: Chap. 3 10 Midterm 6 11 Relational Algebra, Subqueries F: Chaps. 3, 4, 8, 9, 11, 10 Handout HW 5 12 Two-Table Joins F: Chap. 7 K: Chap. 3 13 Multi-Table Joins K: Chap. 3 7 HW 6 14 Advanced Attributes K: Chap. 4 JDBC Database Interations 15 Subtypes and Supertypes K: Chap. 4 8 HW 7 16 Functions F: Chap. 5 9 17 Advanced SQL Queries F: Chap. 6 18 Advanced Database Design K: Chap. 6 10 19 Review 20 Final Part I: Practicum (W) May 8, 2013 11 Finals Week Final Part II: 360-01: Thursday 5/16/2013 8:00AM - 10:00AM 4002-360 Page 7 of 7 Intro to Database & Data Modeling