Home
Research profile
Teaching profile
Professional profile
Personal profile
Contact information

Course title

EECS 447 (3 credit hours): Introduction to Database Systems -- Spring 2025
Meets in person, Tuesdays and Thursdays, 1:00 pm - 2:15 pm, Eaton 2
Teaching website: people.eecs.ku.edu/~saiedian/Teaching

Instructor

Professor Hossein Saiedian
Office: Eaton Hall 3012
Telephone: 785-864-8812
E-Mail: saiedian AT ku.edu
WWW: people.eecs.ku.edu/~saiedian
Office Hours: Tuesdays and Thursdays, 2:15-3:15 PM (and by appointment)

Teaching assistants

Ajay Jarugula, ajayjarugula@ku.edu, Eaton 2005B, Office hours: Mondays, 1:30-3:30 PM
Absar Rahman, moh.absar.rahman@ku.edu, Eaton 3011, Office hours: Wednesdays, 2:00-4:00 PM

Course description

EECS 447 Introduction to the concept of databases and their operations. Basic concepts, database architectures, storage structures and indexing, data structures: hierarchical, network, and relational database organizations. Database design and normalization: ER model, candidates keys, functional dependencies, normal forms, decomposition. Emphasis on relational databases, relational algebra, and SQL. Introduction to views, transactions, and database access control. Introduction to database security, big data, NoSQL, CAP theorem, key-value stores. Prerequisite: Upper-level EECS eligibility or departmental consent.

Course outcomes

Database concepts mastery. Understand and apply key database concepts, including conceptual modeling, data models, relational schemas, and normalization techniques, to create scalable database systems.

SQL query proficiency. Develop proficiency in writing and optimizing SQL queries for data manipulation, retrieval, and reporting, ensuring high performance and data accuracy.

Database security and transactions. Understand best practices for database security, backup, recovery, and transaction management to protect data integrity, maintain system reliability, and ensure consistent, secure handling of data operations.

Databases in big data and cloud. Understand the role of databases in big data ecosystems and cloud platforms, and apply database management techniques to support data science applications and large-scale data processing.

Project management and teamwork. Learn essential project management skills like planning, scheduling, and communication. Work effectively in team and contribute to successful database projects.

Recommended textbooks

The following are a couple of the most popular database systems textbooks:

A. Elmasri, H. Navathe,
Fundamentals of Database Systems, 7th edition, Pearson, 2016

The textbook's table of contents.

A. Silberschatz, H. Korth, S. Sudarshan
Database System Concepts, 7th edition
McGraw-Hill, 2020

The textbook's table of contents.

Students are responsible for lecture slides, topics discussed in the classroom, reading assignments, as well as items distributed during the classroom sessions. Important reading materials as well as lecture slides will be placed on Canvas:

Lecture notes (Canvas)
Readings (Canvas)
Project resources (Canvas)

Evaluation (subject to revision)

Evaluation criteria. Students will be evaluated as follows:

Assignments: 10%
Term project: 40%
Exams: 50%

Term project. The term project in this course is team-based, with teams consisting of 5--6 members. During class discussions, we’ll cover project requirements, and detailed descriptions of project components will be available on Canvas. Teams will need to choose a computing platform, and all projects must be implemented in a SQL-based relational database. Finally, project artifacts should be placed on GitHub for easy collaboration, version control, and grading.

Exams and quizzes Exams and quizzes will be conducted in-person, in the classroom, and will be closed book and notes, administered through Canvas. Always bring a device that can connect to Canvas for taking exams or quizzes. During an exam or quiz, no other devices should be used, and no other files or apps should be open except for Canvas. If using a browser to connect to Canvas, only one tab should be open.

  • On exams, quizzes, and lab assignments: For questions with multiple parts, such as “name three parts of…”, avoid combining your answers into a single paragraph. Address each part separately to ensure clarity and prevent confusion. Use clear identifiers like “(1)”, “(2)”, and “(3)” to organize your response. Note that only the first three parts will be assessed if your answer exceeds three parts.
  • On exams, quizzes, and lab assignments: Demonstrate your class engagement! Responses derived from generative AI, Wikipedia, or similar online sources will not earn points. We value answers based on class discussions, presentations, and your lecture notes. This shows your attentiveness, study effort, and ability to connect class concepts to your answers. Students who attend class, take notes, study their notes, and provide responses linked to classroom discussions and content will be rewarded.
  • On exams, quizzes, and lab assignments: Technical explanations and specific details are crucial! Vague and incomplete answers make it difficult to assess your understanding. To earn full credit, provide accurate, comprehensive, and technically sound responses. Avoid vague answers; an almost correct answer that lacks precision or deviates from the topic will not receive full credit.

