CMP 420 - ZF81 : Database Systems
Spring 2025 Syllabus

Course Information
Course Section Lecture Hours Location
CMP 420 - 01 & CMP 758 - ZF81 (49760) Mo & We 6:00 PM - 7:40 PM Gillet Hall, Room 333
Contact Information
Instructor: Steven Fulakeza Email: steven.fulakeza(at)lehman.cuny.edu
Phone: NA Office Location: GI 232
Office Hours: Tu & Th 3:50 pm to 5:50 pm
Instructor Availability: I respond to students' emails regularly, but please note that I do not typically check email or Slack messages during late hours on weekdays. Additionally, I do not monitor these platforms on weekends, as I reserve and dedicate this time to family, rest, and religious observances. Any messages received during these times will be addressed when I am back online.


CMP 420 Course Description: 4 hours, 4 credits

Introduction to theory of database systems and database management: theory of relational, hierarchical, and network database organization, with emphasis on the first; views of data, data organization, data dependency and redundancy, normal forms, and query language.

CMP 758 Course Description: 4 hours, 4 credits

Introduction to use and design of database systems. Topics include levels of extraction and views of data; data models, entity relationship, hierarchical, network, and relational data organization; data dependencies, normal forms; design algorithms; distributed databases; query languages.

Prerequisite:

  • CMP 338 (Data Structures and Algorithms).

Course Objectives:

  1. Understand fundamental concepts of modern database systems.
  2. Describe database systems concepts and architecture.
  3. Perform conceptual data modeling by ER/EER.
  4. Understand the relational model.
  5. Work with Structured Query Language (SQL).
  6. Explain functional dependencies and normalization as a database design process.
  7. Understand File/index structures.
  8. Explain physical database design decisions, transaction processing concepts and theory, concurrency control techniques.
  9. Discuss database recovery techniques.

Textbook:

  • R. Elmasri and S. Navathe, Fundamentals of Database Systems, Pearson, Edition 7, 2016. ISBN:0-13-397077-9 (New book is at $175.00 )

References:

  • Lecture Notes, Blackboard, and Course Website
  • J. Murach, MySQL, Edition 2, Mike Murach & Associates, 2015
  • P. Dubois, MySQL, Edition 5, Addison-Wesley, 2013
  • R.F. van Der Lans, SQL for MySQL Developers, Addison Wesley, 2007
  • MySQL 8.0 manual

Grades Policy:

Your grades will be computed based on the following:

CMP 420:

Activity Percentages
Projects, Assignments and Backboard Quizzes 35%
Midterm Exam 30%
Final Exam 35%

CMP 758:

Activity Percentages
Projects, Homework Assignments, and Backboard Quizzes 30%
Midterm Exam 30%
Final Exam 30%
Research Paper and Presentation (for graduate students only) 10%

Grading Scale CMP 420:

Letter Grade Ranges%
A 93 - 100
A- 90 - <93
B+ 87 - <90
B 83 - <87
B- 80 - <83
C+ 77 - <80
C 73 - <77
C- 70 - <73
D+ 67 - <70
D 63 - <67
D- 60 - <63
F <60

Grading Scale CMP 758:

Letter Grade Ranges%
A 93 - 100
A- 90 - <93
B+ 87 - <90
B 83 - <87
B- 80 - <83
C+ 77 - <80
C 73 - <77
C- 70 - <73
F <73

Makeup exams might be given only when a student's absence is unavoidable. In such a case, the student must file a formal written request.

The last date to withdraw from a course with a W is April 1st

Projects & Assignments

Several projects and assignments will be given during lectures and some will be posted on Blackboard and the course website. Students must work on their own projects and assignments unless stated otherwise. Students handing in similar work due to cheating will both receive a 0 and face possible disciplinary actions. No late assignments or projects will be accepted. Projects must be submitted on Blackboard. No emailed work will be accepted.

Exam Schedule:

  • Midterm Exam date: 03/24/2025 (during class time).
  • Final Exam date: May 21, 2025 from 6:15 pm to 8:15 pm

Academic Integrity and Plagiarism Policy

Students are encouraged to study together. However, you must do your own work for all your homework assignments, projects and exams. You should never copy code or anywork from the internet or another student. You are responsible for knowing and following Lehman's academic integrity code (available from the Undergraduate Bulletin, Graduate Bulletin, or the Office of Academic Standards and Evaluations). All incidents of cheating will be reported to the Vice President of Student Affairs.

Statement may be found in the student handbook. For more information, refer to https://www.lehman.edu/student-affairs/documents/Student-Handbook-Lehman-College-8-31-2020.pdf

