course summary      course structure      schedule/readings      miscellaneous     

Course Summary

Lecture Time and Place

Time: TuTh 1:30-3:30 PM
Room number: Beyster 1690
Lectures Dates: Sep 8, 2015-Dec 10, 2015
Office Hours: (By appointments only) 4769 Beyster Building


Instructor: Barzan Mozafari (To ensure a timely response, ALL email inquiries regarding this course should have a title starting with "EECS584").

Instructor Assistant (IA): Allen Zhao (allenxyz AT (Student presenters must email the final copy of their slides (both PPTX and PDF) to the IA no later than 10AM of the morning of their presentation date.)


There is no official textbook for this course. The reading list is a collection of papers, which will be posted on the course web page. However, students need to be familiar with the introductory-level material covered by EECS 484. Also, I will occasionally suggest optional readings from the following books:

  • Database Management Systems (3rd edition) - by Raghu Ramakrishnan and Johannes Gehrke, McGraw Hill, 2003.
  • Readings in database systems (4th edition), edited by Joseph M. Hellerstein and Michael Stonebraker, Publisher: MIT Press, 2005.

Note: You do not need to purchase either of these books as their copies will be on reserve at the library.

Course Objective

EECS 584 will cover a number of advanced topics in big data, databases, and modern data-intensive systems. The specific topics include advanced concurrency control techniques, query processing and optimization strategies for relational database systems, advanced indexing methods, parallel and distributed database systems, map-reduce/hadoop, NoSQL, database-as-a-service (DB clouds), data mining on large databases, data on the web, and topics in database security and privacy.

In addition to learning advanced topics in databases, this course will also give you an opportunity to practice important research skills:

  • You will gain experience reading and critically evaluating original research papers.
  • You will practice communicating complex technical material, both orally and in written form.
  • You will complete a small-scale original research project of your own choosing.

The prerequisite for this course is EECS 484, equivalent coursework, or permission from the instructor.

Course Structure

EECS 584 consists of five main components: paper presentation, participation in class discussions, writing paper summaries, a midterm exam, and a final project./

Note: To pass this course, you need to obtain at least 30% of the grade in EACH of these five components. For example, a score of 20% for class participation will subject you to a failing grade (at the instructor's discretion) EVEN IF YOU obtain a 100% score in all other components. In other words, your final grade is a weighted average of your scores in these different components ONLY IF your score is above 30% in each component.

These components are described next.

Paper Presentation

The majority of this course will be conducted as a seminar. A typical class will include a student presentation (approximately 30 minutes) followed by a class discussion of the designated paper(s). Each student will be assigned to present a paper at least once throughout the semester. When the number of students exceed the number of papers, some papers will be presented by a team of two students. When you present a paper, your goals should be as follows:

  • Motivate the paper, and provide background. Why is this paper important? What problem does it solve? In some cases, you may find it useful to refer to related material (e.g., from the textbook), and to explain how the concepts in the assigned paper advance the state of the art.
  • Provide an overview of the paper's key contributions.
  • Illustrate key technical points. (Examples are a great way to do this.)

You will need to strive for balance in your presentation. It is important to realize that there will not be time to cover all of the technical details, so you will need to decide which details are most important. Here are some additional pointers on how to give a bad (good) talk and Patrick Winston's classic lecture.

To help you in developing your paper presentations, student presenters are required to meet me in my office the Wednesday before the week in which they will present (3:30-4:10 PM for student(s) presenting the following Tuesday, and 4:10-4:50 PM for student(s) presenting the following Thursday). When it is your turn to present, you must read the paper well ahead of time and be prepared with draft slides the Wednesday before your presentation week (i.e., Thurs presentors will meet me two Wednesdays before their own presentation). Please create your slides in PowerPoint using this template. You will need to email me the final version of your slides (both in Powerpoint and PDF) at least 24 hours before the actual presentation to ensure that I have enough time to prepare handouts for class. After your presentation, I will post your slides on the course website. If your presentation contains animations, it is your responsibility to ensure that the generated PDF is still readable.

Please note that I view preparation and organization as the most important aspects of your paper presentations. Your grade will be based on these factors, as well as the extent to which you distill the important points from the paper. Each presentation will be graded on a scale of 0--3 (see the grading table).

Participation in Class Discussions

You are expected to attend all lectures (you may skip up to 2 lectures due to legitimate reasons), and more importantly, participate in class discussions.

Paper Reviews

All students are expected to carefully read the assigned paper(s) before class (i.e., mandatory readings) and write a short review/summary of the paper(s). By 11:59 PM each Monday you must submit your reviews for all papers that will be discussed during that week. This serves two purposes: (1) It ensures that you will be prepared to participate in the class discussion, and (2) it helps you develop your skills in evaluating other people’s research, hence improving your own paper writing skills.

Your reviews can be brief, but should contain the following components:

  • What is the problem addressed by the paper, and why is this problem important? What is the main approach proposed by the paper? (1-2 paragraphs)
  • What are the strengths and technical contributions of the paper? (1 paragraph)
  • Describe the main drawbacks of the paper (1 paragraph)

You should submit your review using this link ONLY. Submissions are managed through an automated system and will not be accepted after the deadline. You should NOT submit your reviews by emailing the instructor. Once your review is submitted successfully, you will receive an automated confirmation email. Please check your spam folder if you do not receive a confirmation email.

All reviews will be graded as “weak”, “average”, and “strong”. See some examples of strong, medium, and weak reviews. Reviews of each paper will be graded either by the GSI or by one of the other students. If you are assigned to grade a particular paper, you have a week to complete the task and email the grades back to the instructor. Review grades will be periodically uploaded to C-Tools.

Note: You are on your honor not to read or use other students' reviews before the submission deadline. Read the engineering honor code. No violation of the honor code will be tolerated. Once the deadline has passed, you can check the course website to read through other students' reviews if interested. If you do not see the reviews of a particular paper, you can try to submit a dummy review for that paper (only after its deadline has passed). This will automatically publish the submitted reviews for that paper.

Midterm Exam

There will be a closed-book midterm exam based on the mandatory readings of the class. Each student must complete the exam solely by her or his own efforts. Questions can be asked only of the course instructor. The exam must be completed within the specified time.

Final Project

A big component of this course is a class project. For this project, you form a team with 1 or 2 other students in the class, and will choose a research topic in the area of data management, and explore it in detail. Projects can range from quite theoretical to heavy implementation, and should include some component of original work. In other words, survey articles are not permitted. You may choose to implement an existing algorithm or technique, but this should be done in order to conduct a unique experiment, or to test a novel hypothesis. All project topics need to be approved by the instructor to avoid situations where the topic is not acceptable for the final project of this course. You must follow the following milestones to ensure that you will have enough time and feedback to turn in a high-quality project:

  • Try to identify your team members as soon as possible. Each team needs to be between 2-3 members (exceptioanlly, 4 students per team are also allowed). Note that the size of the project contribution is expected to be proportional to the number of students in the team.
  • Turn in a hard-copy draft (1-2 pages long) of your initial project proposal by Sep 22's lecture. Include the names your team members on the draft.
  • Schedule a 10-15 minute meeting with me (either during regular office hours or by appointment). In this meeting you will pitch your idea and I will give you some early feedback. You are more than welcome to keep revising your initial idea and coming back for more feedback, until we reach a mutually aggreeable topic for your project.
    Note:You need to have thought of your topic of interest and the scope of your project before meeting with me.
  • You must have finalized your team and project proposal by Oct 6 (I must have approved your final idea by this date).
  • You must a present a mid-semester progress report on your project. These presentations will be held during class hours on Nov 12 and Nov 17.
  • You must present your final results during a poster session, to be held on Dec 10. You need to turn in these deliverables by Dec 11 at 11:59pm.

You may do your project individually or with 1-2 partner(s), but the size of the project should be proportional to the group size. However, single-person projects are highly discouraged.

I am always available during office hours to discuss projects, and you may also make appointments at other times. It is extremely important to start working on your project early in the semester, or you are unlikely to finish in time.

Mid-semester Progress Report:

Aim for a 10 minute presentation, followed by a 5-minute Q/A. It's best that all team members participate in the presentation (preferably, each person describing her/his own part of the project). Make sure you rehearse your presentation many times, to ensure that you can clearly communicate your project. Similar to the paper presentations in this class, your goal should be to give an introduction to your problem (very briefly), describe your contribution and highlight your main results.

Final Deliverables:

1. Poster Presentation

Create and present a poster, summarizing all your project results. Easels will be provided (posters should be no larger than 30inch by 40inch).

2. Final Submissions (Project Report and Implementation)

Each team needs to submit a final report of their project (both source files and final PDF) in a single ZIP file as well as their entire source code in another ZIP file, no later than 11:59 EST on Dec 11. The format and content of the final report and the code submission instructions are described below.

2.1. Paper Format

Your paper should follow the ACM formatting (preferably in LaTeX, but Microsoft Word is also acceptable), using one of the templates provided at for Word and LaTeX (version 2e). (For LaTeX, both Option 1 and Option 2 are acceptable.) The font size, margins, inter-column spacing, and line spacing in the templates must be kept unchanged. Your main body of the paper should not exceed 12 (2-column) pages. You can have as many appendix pages as you deem necessary, but the first 12 pages of your paper (including references) should be self-contained, i.e. if one decides not to read your appendix, one should still be able to understand your project's contributions.

2.2. Paper Content

You should try to write the best research paper that you can using the results of your project. You have read many good papers throughout this class, so by this point you should have a good idea of what makes a good research paper! Basically, your report needs to clearly present the following: the problem statement, the motivation (why it's important), the literature review (the previous work in this area), your main idea and approach, your implementation techniques, as well as your (empirical) results along with detailed description of your experimental setup.

2.3. Code and Documentation

You need to submit a single ZIP file containing your entire source code. Your top directory should include two files: INSTALL.txt and README.txt, as described next.

Your INSTALL.txt file should provide the detailed steps required to compile your source code. For instance, "go and download and install SomeThirdParty library" is not an acceptable instruction. Instead, provide the exact commands and URLs needed to install other libraries that are needed to compile and use your source code.

Your README.txt should contain two sections. In the first section, you should explain the Usage of your tool, e.g. command line arguments and pointers to some small text data that can be used to run your tool. In the second section, please explain the major functions of your source code and where to find their implementations in your source code.


Paper Presentation: 15%

Each student will be assigned to present at least one paper during the semester. Presentations will be graded on a scale of 0-3 as follows:

  • 0 - Student fails to complete assigned presentation
  • 1 - Presentation is disorganized, hard to follow, or lacking in important details
  • 2 - Presentation is solid, and covers important points with reasonable clarity (typical score)
  • 3 - Presentation is exceptionally insightful (score given infrequently)

This score will contribute 15% of your final grade.

Class Participation: 5%

Your participation grade will be based on a qualitative assessment of the value of your contributions in leading and participating in class discussions throughout the semester.

Paper Reviews: 15%

Each student is expected to read the assigned paper(s) and to submit a review for each paper by 11:59 PM of the Monday before class.
You will receive zero credit for a review if you submit it after the deadline. However, three of your reviews with the lowest grade will be ignored in your final score. Therefore, you may choose to skip up to three reviews without penalty. (This is to accommodate unforeseen circumstances throughout the semester.)

Reviews will be graded as “weak” (1), “average” (2), or “strong” (3). Each review should contain a short (1-2 paragraphs) summary of the paper, its strengths (1 paragraph), and its weaknesses (1 paragraph).

Midterm Exam: 25%

The midterm will be a closed-book exam, on Tuesday Oct 27, during the regular lecture time.

Final Project: 40%

Your project grade will be based primarily on your final paper and presentation. Students are encouraged to work on a project in teams of 2-3 people. Students in the same team may receive different grades depending on their contributions, i.e., students contributing equally to the project will receive equal grades.



Students with documented disabilities (including invisible disabilities) are encouraged to contact the instructor during the first two weeks of class.