Grading scale

A = 90%..100%
B = 80%..89%
C = 70%..79%
D = 60%..69%

All written work must be typeset and submitted on Canvas. Please note that typesetting means handwritten work will not be accepted.

The iClicker community

iClicker is an interactive classroom response system that allows students to engage actively by answering questions and participating in polls. The University of Kansas has secured an iClicker subscription for classroom use, and the EECS department is incorporating this system into its courses to boost student engagement. Participation in the iClicker community is mandatory for this course.

Tentative weekly schedule (re-visit for updates)

Course syllabus and course review
    -- Striving for successful teams

Introduction to database management system
    -- Why a database system?
    -- The three-schema architecture and data independence
    -- Database languages

Requirements engineering
    -- Why modeling, domain modeling

Conceptual modeling
    -- Data entities, relationships

Get acquainted with your team members and discuss team member roles

Conceptual modeling (continued)
Introduction to the relational model

February 11: Mini-Exam 1 (primarily on introductory topics and conceptual modeling)

Introduction to the relational model
    -- The relational data model

Due: A vision statement and project plan

Manipulating a relational database
    -- The relational data model integrity constraints
    -- Relational algebra expressions

Manipulating a relational database
    -- Relational algebra expressions

From ER diagrams to databases: Building the logical model
    -- Converting an ER diagram to a logical model

Introduction to SQL
    -- From relational algebra to SQL
    -- SQL structure
    -- SQL constructs

Due: Project requirements

March 4: Mini-Exam 2 (primarily on the relational model)

Advanced SQL
    -- Database views (virtual tables)
    -- Complex queries
    -- Specifying constraints and triggers

Relational database design
    -- Properties of good relations
    -- Functional dependency theory
    -- Decomposition algorithms

Due: Project conceptual model

Spring break

Relational database design (continued)
    -- Additional design algorithms
    -- Database design process

Due: The logical relational model (relations, attributes, primary and foreign keys, FDs)

April 1: Mini-Exam 3 (primarily on SQL)

Relational database design (continued)
    -- Discovering functional dependencies, keys
    -- Achieving formal forms

Complex data types
    -- Structured data types
    -- Unstructured data types

Data growth and big data
    -- Data centers
    -- Cloud computing
    -- Data analytics

April 15: Mini-Exam 4 (primarily on relational database design)

Database transactions and ACID properties
    -- Transaction concept
    -- Transaction atomicity, durability, and isloation
    -- Serializability

Concurrency control and lock protocols
Transaction failure and recovery
    -- Lock-based protocols
    -- Recovery algorithms

Database security
    --Database encryption and granularity levels
    -- Grant and revoke privileges
Database architectures

Due: Physical database design and data population (SQL DDL statements, a printout of all relations)

Database architectures
    -- Centralized and distributed databases
    -- Cloud databases

Due: Project demonstrations (run queries; generate reports)

From databases to data science: bridging the gap )
    -- Data science techniques

Course review

Final Comprehensive Exam Monday May 12 :1:30 PM - 4:00 PM

Common policies

Attendance. Regular attendance is essential for success in this course and its labs. Attendance may be taken throughout the semester. Three or more unexcused absences will result in a one-letter grade reduction in the final course grade, which will be reflected when grades are posted at the end of the semester.

Students who miss class without a valid excuse are responsible for obtaining missed materials and assignments. The instructor or the TAs will not provide individual makeup lectures or one-on-one instruction. It is the student's responsibility to stay informed about course content, assignments, and course updates.

Late-work, makeup policy. Late work will not be accepted. Make-up options for labs, quizzes, or exams are not available. Exceptions will be made for excusable absences.

