EECS/IT 746: Database Systems (Fall 2020) Prerequisites and Expected Audience.
Eligibility for upper division EECS
courses (or industrial experience in software
development and programming). This course is intended
for database engineers, software engineers, database
managers, and graduate students in IT or computer
science. Graduate standing in EECS, introductory
courses in software engineering or systems analysis,
or industrial experience in software development
is assumed. Thought this may not be the absolute
requirement, a student is expected to have a relatively
good background in computing and discrete mathematics
(and a working knowledge of Linux especially if the
student wishes to use a Linux-based database system).
Professor Hossein Saiedian The Zoom ID for class sessions and virtual
office hours is as follows
(password will be provided privately):
The objective of this course is to provide a
relatively comprehensive introduction to the modeling
and design of databases and the uses of a database
management systems (DBMS). Conceptual modeling
via entity-relationship (ER) diagrams and UML, the
relational data model, database design (functional
dependencies, normal forms), query languages such
as relational algebra and SQL, database design
concepts such as integrity constrains, triggers,
query optimization, transactions processing and
concurrency control, and more recent topics such as
database security, distributed databases, big data,
and non-SQL databases data will be covered.
Learning outcomes.
(1) Develop an understanding of a database management system and
its role in an enterprise,
(2) Develop skills is conceptual modeling via ER or UML,
(3) Understand the relational model and its key concepts,
(4) Map a conceptual model to a relational model,
(5) Normalize a relational model to remove/minimize anomalies,
(6) Develop query manipulation statements via relational algebra,
(7) Develop physical database definitions via SQL DDL
(8) Develop query manipulation statements via SQL
(9) Understand other database models such the object model and
No-SQL model,
(10) Understand other database concepts such as transaction
processing and database recover,
(11) Understand emerging topics such as big data and data
science,
(12) Understand emerging topics such database security,
(13) Understand database APIs and distributed databases,
(13) Understand emerging topics such as cloud computing and DBaaS
Another excellent textbook:
Abraham Silberschatz, Henry Korth, and S. Sudarshan, (Author)
Database System Concepts, 7th edition, McGraw-Hill, 2020.
Please visit the textbooks' websites for
updates and errata. The primary textbook is used for both
undergraduate and graduate courses on
(introduction to) database systems. As
such many of its chapters will be briefly
covered but students are required to
thoroughly read them, especially if they
do not have formal education in computer science or IT.
Our objective is to spend
more time on advanced topics such as database design
and more emerging database topics.
Supplementary information for the
course (e.g., PowerPoint slides,
class announcements, the course syllabus,
test dates, and other information) will be
made available online. Students are
responsible for lecture notes, reading
assignments, as well
as items distributed during the classroom
sessions. Students are also responsible
for regularly visiting the class website
for topics covered and any date changes. The order of chapter coverage may be
different from the textbook. Unless
explicitly stated, students are
responsible for all sections in a chapter.
In addition to the materials from the main
textbook, students are responsible for
lecture notes, reading assignments, as
well as items distributed during the
classroom sessions. Important reading
materials as well as lecture slides will
be placed on the class website. Useful readings and tutorials (including slides
from other sources
will be made available (see the
links below) and may be a part of the
weekly lecture presentations. In addition
to the above, students should also develop
a habit of regularly browsing such
journals as
IEEE Computer, IEEE Software, and Communications of the ACM. Students will be evaluated as follows: * Quizzes and exams: 60%
* Special project: 10%
* Team project and
individual assignments: 30%
(The term project will have at least five
components each worth 50 points that will be
due in approximately three week intervals.)
The "special project" provides an
opportunity for each student to become
an expert in an area related to the topic of
the course. It can include a term paper or
a thorough, workshop-like, 90--120 minute
presentation that covers a related topic
in-depth. A special project topic will
have to be approved. Workshop presentation (90-120 minutes) limited to 1-2
students.
Those interested in a presentation should choose
an emerging topic, should have experience in long,
lively, and engaging presentations and should begin
their preparation immediately. Carefully follow the
Guidelines for Making a Presentation. A proposal
(workshop topic, justification, list of resources,
and the tentative date for the presentation) should
be submitted by the third week of the semester. Term paper.
Those who would like to do a term paper may choose
an applied research topic, e.g., an evaluation or
comparison of certain methodologies for a real case
study (or a reconstruction of a case study reported
in literature). Another option is to make an objective
evaluation of several research projects tackling the same
problem. Other ideas are welcome.
Guidelines for Writing a Term Paper have to
be carefully followed. The paper decision and the
tentative topic should be made by the third week of
the semester. The following is the weekly semester
schedule of lecture topics and all related
curricular activities. Some referenced
documents may be password-protected. The
password will be publicized in class. Week 1: Monday August 24 Discussion topics:
Course syllabus and course review, Term project
selection and review, Term project team formation,
Introduction to database management system
Readings:
Chapter 1: Databases and Database Users
Assignments: Assigned in classroom
Week 2: Monday August 31 Discussion topics:
Database Systems Concepts and Architecture,
Data Modeling Using the Entity Relationship (ER) Model
Assignments: Assigned in classroom
Discussion topics:
Data Modeling Using the Entity Relationship (ER) Model,
The Enhanced Entity Relationship (EER) Model, UML
Other topics:
Discussion topics:
The Relational Data Model and Relational Database Constraints,
The Relational Algebra
Assignments: Assigned in classroom
Discussion topics:
Relational Algebra, Introduction to SQL
Readings:
Chapter 8: The Relational Algebra,
Chapter 6: Basic SQL
Assignments: Assigned in classroom
Discussion topics:
More SQL: Complex Queries, Triggers, Views, and Schema
Modification, Relational Database Design by ER- and
EER-to-Relational Mapping
Other topics: Paper/workshop (special project)
proposal is due
Other topics: Exam 1
Assignments: Assigned in classroom
Discussion topics:
Database Design Theory and Normalization
Readings:
Chapter 14: Basics of Functional Dependencies and Normalization
for Relational Databases
Assignments: Assigned in classroom
Other topics:
Discussion topics:
Relational Database Design Algorithms and Further Dependencies
Readings:
Chapter 15: Relational Database Design Algorithms and Further
Dependencies
Assignments: Assigned in classroom
Discussion topics:
Relational Database Design Algorithms and Further Dependencies
Readings:
Chapter 15: Relational Database Design Algorithms and Further
Dependencies
Assignments: Assigned in classroom
Discussion topics:
Introduction to SQL Programming Techniques,
Web Database Programming Using PHP
Other topics: Exam 2
Assignments: Assigned in classroom
Discussion topics:
Various DB topics: Object databases, Non-SQL databases, big data,
concurrency, transactions processing, database recovery,
distributed databases
Due: Detailed outline for the term paper or
workshop
Readings: Mostly lecture notes
Sections of the following chapters: 12, 20, 21, 22, 23, 24, 25
Assignments: Assigned in classroom
Other topics: Due:
Team Projects:
The logical relational model and schema (DDL in SQL),
The objective: Map (transform) the conceptual schema
in ER (or UML) into the data model of the chosen DBMS (in our
case, the relational model), identify the functional
dependencies, normalize the resulting relations, and
to define external views. Be sure to clearly show
the relations (tables), their attributes, primary
and foreign keys. For each relation, indicate its
functional dependencies and its normal form.
Discussion topics:
Various DB topics: Object databases, Non-SQL databases, big data,
concurrency, transactions processing, database recovery,
distributed databases
Readings:
Sections of the following chapters: 12, 20, 21, 22, 23, 24, 25
Assignments: Assigned in classroom
Discussion topics:
Various DB topics: Object databases, Non-SQL databases, big data,
concurrency, transactions processing, database recovery,
distributed databases
Readings:
Sections of the following chapters: 12, 20, 21, 22, 23, 24, 25
Assignments: Assigned in classroom
Other topics:
Due Team Projects:
Physical database design and implementation. The
objective is to define and implement the actual
relations (tables), populate the relations
with meaningful data, implement any necessary
transactions or embedded program or online scripts.
Provide SQL DDL definitions for your database.
Provide a listing of each (mySQL) relation and its data.
If your database will have Web interfaces, provide
snapshots of such interfaces.
Discussion topics: Database APIs and data
distribution, DBaaS, Database on the clouds, Database security
Readings:
Sections of the following chapter: 30
Assignments: Assigned in classroom
Other topics:
Team Projects: Presentations and demos;
Project portfolios including the user's manuals.
presentation objective: 25-minute presentation by each team to
present the design (architecture and the rationale) for their
database project and to demonstrate
(outside classroom) the best features of the project.
The presentations normally should focus on the ER diagram (to
provide a conceptual view), discuss the resulting relations
(keys, attributes, etc.) and their normal form, a rationale
for the normal form achieved, and a sampling of interesting
SQL queries and their output.
Other Topics:
Team presentations
Other topics: Comprehensive Final Exam
Course Title
Mondays, 6:10-9:00 PM, Synchronous Zoom Sessions (Course
Number: 26510)
Course Web Site:
people.eecs.ku.edu/~saiedian/746
Instructor
Offices: BEST 250 and Nichols 155
Telephone: 785-864-8812 or 913-897-8515
E-Mail: saiedian at ku.edu
WWW:
people.eecs.ku.edu/~saiedian
Virtual Office Hours (Zoom/Phone Call): Mondays,
1:00-5:00 PM (and by appointment)
Zoom ID
Course Overview/Outcomes
Textbooks
R. Elmasri and B. Navathe,
Fundamentals of Database Systems,
7th edition, Pearson, 2016.
Other Resources
Evaluation Criteria
(Subject to revision)
A =
90%..100%
B =
80%..89%
C =
70%..79%
D =
60%..69%
Special Project Options
Weekly Schedule
Week 3: Monday September 7
Week 4: Monday September 14
Week 5: Monday September 21
Week 6: Monday September 28
Week 7: Monday October 5
Week 8: Monday October 12
Week 9: Monday October 19
Week 10: Monday October 26
Week 11: Monday November 2
Week 12: Monday November 9
Week 13: Monday November 16
Week 14: Monday November 23
Week 15: Monday November 30
Week 16: Monday December 7
Attendance expectation. Regular attendance is essential for
success in this course and its lab components. Attendance will be
be recorded throughout the semester via iClicker. Three or more unexcused
absences will result in a one-letter grade reduction in the
final course grade, reflected when grades are posted at the
end of the term.
Excused absence requests. Requests for excused absences must be
submitted in advance and approved by the instructor, except in
cases of emergency. For emergencies, notify the instructor as
soon as possible following the absence. Supporting documentation
must be included with the request.
Examples of excusable absences are listed below.
Responsibility for missed work.
Students who miss class without a valid excuse are responsible
for obtaining missed materials. 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 and course updates.
Late-work, makeup policy.
Late work will not be accepted under any circumstances. Make-up
options for labs, quizzes, and exams are unavailable except
in cases of excused and verified absences.
Exceptions will be made for
excusable absences.
Timing of make-up assessments.
Make-up quizzes and exams for excused absences must be completed
before the class session in which the quiz or exam content will
be reviewed or its answer key released. Make-up labs must be
completed within one week of the excused absence.
Make-up assessment integrity statement.
ff granted permission to take a quiz or exam at a later time
due to an officially excused absence, the student must affirm
the following: “I acknowledge that I have been granted
the opportunity to complete this assessment as a result of an
officially excused absence from its original administration. I
hereby affirm—without reservation—that I have not sought,
received, or accessed any information regarding the content,
structure, or subject matter of this quiz or exam from
any individual who previously completed it. This includes,
but is not limited to, verbal conversations, written notes,
online discussions, messaging apps, shared files, or any
other form of communication. I understand that violating
this pledge constitutes academic misconduct and will result
in immediate disciplinary action, including a failing grade
on the assessment and referral to the School of Engineering
disciplinary committees.”
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.
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:
Attendance, late work, and makeup policies
Examples of excusable absences include:
Common policies
Sign in.
Login with your full first name and last name as listed on
the class roster. Do not use a nickname or other pseudonym when
you log in. It makes it impossible to know who is in attendance.
Audio.
Mute your mic (lower-left corner of
the Zoom screen) after you login and whenever you are not
speaking; it will help to avoid or minimize
background noise and distractions.
Video.
All students are encouraged to turn on their video streams.
It is helpful to see each other, just as in an in-person sessions,
and makes class presentations for me and other students more lively.
You may use a virtual background; virtual backgrounds are not
perfect but are much better than black screens.
Stay engaged.
Close any apps on your computer that are not relevant and
turn off notifications. Engage in classroom discussion. Ask
questions; it is OK to ask a question via a chat dialog or by
raising your hand, but it is perfectly OK to just interrupt
me as I may not immedaitely notice a raised hand or a chat
question.
Giving a presentation.
If you have to make a presentation, you will become a co-host and will
be able to share your screen. When you are done with your presentation,
stop the shared screen.
You might want to use a headset with an external mic for best hearing
and speaking capabilities.
Virtual office hours.
Office hours will be held virtually. To avoid running idle
Zoom video sessions, please send an email (or call) for a
Zoom meeting and a Zoom session will be launched using the same
classroom Zoom session ID and password. Day time calls to the office
phone number will be automatically transferred to my mobile number.
Minimal Zoom meeting etiquettes (in case of a transition to an online mode)
Generative AI tools—such as ChatGPT, GitHub Copilot, Gemini ,
and others—can be valuable resources for learning. When used
appropriately, they may assist in brainstorming, exploring
ideas, and refining drafts. However, they must never
replace your own intellectual work.
These tools are akin to the writing center consultants, the EECS
programming tutors, and lab assistants: they can guide and support
but must not generate final submissions. Submitting
content primarily generated by AI is a violation of academic
integrity, comparable to submitting work completed
by someone else.
Unless explicitly permitted, all coursework must reflect
your original understanding, reasoning, and
expression. If you use AI tools at any stage of an
assignment, you are required to disclose that use via a brief
reflection, which must include:
LLM and generative AI tools
Failure to disclose use of AI tools or submitting AI-generated work as your own will be treated as academic misconduct. Minimum consequences include a zero on the assignment. Depending on severity, further penalties may include failure in the course and formal referral to the School of Engineering disciplinary committee.
This course is designed to build your skills—not evaluate the performance of generative tools. Authentic engagement with course challenges leads to meaningful growth. Overreliance on AI undermines both your learning and the integrity of our academic community.
Intellectual honesty is not optional—it defines your
identity as an engineer, a scholar, and a professional.
.
The University of Kansas, the School of Engineering, and the Department of Electrical Engineering & Computer Science (EECS) maintain a zero-tolerance policy toward academic dishonesty and misconduct. All students enrolled in this course are expected to uphold the highest standards of integrity and professionalism in their academic work.
Academic dishonesty includes, but is not limited to:
The minimum consequence for an academic integrity violation is a zero on the item in question (e.g., lab, assignment, quiz, or exam). Depending on severity, penalties may include a grade reduction, a failing grade for the course, and formal referral to the School of Engineering's disciplinary committee for further review and sanctions.
All definitions and procedures follow institutional policy and guidance outlined by the University of Kansas Office of Student Affairs and the EECS Department. Students are expected to be familiar with and adhere to these standards at all times.
Please also see KU's academic misconduct policy
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:
Code of student rights and responsibility: Code of Student Rights and Responsibilities
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."
Professor Hossein Saiedian
Electrical Engineering & Computer Science
Eaton Hall 3012
University of Kansas
1520 W 15th St
Lawrence, KS 66045-7621
+1 785 864-8812
saiedian at eecs.ku.edu