Note: All incidents of cheating will be reported to the Vice President of Student Affairs.

You must complete all your homework assignments, projects, labs, and exams individually. This presents the best way to learn and absorb the material. Feel free to consult the textbook, the instructor, and the CS Tutoring Lab to help you solve problems.

You are allowed to discuss problems with classmates, but only in general terms, and you must specifically avoid discussing any solutions. If we find you plagiarizing and cheating, we will not accept "I didn't know" as an excuse.

You must also resist the urge to copy code from the web. Therefore, students in this course may not use any websites that enable cheating, such as by uploading or downloading material for this purpose. Use of these websites including uploading proprietary materials constitutes a violation of the academic integrity policy. Below are some sources which you are not allowed to use or even consult while taking this class:

  • https://www.chegg.com/
  • https://www.coursehero.com/
  • https://www.bartleby.com/
  • https://www.answersaccess.com/
  • https://stackoverflow.com/
  • Code generation tools (AI-based or otherwise), such as Github CoPilot, ChatGPT, Google Bard
  • Submissions or work in progress from other students, past or present, in full or in part
  • Solutions or solution fragments you may find online or elsewhere.
  • Course materials from previous semesters, regardless of how you obtained them.
  • Outside tutors or "work-for-hire" services.
  • This list is not exhaustive; ask the instructor before using any source not explicitly listed above.

A note for students retaking the class: resubmitting or reusing your work from earlier attempts at the class is also considered plagiarism. You must do all the work from scratch, otherwise you will not learn as much as you should.

Posting, sharing or making available your own solutions (in full or in part) or any course materials such as homeworks, tests, quizzes, projects, exams, solutions is also a violation of our academic integrity policy. This extends even after the semester ends.

Attendance:

Students are expected to attend lectures regularly and promptly. In the event of illness, or injury, students should notify me. Students who miss a class are responsible for learning materials presented in class and reading relevant textbook portions. If you need help, please do not hesitate to contact me.

Students receiving financial aid must be certified as attending classes regularly for continuing eligibility.

Accommodating Disabilities:

Lehman College is committed to providing access to all programs and curricula to all students. Students with disabilities who may need classroom accommodations are encouraged to register with the Office of Student Disability Services. For more info, please contact the Office of Student Disability Services, Shuster Hall, Room 238, phone number, 718-960-8441.

Technology, Blackboard and Email:

We will be using Blackboard and Github sites for much of the class activities. Blackboard can be accessed through the Lehman website at www.lehman.cuny.edu. You will also need to have access to your Blackboard account. You can contact the IT Center if you have any problems accessing your account.

I will be communication with you regularly throughout the semester using your email address that is available on Blackboard. Make sure you have access to your email. If you have, any questions about your Lehman email address or your password, or if you have any problems accessing the site please call the computer helpdesk at 718-960-1111.



Tentative Schedule:

Week Day Date Topic Reading Materials
1101/27/2025Introduction, Syllabus, Chapter 1Syllabus & Chapter 1
1201/29/2025Chapter 1Chapter 1
2302/03/2025Chapter 2 - Database System Concepts and ArchitectureChapter 2.1 - 2.3
2402/05/2025Chapter 2 - Database System Concepts and Architecture (Continued)Chapter 2.4 - 2.6
3502/10/2025Chapter 3 - Data Modeling Using the Entity – Relationship (ER) ModelChapter 3.1 - 3.3
3X02/12/2025Lincoln’s Birthday College closed – NO CLASSES
4X02/17/2025President’s Day College closed – NO CLASSES
4602/18/2025Chapter 3 - Data Modeling Using the Entity – Relationship (ER) ModelChapter 3.3 - 3.7
5702/19/2025Chapter 3 - Data Modeling Using the Entity – Relationship (ER) ModelChapter 3.7 - 3.10
5802/24/2025Chapter 4 - The Enhanced Entity–Relationship (EER) ModelChapter 4.1 - 4.3
6902/26/2025Chapter 4 - The Enhanced Entity–Relationship (EER) ModelChapter 4.4 - 4.7
61003/03/2025Chapter 5 - The Relational Data Model and Relational Database Constraints Chapter 5.1 - 5.4
71103/05/2025Chapter 9 - Relational Database Design by ER- and EER-to-Relational MappingChapter 9.1 - 9.2
71203/06/2025Chapter 9 - Relational Database Design by ER- and EER-to-Relational MappingChapter 9.1 - 9.2
81303/10/2025Chapter 6 - Basic SQLChapter 6.1 - 6.3
81403/12/2025Chapter 6 - Basic SQLChapter 6.3 - 6.5
91503/17/2025Chapter 7 - More SQLChapter 7.1 - 7.2
91603/19/2025Exam Review
101703/24/2025Midterm examRead & Review Chapters 1 through 9 (except chapter 8 and 7)
101803/26/2025Chapter 7 - More SQLChapter 7.3 - 7.4
11X03/31/2025No Classes Scheduled
111904/02/2025Chapter 7 - More SQLChapter 7.3 - 7.4
122004/07/2025Chapter 14 - Basics of Functional Dependencies and Normalization for Relational DatabasesChapter 14.1 - 14.3
122104/09/2025Chapter 14 - Basics of Functional Dependencies and Normalization for Relational DatabasesChapter 14.3 - 14.5
13X04/14/2025Spring recess
13X04/16/2025Spring recess
142204/21/2025Chapter 15 - Relational Database Design Algorithms and Further DependenciesChapter 15
142304/23/2025Chapter 16 - Disk Storage, Basic File Structures, Hashing, and Modern Storage ArchitecturesChapter 16
152404/28/2025Chapter 16 - Disk Storage, Basic File Structures, Hashing, and Modern Storage ArchitecturesChapter 16
152504/30/2025Chapter 17 - Indexing Structures for Files and Physical Database DesignChapter 17
162605/05/2025Chapter 17 - Indexing Structures for Files and Physical Database DesignChapter 17
162705/07/2025Chapter 20 - Introduction to Transaction Processing Concepts and TheoryChapter 20
172805/12/2025Chapter 21 - Concurrency Control TechniquesChapter 21
172905/14/2025Graduate Students Presentations
Exam Review
183005/19/2025
183105/21/2025Final Exams