Requests for excused absences must be submitted in advance and approved by the instructor, except in emergencies. In such cases, notify the instructor as soon as possible after the absence. Please attach verification documents to the request.

Make-up quizzes and exams for excused absences must be completed before the following session when the quiz/exam content will be discussed in classroom or its key becomes public. Make-up for an excused lab absence should be completed within one week.

Technical problems. If you experience technical problems with your EECS account or the EECS servers or the lab equipment, please submit a support request help at: https://tsc.ku.edu/request-support-engineering-tsc.

Inside classroom policy. Students are expected to come to the class on time, be attentive and engaged, conduct themselves professionally, and avoid anything that could cause a distraction or detrimental either for other students learning or for the instructor's presentations. Profanity and swearing is not allowed.

Students are expected to actively participate in all classroom presentations and discussions, ask questions, and regularly make contributions such as offering comments, responding with good answers, and providing feedback.

Canvas announcements. Announcements is a Canvas tool to post important information and updates to all members of a course. It is your responsibility to regularly check your Canvas account for such announcements (students may also receive an email notification when a new announcement is posted).

Email communications E-mail communication is fast, flexible, and effective. You have an @ku.edu email account and you are expected to regularly check it. Important information may also be communicated via email.

You are a student registered in a course offered by the School of Engineering at the University of Kansas, a top regional and a nationally ranked institution. Your communications, especially written communications (composition, grammar, spelling, punctuation, etc), should reflect that status. Please follow these email guidelines and etiquettes.

Send text-only emails in text-only format. All classroom assignments, labs, or projects should be typeset and submitted on Canvas. Other documents (e.g., documents for an excusable absence) shoud be emailed in PDF or a well-known image format (e.g., JPG or PNG). See the Guidelines for submitting electronic documents.

Grade and absence clarification or correction. If you believe your grades on an assignment, lab, quiz, or exam are incorrect, you should formally submit a grade appeal via email to the instructor within one week of receiving the graded work. Similarly, if you have an excusable absence, and you did not provide documentation prior to the absence, submit relevant documentation within one week of the absence. Failure to address concerns within these timeframes will result in the decision becoming final. This timeline ensures timely resolution and fairness for all parties involved.

Late exam-taking policy. If a student will have to take an exam or a quiz at a later time (due to an excused and verified absence), he or she will be asked to make the following statement: I understand that I have been granted the opportunity to take this exam or quiz on [date of rescheduled exam] due to an excused absence from the original exam on [date of original exam]. In making this arrangement, I affirm that I did not and will not, by any means (in writing, speaking, or through digital communications), obtain any information about the exam content or details from anyone who has taken it at the original time. I understand that violating this pledge may result in disciplinary action, including receiving a failing grade on the exam.

Cell phone policy. Cell phones should be turned off before coming to the classroom. Cell phone use for the purposes of texting, email or other social media should be avoided. Earphones for music are OK during lab work or individualized problem solving, as long as the volume allows you to hear announcements. Also cell phone or other cameras may be used to photograph projects and the whiteboard but avoid shots that include the presenter or other students.

Laptop/electronic device policy. The use of laptops, tablets or similar devices is common for taking notes but turn off audio and avoid any possible uses that could cause distraction for others (e.g., Web surfing or social media visits).

Incomplete grade policy. "Incomplete (I) grades are used to note, temporarily, that students have been unable to complete a portion of the required course work during that semester due to circumstances beyond their control. Incomplete work must be completed and assigned an A-F or S/U grade within the time period prescribed by the course instructor. After one calendar year from the original grade due date, an Incomplete (I) grade will automatically convert to a grade of F or U, or the lapsed grade assigned by the course instructor."

Also please review change of grade policy here and here.

Accommodations for students with disabilities. The University of Kansas is committed to providing equal opportunity for participation in all programs, services and activities. Requests for special accommodations may be made thru the KU Student Access Services.

The Provost's freedom of expression statement . "Our IRISE values will guide us and our students as we all engage with each other in respectful freedom of expression.

