CS3200: Introduction to Databases

MTWR 11:40a-1:20p ET/Boston (Online. See Canvas for connection information.)

John Rachlin

Associate Teaching Professor

E-mail j.rachlin@northeastern.edu
Office Hours MWTR 1:30pm-3:30pm on Zoom
and by appointment only.

Teaching Assistants

See Piazza for TA office hours and zoom locations.


Nauria de Oliveira

Yomi Addey

Aarushi Attray

Laura Boelsterli

Fenghao Cui

Ashsmith Khayrul

Kathryn Tran

Course Information

Course Description

This course will give you a working knowledge of designing and building database-backed data driven applications. We cover advanced querying with SQL, data modeling, normalization, and the ACID properties of a relational database management system. We will also cover database programming using triggers, stored procedures, functions, and events. Advanced topics include indexing, transactions, concurrency and recovery, and building APIs and Dashboards for application development. The course will also provide an introduction to non-relational (NoSQL) databases. Students will carry out an individual data integration and analysis project. Upon completion of the course, students will be able to:

Recordings, Attendance, and Participation

Lecture recordings will be available on Canvas usually within a few hours after the class ends. Recordings are for backup purposes and are not intended to replace the lectures. In fact, I will be taking attendance every day and attendance and participation will count for a portion of your grade. I strongly recommend you attend every class and that you ask questions regularly. Be active and engaged! Be present in all senses of the word. In the event you need to miss class, I will be posting lecture notes and coding examples that evening. (Materials should be available by 8pm.) I very much welcome active discussion in my classrooms. To ask a question, feel free to virtually raise your hand or post your question on chat.

Please turn your cameras ON

Textbooks

Title Murach(2023) : Murach's MySQL 4rd Edition (3ed OK).
Buy online Amazon.com
Description Highly recommended. A very popular overview of MySQL including database administration, database design, writing SQL queries, and implementing stored programs.


Title Lemahieu, vanden Broucke (2018): Principles of Database Management
Buy online Amazon.com
Description Recommended. A modern textbook on Database Systems and design. Purchase as a reference, but not critical to succeeding in the class.

Recordings

Most classes will be recorded. Recordings are available through Canvas....Zoom Meetings....Cloud Recordings. Recordings should not be used as a substitute for coming to class. This is a synchronous course with live lectures. Attendance is not only expected, it is required.

Advice for taking an online class

I understand that taking a class online can be a challenge for some students. I will do everything in my power to make the class as personalized and engaging as possible. This course was not designed for 100,000 anonymous strangers. I will tailor the material to your questions and feedback and your assignments will be individually evaluated by the instruction team. You can make this class more interesting and fun by asking questions, expressing opinions, and having a voice. Turning on your camera, while not required, will help me to get to know you and to know how you are reacting to the material. You may also find it helpful to have a second small monitor set up so you can follow along when I give technical demonstrations.

Homework

There will be one "mini-project" programming assignment about every week. The detailed dates are listed on the schedule below. Homeworks should be completed largely on your own unless I specifically allow for group submissions. Informal discussions or seeking general help from fellow students is ok so long as you cite your sources. Do not simply copy another student's submission!

Strict Homework Late Policy:

Academic Integrity (Please Read!)

Database design and formulating SQL queries is a creative process. Individuals must reach their own understanding of problems and discover paths to their solutions. Verbal discussions with fellow students is fine, but I expect each student to do their own work. If you share code, files, queries, or if you provide or receive help on a quiz, you are breaking the rules. Do not, under any circumstances, share code, queries, or designs with your fellow students. This is a direct violation of the course collaboration policy. Please be aware that I take the issue of academic integrity very seriously. The consequences of cheating in my class are at my discretion and may include receiving a zero for the assignment or quiz, a full letter grade reduction in your final grade, or failing the course altogether. Please contact me if you have any questions about acceptable conduct. And if you are stuck on an assignment, the TAs and I are here to help, or you can pose your question on Piazza. The university's academic integrity policy discusses actions regarded as violations and consequences for students: http://www.northeastern.edu/osccr/academic-integrity

Evaluation

The final grade for this course will be weighted as follows:

Final grades will be assigned based on the following scale. Computed grades are rounded to the nearest integer, e.g., 93.4999 is an A-. 93.5000 is an A.

LetterRange
A94 - 100
A-90 - 93
B+87 - 89
B83 - 86
B-80 - 82
C+77 - 79
C73 - 76
C-70 - 72
D+67 - 69
D63 - 66
D-60 - 62
F<60

Schedule

Note: This schedule is subject to change and will be adjusted as needed throughout the semester.

Week Date Topic Reading HW Due
1 May6 The relational model
Database Concepts
Installing MySQL
Murach 1 & 2
2 May 11 SQL Basics Murach 3, 5, 6, & 7 HW1:Concepts
3 May 18 Database Design Murach 10 & 11 HW2:SQL
4 May 26
No Class Monday
Advanced SQL with JOINs Murach 4 HW3:Design
5 June 1 Stored Procedures 13, 15 & 16 HW4:Joins
6 June 8 Transactional Processing Murach 14 HW5:DB Programming
7 June 15 Project Fair / Presentations
Wrap-up
HW6:Project Reports

Inclusive Class

Northeastern University values the diversity of our students, staff, and faculty; recognizing the important contribution each makes to our unique community.

Respect is demanded at all times throughout this course. In the classroom, not only is participation required, it is expected that everyone is treated with dignity and respect. We realize everyone comes from a different background with different experiences and abilities. Our knowledge will always be used to better everyone in the class.

We strive to create a learning environment that is welcoming to students of all backgrounds. If you feel unwelcome for any reason, please let us know so we can work to make things better. You can let us know by talking to anyone on the teaching staff. If you feel uncomfortable talking to members of the teaching staff, please consider reaching out to your academic advisor.

Northeastern is committed to providing equal access and support to all qualified students through the provision of reasonable accommodations so that each student may fully participate in the learning experience. If you have a disability that requires accommodations, please contact Disability Access Services (DAS).