CS480 - Database Systems - 2024 spring

Course webpage for CS480 - 2024 spring taught by Boris Glavic

Syllabus

Instructor

Boris Glavic

Course Modality & Schedule

This course is taught ON CAMPUS and ONLINE. There will be a synchronous online session over zoom for students registered for the online section of the course as well as videos will be uploaded to youtube. Links for zoom and youtube will be provided through blackboard. (This is subject to change until the first lecture).

Catalog Course Description and Prerequisite/Corequisite Statement

This course introduces the core principles underpinning the discipline of database design and utilization. It offers a comprehensive exploration of data models, data description languages, and query mechanisms, including relational algebra and SQL. Additionally, the curriculum delves into the essential domains of data normalization, transactions, as well physical data organization and indexing, etc. These subjects will be used in the design and implementation of a database application using a target database management system as part of a semester-long group project.

3 undergraduate hours. 4 graduate hours.

Prerequisite(s): Grade of C or better in CS 251.

This is a Technical Elective course in the program.

Required and Recommended Course Material

Textbook

The Database System Concepts text book is required reading material. The other text books cover some aspects not covered in "Database System Concepts". All four textbooks have their merits and disadvantages.

  • Elmasri and Navathe, Fundamentals of Database Systems, 6th Edition, Addison-Wesley, 2003, ISBN-13: 978-9332582705
  • Silberschatz, Korth, and Sudarshan, Database System Concepts, , McGraw Hill, 2010, ISBN-13: 978-1260084504
  • Ramakrishnan and Gehrke, Database Management Systems, 3nd Edition, McGraw-Hill, 2002, ISBN-13: 978-0072465631
  • Garcia-Molina, Ullman, and Widom, Database Systems: The Complete Book, 2nd Edition, Prentice Hall, 2008, ISBN-13: 978-0131873254

All slides for the course will be made available here.

Software

  • We may use gradescope for some of the homework assignments
  • We will use PostgreSQL for the Project

Respect for Copyright

Please protect the copyright integrity of all course materials and content. Please do not upload course materials not created by you onto third-party websites or share content with anyone not enrolled in our course.

Detailed Course Topics

  • The relational data model
  • Database modelling and design

    • The Entity-Relationship (ER) model
    • Database design and normalization
  • SQL

    • Data-definition language (DDL)
    • Data-manipulation language (DML)
  • Formal relational languages

    • Relational algebra
  • Database Architecture
  • Database System Concepts

    • Transactions processing and concurrency control
    • Recovery
    • Indexing
    • Query processing and optimization
    • Security and access control

Course Objectives

After attending the course students should be able to:

  • Understand the underlying ideas of database systems
  • Understand the relational data model
  • Be able to write and understand SQL queries and data definition statements
  • Understand relational algebra and its connection to SQL
  • Understand how to write programs that access a database server
  • Understand the ER model used in database design
  • Understand normalization of database schemata
  • Be able to create a database design from a requirement analysis for a specific domain
  • Know basic index structures and understand their importance
  • Have a basic understanding of relational database concepts such as concurrency control, recovery, query optimization, and access control

Grading Policies

Weighting of Deliverable

  • homework assignments: 15% = 5% + 5% + 5%
  • midterm exam: 30%
  • final exam: 35%
  • project: 20%

Grading Scheme

Your final course grade is determined based on your total score which is calculated as the weighted sum of the points for each of the deliverables. The weights are as shown above. For each deliverable you will receive between 0 and 100 points. For some deliverables, I am giving additional bonus points. These are not considered for the grade cutoffs. For instance, the first homework assignment is weighted 5%. For sake of the example assume that you get 110 points in this assignment (full points + bonus points), then this assignment would contribute \(0.5 * 110 = 5.5\) points to your final score. Note that bonus points are excluded when calculating the 100% threshold. For example, if a home work assignment makes up 5% of the total grade and has 50 regular points and 10 bonus points then it will contribute your points divided by 50 times 0.05 to the final grade. The instructor reserves the right to scale exams by lowering thresholds, but thresholds will never be increased.

  • A: > 80
  • B: > 60
  • C: > 50
  • D: > 40
  • E: < 40