In a setting as diverse as KU, we will inevitably encounter ideas, opinions and philosophies that are different than our own and which some personally find uncomfortable or offensive. To be clear, threats, incitement of violence and targeted harassment are not protected speech under the First Amendment. Offensive speech, although it can be painful, is generally considered protected speech. We need to strongly encourage and facilitate civil and respectful discussion and interaction. We simply must not inhibit or penalize expression protected by the First Amendment."

KU's diversity policy statement. "As a premier international research university, the University of Kansas is committed to an open, diverse and inclusive learning and working environment that nurtures the growth and development of all. KU holds steadfast in the belief that an array of values, interests, experiences, and intellectual and cultural viewpoints enrich learning and our workplace. The promotion of and support for a diverse and inclusive community of mutual respect require the engagement of the entire university..."

Please also see: KU's statement on diversity and inclusion.

KU's nondiscrimination, equal opportunity. "The University of Kansas prohibits discrimination on the basis of race, color, ethnicity, religion, sex, national origin, age, ancestry, disability, status as a veteran, sexual orientation, marital status, parental status, gender identity, gender expression, and genetic information in the University's programs and activities."

Please also see: KU's statement on nondiscrimination and on racial and ethnic harassment policy.

KU's sexual harassment policy. "The University of Kansas prohibits sexual harassment and is committed to preventing, correcting, and disciplining incidents of unlawful harassment, including sexual harassment and sexual assault."

Please also see KU's statement on sexual harassment.

KU's mandatory reporter statement. "The University of Kansas has decided that all employees, with few exceptions, are responsible employees or mandatory reporters who must report incidents of discrimination, harassment, and sexual violence that they learn of in their employment at KU to the Office of Civil Rights and Title IX. This includes faculty members. As such, if you share information about discrimination, harassment, or sexual violence with me, I will have to relay that information to the Office of Civil Rights and Title IX. I truly value your trust in me to share that information and I want to be upfront about my requirement as a mandatory reporter. If you are interested in contacting KU’s confidential resources (those who do not have to make disclosures to OCRTIX), there are: the Care Coordinator, Melissa Foree; CAPS therapists; Watkins Health Care Providers; and the Ombuds Office."

Please see KU's statement on mandatory reporting.

KU's commercial note-taking ventures. "Pursuant to the University of Kansas’ Policy on Commercial Note-Taking Ventures, commercial note-taking is not permitted in this course. Lecture notes and course materials may be taken for personal use, for the purpose of mastering the course material, and may not be sold to any person or entity in any form. Any student engaged in or contributing to the commercial exchange of notes or course materials will be subject to discipline, including academic misconduct charges, in accordance with University policy. Please note: note-taking provided by a student volunteer for a student with a disability, as a reasonable accommodation under the ADA, is not the same as commercial note-taking and is not covered under this policy."

Please see KU's statement on commercial note-taking.

Concealed handguns. "Individuals who choose to carry concealed handguns are solely responsible to do so in a safe and secure manner in strict conformity with state and federal laws and KU weapons policy. Safety measures outlined in the KU weapons policy specify that a concealed handgun:

  • Must be under the constant control of the carrier.
  • Must be out of view, concealed either on the body of the carrier, or backpack, purse, or bag that remains under the carriers custody and control.
  • Must be in a holster that covers the trigger area and secures any external hammer in an un-cocked position.
  • Must have the safety on, and have no round in the chamber."

LLM and generative AI tools

Generative AI tools like ChatGPT can be powerful resources for learning. They can aid in brainstorming, research, and writing. However, it's crucial to use these tools ethically and responsibly.

Think of generative AI as a sophisticated lab tutor or writing center consultant. These tools can offer valuable support, but they cannot replace your own intellectual work. Submitting work generated primarily by AI is considered academic misconduct, similar to having someone else write your paper or code your program.

All assignments in this course require your original thought and effort. You are expected to demonstrate your learning by completing assignments independently. While you may use AI tools as a resource, the final product must be your own work.

To clarify expectations and foster transparency, you will be asked to reflect on your use of AI tools for each assignment. These reflections should detail how AI assisted you, the challenges you encountered, and how you overcame them. This process will help you develop critical thinking and problem-solving skills.

Remember: The goal of this course is to develop your abilities. Relying too heavily on AI can hinder your intellectual growth. By engaging with the challenges of the course and learning from your experiences, you will build a strong foundation for success.