Research Survey Paper Assignment (for graduate students only):

  • Read papers in a specific research topic of database and write a survey-type research paper (around 12 pages). Each paper must have a detailed bibliography and each paper must consult at least 5 references.
  • The ACM Computing Survey defines a survey paper as paper that summarizes and organizes recent research results in a novel way that integrates and add understanding to work in the field. A survey article assumes a general knowledge of the area; it emphasizes the classification of the existing literature, developing a perspective on the area, and evaluating trends."
  • You can visit ACM Computing Survey to see examples on survey papers
  • Paper Proposal Due (April 9, 2025) via email: 1-2 pages including extended abstract with at least 5 references.
  • The Research Paper due date: May 15, 2025 by 11:59 pm via email.
  • Research Paper presentation date: May 14, 2025 at the beginning of class.

List of Sources for Research Topics and Papers:

  • Database Performance Measurement and Tuning
  • Database mining, data warehousing and OLAP (On-line analytical processing), DSS (decision-support systems): refer to the chapters 28, 29
  • Knowledge Management (Knowledge representation, recursive query processing, rule processing and optimization), expert databases
  • Concurrency Control and/or recovery algorithms
  • Database Security - security models, security implementation: refer to the chapter 23
  • Search Engine design issues and strategies on the web (DBMS + Information retrieval technologies)
  • Specific topics under Distributed Databases (query processing, concurrency control, recovery, distribution design)
  • In memory (main memory) DBMS
  • Physical database issues: including physical DB system issues using solid state drives
  • Large scale document-oriented databases (such as MongoDB, Mysql8 document store)
  • Big Data Mining and Tools such as Hadoop

List of Sources for Research Topics and Papers:

Research Survey Paper Structure:

  1. Title, name, date, course number
  2. Abstract: This is a brief summary that describes your entire paper. Your abstract should contain 150 - 300 words. You have to write this last.
  3. Introduction: Your introduction should provide the background problem you are researching.
  4. Body of the paper and discussion
  5. Conclusion that summarizes the paper and describes future work for the research
  6. Acknowledgement (If necessary)
  7. References: ACM = Association of Computing Machinery

Classroom Policies

  • Take responsibility for your education and grades – Students have a common myth that because they pay tuition they deserve to receive a passing credit. Students earn grades in accordance with course grading policies.
  • Active participation is encouraged in discussions, group activities, and other class interactions. Students should come prepared to engage with the material and contribute to the learning environment.
  • Attend every class and get to class on time.
  • Submit all your work on time. Students should be responsible for submitting their own work and meeting all assignment requirements.
  • When having any academic difficulties, always seek assistance from your instructor.
  • Students should regularly check Blackboard for updates, announcements, and materials. Any concerns or questions should be communicated in a timely manner through email or office hours.
  • Students should ensure they have access to necessary technology such as MYSQL to complete assignments. Technical issues should be reported in a timely manner.