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. Attendance will be recorded throughout the semester via iClicker
for classroom meetings (and, if the course includes a lab component, via a
sign-up attendance sheet for lab sessions). More than three unexcused absences
(in classrooms or labs) will result in a one‑letter reduction in the final
course grade, which will be applied when grades are posted at the end of the
term. Course-specific attendance policy (EECS 581). Because this course
meets once per week, a single absence carries the weight of two regular
sessions. Accordingly, no more than two unexcused absences will be permitted
(equivalent to four regular sessions under the standard format); a third
unexcused absence will result in the one-letter grade reduction described
above. This applies to the Tuesday classroom sessions; TA/Scrum-meeting
participation is assessed separately, using the project rubric posted on
Canvas. Late-work, makeup policy. Late work and make‑up opportunities
for labs, quizzes, and exams are available exclusively for students with
excused, documented, and approved absences, ensuring full support for those
with qualifying circumstances. Excused absence requests. Requests for excused absences must be
submitted in advance and approved by the instructor, except in cases of
emergency. Supporting documentation must accompany all requests. For
emergencies, notify the instructor as soon as possible following the
absence.
Examples of excusable absences include: If a student experiences a confidential personal or family situation that
does not fall under the above categories, they may consult CAPS or their
academic advisor, who can then contact me on their behalf. Make-up policy and integrity.
For excused absences, quizzes and exams must be made up before
the content is reviewed or the answer key is released. Labs,
assignments, or homework are due within one week of the
absence. Additional flexibility will be provided for special circumstances.
By taking a make-up assessment, you affirm that you have an
excused absence and have not sought or received any information
about its content from prior test-takers. Violating this
pledge is academic misconduct (see above).
Responsibility for missed work. Students who miss class are
responsible for obtaining any missed materials.
Attendance, late work, and makeup policies
Classroom conduct policy:
Students are expected to arrive on time, remain attentive, and
conduct themselves professionally. Please avoid behaviors that
disrupt the learning environment or instructor presentations,
and note that profanity is strictly prohibited. Additionally,
students are encouraged to actively engage during class
sessions by asking questions, contributing to discussions,
and providing feedback.
Canvas announcements.
Important course updates will be posted via Canvas
Announcements. You are responsible for checking Canvas
regularly; email notifications may also be sent depending on
your account settings.
Email communications
Grade and absence clarification or correction.
We want to ensure your records are accurate and fair. If
you believe a grade on an assignment, lab, quiz, or exam is
incorrect, you must submit an grade correction request within one
week of receiving the graded work. Similarly, if you need to
submit documentation for an excused absence after the fact, you
must do so within one week of the absence. Failure to address
these matters within this one-week timeframe will result in
the decision becoming final, ensuring timely resolution and
consistency for the entire class.
Technical problems.
Submit a support request help at:
https://tsc.ku.edu/request-support-engineering-tsc.
Electronic device policy:
Cell phones must be silenced before entering the
classroom. While laptops, tablets, and phones are welcome for
note-taking and approved tools like iClicker, non-academic uses
(such as social media or web surfing) must be avoided to prevent
distractions. Audio should remain turned off. Additionally,
devices may be used to photograph whiteboard notes or projects,
provided the shots exclude the instructor and other students.
Incomplete grade policy.
An Incomplete ("I") grade is reserved for exceptional
circumstances beyond your control and must be resolved within
the instructor's timeframe (up to one year before automatically
converting to an "F" or "U"). For full details please review KU policies:
here and
here.
Accommodations for students with disabilities.
The University of Kansas is committed to equal opportunity
and accessible learning. Requests for special accommodations
should be made through KU Student Access Services.
Nondiscrimination and equal opportunity.
KU strictly prohibits discrimination based on protected
characteristics across all programs and activities. For
full institutional policies, please review KU's statements
on nondiscrimination and the racial and ethnic harassment policy.
Sexual harassment.
KU prohibits sexual harassment and is committed
to preventing, correcting, and disciplining
unlawful harassment and assault. Please review KU's statement on sexual harassment for
details.
Mandatory reporter statement.
As a faculty member and KU employee, I am a mandatory reporter
required to share disclosures of discrimination, harassment,
or sexual violence with the Office of Civil Rights and
Title IX. For confidential support options (such as CAPS,
Watkins Health Care, or the Ombuds Office), please review KU's statement on mandatory reporting.
Commercial note-taking ventures.
Pursuant to KU's commercial note-taking policy,
selling lecture notes or course materials for commercial
gain is strictly prohibited and subject to disciplinary
action. Note-taking provided as an official ADA accommodation
for a student with a disability is exempt.
Concealed handguns.
Individuals choosing to carry concealed handguns must do so
safely and in strict compliance with state/federal laws and KU
weapons policy, which requires that handguns remain under
constant control, fully concealed, holstered with the trigger
covered, and carried with the safety on and no round in the
chamber.
Common policies
As an engineering student at the University of Kansas,
all written communications should reflect professional
standards. Please note:
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.
Use of generative AI tools is not permitted for any assignment
unless the instructor explicitly authorizes it for that specific
assignment; where such use is authorized, it must be disclosed
via a brief reflection describing how and why the tool was used,
the specific prompts entered, how the output was validated
and revised, and any challenges or limitations encountered.
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.
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 tab, 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
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