Academic integrity

The University of Kansas, the School of Engineering, and in particular, the Department of Electrical Engineering & Computer Science (EECS) have zero tolerance for academic dishonesty and academic misconduct.

The institutional definitions and consequences of institutional academic integrity policies will used. Academic dishonesty includes any form of plagiarism (cheating) as well as "giving or receiving of unauthorized aid on examinations or in the preparation of assignments or reports, knowingly misrepresenting the source of any academic work, falsification of research results, and plagiarizing of another's work." An absolutely minimum consequence of an academic integrity violation will be a zero for the item in question (e.g., a lab, an assignment, an exam or quiz), but depending on the severity, the consequence may be a lower grade, or simply an F for the course, and the case may be forwarded to the SoE committee for additional penalties and disciplinary measures.

LMS features. During exams or quizzes, only one device should be used, with solely the Canvas app or a single browser tab for Canvas open. Having any other app or file open will be considered a violation of academic integrity. To further facilitate academic integrity, the following features of Canvas will be utilized:

  • Each exam and quiz will be conducted synchronously in classroom, will be scheduled on a regular weekly session.
  • Each exam or quiz will have a limited and narrow time (set via a timer) to be completed and each person will get only one chance to do it.
  • Each exam or quiz will have about the same amount of time as a paper exam or quiz, plus some additional LMS overhead time.
  • Exam and quiz questions will be randomly numbered for each person. Furthermore, the multiple choice, matching and similar questions will have randomized choice selections. As a result, a choice like "All of the above" or "None of the above" may not be the last choice and refers to the other choices.
  • Exam and quiz questions will be displayed one-at-a time, with no backtracking.
  • The "originality checking" mechanisms of LMS will be utilized for exams but also assignments. LMS is able to check written responses against online databases of previously published works and trace sentences or clauses to other sources.
  • LMS features to prohibit printing, copying/pasting of exams will be turned on.
  • LMS lockdown feature will be employed.
Additional important links:

KU's academic misconduct policy: https://policy.ku.edu/governance/USRR#art2sect6

Code of student rights and responsibility: Code of Student Rights and Responsibilities


The ACM's and IEEE's code of ethics. As IT and computing professionals and/or as engineers, you should be familiar with the ACM's (IT, computing) and IEEE (engineering) codes of ethics and apply them during your academic and professional careers. These are lifelong commitments to integrity and professional conduct.

We will review these during the first class session, but you are strongly encouraged to review these codes in detail:

From the ACM's preamble: Computing professionals' actions change the world. To act responsibly, they should reflect upon the wider impacts of their work, consistently supporting the public good. The ACM Code of Ethics and Professional Conduct ("the Code") expresses the conscience of the profession.

From the IEEE's preamble: We, the members of the IEEE, in recognition of the importance of our technologies in affecting the quality of life throughout the world, and in accepting a personal obligation to our profession, its members and the communities we serve, do hereby commit ourselves to the highest ethical and professional conduct and agree.

The School of Engineering Statement on EdTech. "With the switch to online teaching as a result of the Coronavirus pandemic, professors and instructors at the KU School of Engineering are aware that some students are actively posting assignments, laboratory, and exam questions and responses to EdTech services (e.g., Chegg) even during exam time frames.

Keep in mind that when a person signs up to participate by either uploading, and/or downloading, and/or using posted material from these sites, the “terms of service” that are agreed to do not protect the person when KU and/or the School of Engineering decide to conduct investigations related to academic misconduct (e.g., plagiarism and/or cheating).

In fact, EdTech services, like Chegg, retain contact information of students who use their services and will release that information, which is traceable, upon request. Using these services constitutes academic misconduct, which is not tolerated in the School of Engineering. It violates Article 3r, Section 6 of its Rules & Regulations, and may lead to grades of F in compromised course(s), transcript citations of academic misconduct, and expulsion from the University of Kansas.

If unsure about assignments, it is important that students use the allowable available resources, such as instructor office hours, graduate teaching assistants, and/or tutoring. The School of Engineering wants students to be successful; cheating is not the way to attain that success." KU's policy on academic misconduct