Policy for Missed or Late Work

  • Late assignments: Late assignments will not, in general, be accepted. They will never be accepted if the student has not made special arrangements with me at least one day before the assignment is due. If a late assignment is accepted it is subject to a reduction in score as a late penalty.
  • Incompletes: The UIC Undergraduate catalog states that in addition to needing excellent justification for an incomplete, a student must also have been "making satisfactory progress" in the course.
  • Statute of limitations: No grading questions or complaints, no matter how justified, will be listened to one week after the item in question has been returned.
  • Cheating: Cheating will not be tolerated. All work you submitted must be entirely your own. Any suspicious similarities between students' work (this includes homework and exams) will be recorded and brought to the attention of the Dean. The MINIMUM penalty for any student found cheating will be to receive a 0 for the item in question, and dropping your final course grade one letter. The MAXIMUM penalty will be expulsion from the University.
  • Classroom Conduct: Classroom discussions and questions are a valuable part of the learning process and are encouraged. However, students who repeatedly talk among themselves disrupting the class lecture will be asked to leave.

Attendance / Participation Policy

Please email me if you face an unexpected situation that may impede your attendance, participation in required class and exam sessions, or timely completion of assignments.

Other Course Policies

Academic Integrity

UIC is an academic community committed to providing an environment in which research, learning, and scholarship can flourish and in which all endeavors are guided by academic and professional integrity. In this community, all members including faculty, administrators, staff, and students alike share the responsibility to uphold the highest standards of academic honesty and quality of academic work so that such a collegial and productive environment exists. As a student and member of the UIC community, you are expected to adhere to the Community Standards of integrity, accountability, and respect in all of your academic endeavors. When accusations of academic dishonesty occur, the Office of the Dean of Students investigates and adjudicates suspected violations of this student code. Unacceptable behavior includes cheating, unauthorized collaboration, fabrication or falsification, plagiarism, multiple submissions without instructor permission, using unauthorized study aids, coercion regarding grading or evaluation of coursework, and facilitating academic misconduct. Please review the UIC Student Disciplinary Policy for additional information about the process by which instances of academic misconduct are handled towards the goal of developing responsible student behavior.

By submitting your assignments for grading you acknowledge these terms, you declare that your work is solely your own, and you promise that, unless authorized by the instructor or proctor, you have not communicated with anyone in any way during an exam or other online assessment, and that submitted work is your own unless the assignment explicitly is intended to be done in a group. You are NOT ALLOWED to use Generative AI and Large Language Models (such as ChatGPT).

We use an automatic cheating-verification program that is capable of detecting partial logical similarities of answers. Don't even take the risk! Do NOT use or post to Chegg or any similar Website.

