Overview

CSCI 2952-F investigates and explores an emerging paradigm for enabling distributed systems and applications at scale, Microservices. In particular, this course builds on the foundations provided by the initial distributed systems offering (i.e., CSCI 0138) and explores how these concepts are used to realize, manage, and orchestrate microservices.

Prerequisites

Course Format

Every class we will be discussing (a set of) research papers. Students are expected to read the assigned papers and write a short review (critique) before each class. In addition, one (or more) student(s) will do a short presentation about each paper for the day, which will be the starting point for our discussion(s).

In parallel, students will work on a semester-long project, on an open research problem, related to the topics covered in the course. Projects can have either focus on new techniques for cloud native infrastructure or development of a new large microservice, while projects relating to the students' own research interests are strongly encouraged—provided they also fit with the theme of the class.

Paper Reviews

Everyone, apart from the presenter(s), is expected to read the assigned reading(s) for the week and submit a constructive critique (review) using the provided forms. The reviews should: (a) provide a summary of the assigned paper(s); (b) discuss the pros and cons of the proposed idea; (c) discuss how these papers relates to the other papers/visitors; (d) propose at least two thought-provoking questions regarding the material covered; and (e) conclude with a brief direction of future work. For class which where a visitor is present—you will be requite to submit a review 24 hours after the class. The review should: (a) summarize the presentation; (b) discuss interesting insights from the presentation; (c) propose at least two thought-provoking ideas to improve cloud native infrastructure; and (d) discuss how this talk could have been improved.

  • Paper reviews/summaries can be submitted here.
  • Speaker critiques can be submitted here.
  • Sign up for paper presentations here!!

  • Paper Presentations

    Each student will be presenting a (set of) research paper(s) to the class, and evaluated on the following:

    • Understanding: Does the presenter understand the material?
    • Thoughtfulness: Does the presented have insights and opinions beyond what is in the paper?
    • Clarity: Can the audience understand the presentation? Are there useful examples?
    • Materials: Do the slides (or use of whiteboard) illustrate and support the talk? Are there diagrams to help convey the technicalities?
    • Delivery: Has the presenter practiced?
    • Non-regurgiation: Did the presenter do something beyond simply typing sections of the paper as bullet points? Did the presenter motivate the ideas in their own words?
    • Answering questions: Can the presenter handle questions from the audience?

    Course Project

    The other major component of the class is a research project on a subject of the student's choosing. Ideally the project should be carried out in groups of 2, but exceptions (1 or 3 students) are possible. Please consult with the me. The projects should aim high, such that it should be possible to submit the best projects to a conference or workshop with some additional work after the semester. (I'd be happy to help with that.)

    Grading

    50% Projects
    20% Class Discussion
    15% Assignments
    15% Paper Reading Summaries (Talk summaries) Summaries can be submitted here

    Collaboration Policy

    In general, research is collaborative in nature. A key part of this seminar class requires student to engage in discussion and exchange ideas or to explore outside resources to explore and survey ideas. In part due to this collaborative nature, a clear collaboration policy is essential to avoid any miscommunication.

    • Writing Assignments: All submitted documents but be fully created by the student. Although we encourage discussions and encourage students to use the internet for additional classi cation or to better understand other emerging aspects of the general space, ultimately, we require them to submit and write their own original text. Student are not to copy text, images, or other content.
    • Conding Assignments: While student may use libraries to providing supporting functionalities, they are required to write original code providing the core functionality and logic.
    • Groups or Individual: The paper summaries and scribe notes should be written individually. Whereas the project milestones are meant to be accomplished in pre-de ned groups of twos or threes.

    Meetings

    • Tues and Thurs 2:30PM – 3:50PM
    • CIT 101

    Instructor

    Theophilus A. Benson

    Course Forms

    1. Paper Review Form.
    2. Invited Speaker Review Form.
    3. Project Description Form. Due March 10.
    4. Project Midterm Report Form. Due April 2. April 12.
    5. Project Final Presentation Sign-Ups. Due April 21&23rd. April 30th.
    6. Project Final Report. Due May 12.

    Homeworks:

    1. HW #1.
    2. HW #2.
    3. HW #3.
    4. HW #4.

    Extra-Credit

    There will be extra credit. To do this student will need to focus on (1) enhance a complex services to leverage patterns and combinations of dataplane approaches, or (2) writing a CSUR-style survey paper.

    Announcements

    03/29/2018 New Guest Lecture Added! Yuri from Uber!
    03/29/2018 Course updated to reflect COVID-based cancellations.
    03/12/2018 Class cancelled March 17 and 19.
    02/26/2018 HW#2 Modified
    02/26/2018 Submit Project Description!
    01/24/2018 Welcome to CSCI 2952-F!