Plagiarism is a serious matter and will be treated as such. You may be penalized by failing the course. Any student caught will have a grade of zero on the assignment, will have a drop in their letter grade at the end of the semester, and will be reported to the Dean of Students. This applies to each offense. Details on this are given on the Academic Integrity page (https://dos.uic.edu/community-standards/academic-integrity/) and you can view the Student Disciplinary Policy at this link: https://dos.uic.edu/wp-content/uploads/sites/262/2018/10/DOS-Student-Disciplinary-Policy-2018-2019-FINAL.pdf).

We believe that each and every one of you is able to learn the material and complete assignments on your own! If you do find yourself struggling, please reach out to any of us on the instructional staff and ask for help rather than simply turning in work that you did not complete yourself. It is far better to earn a low score on the assignment than to have an Academic Integrity violation on your record, especially towards the beginning of your academic Career.

Email Expectations

Students are responsible for all information instructors send to your UIC email and Blackboard accounts. Faculty messages should be regularly monitored and read in a timely fashion. All critical announcements, changes to assignments, etc. will be announced with Blackboard announcement. We are assuming that you check your email regularly, at the very least once every 24 hours.

Accommodations

Disability Accommodation Procedures

UIC is committed to full inclusion and participation of people with disabilities in all aspects of university life. If you face or anticipate disability-related barriers while at UIC, please connect with the Disability Resource Center (DRC) at mailto:drc.uic.edu, via email at mailto:drc@uic.edu, or call tel:312-413-2183 to create a plan for reasonable accommodations. To receive accommodations, you will need to disclose the disability to the DRC, complete an interactive registration process with the DRC, and provide me with a Letter of Accommodation (LOA). Upon receipt of an LOA, I will gladly work with you and the DRC to implement approved accommodations.

Religious Accommodations

Following campus policy, if you wish to observe religious holidays, you must notify me by the tenth day of the semester. If the religious holiday is observed on or before the tenth day of the semester, you must notify me at least five days before you will be absent. Please submit this form by email with the subject heading: "YOUR NAME: Requesting Religious Accommodation."

Classroom Environment

Inclusive Community

UIC values diversity and inclusion. Regardless of age, disability, ethnicity, race, gender, gender identity, sexual orientation, socioeconomic status, geographic background, religion, political ideology, language, or culture, we expect all members of this class to contribute to a respectful, welcoming, and inclusive environment for every other member of our class. If aspects of this course result in barriers to your inclusion, engagement, accurate assessment, or achievement, please notify me as soon as possible.

Name and Pronoun Use

If your name does not match the name on my class roster, please let me know as soon as possible. My pronouns are he/him. I welcome your pronouns if you would like to share them with me. For more information about pronouns, see this page: https://www.mypronouns.org/what-and-why.

Community Agreement/Classroom Conduct Policy

  • Be present by turning off cell phones and removing yourself from other distractions.
  • Be respectful of the learning space and community. For example, no side conversations or unnecessary disruptions.
  • Use preferred names and gender pronouns.
  • Assume goodwill in all interactions, even in disagreement.
  • Facilitate dialogue and value the free and safe exchange of ideas.
  • Try not to make assumptions, have an open mind, seek to understand, and not judge.
  • Approach discussion, challenges, and different perspectives as an opportunity to "think out loud," learn something new, and understand the concepts or experiences that guide other

people's thinking.

  • Debate the concepts, not the person.
  • Be gracious and open to change when your ideas, arguments, or positions do not work or are proven wrong.
  • Be willing to work together and share helpful study strategies.
  • Be mindful of one another's privacy, and do not invite outsiders into our classroom.

Content Notices and Trigger Warnings

Our classroom provides an open space for a critical and civil exchange of ideas, inclusive of a variety of perspectives and positions. Some readings and other content may expose you to ideas, subjects, or views that may challenge you, cause you discomfort, or recall past negative experiences or traumas. I intend to discuss all subjects with dignity and humanity, as well as with rigor and respect for scholarly inquiry. If you would like me to be aware of a specific topic of concern, please email or visit my Student Drop-In Hours.

Resources for Academic Success, Wellness, and Safety

We all need the help and the support of our UIC community. Please visit my office hours for course consultation and other academic or research topics. For additional assistance, please contact your assigned college advisor and visit the support services available to all UIC students.

Academic Success

Wellness

  • Counseling Services: You may seek free and confidential services from the Counseling Center at https://counseling.uic.edu/.
  • Access U&I Care Program for assistance with personal hardships.
  • Campus Advocacy Network: Under Title IX, you have the right to an education free from any form of gender-based violence or discrimination. To make a report, email mailto:TitleIX@uic.edu. For more information or confidential victim services and advocacy, visit UIC's Campus Advocacy Network at http://can.uic.edu/.

Safety

the Police or Fire for any on-campus emergency. You may also set up the complete number, tel:312-355-5555, on speed dial on your cell phone.

Syllabus Revisions

The standards and requirements set forth in this syllabus may be modified at any time by the course instructor. Notice of such changes will be by Canvas announcement or email notice.

Disclaimer

This syllabus is intended to give the student guidance in what may be covered during the semester and will be followed as closely as possible. All differences between information in this syllabus and the official UIC academic calendar should be resolved in favor of the calendar. However, as instructors, we reserve the right to modify, supplement, and make changes as course needs arise. We will communicate such changes in advance as Blackboard announcements.