Ethan Blanton

This information is advisory only. The authoritative course description and requirements for a given semester are defined in the course syllabus.

Overview

This course is a cross-listed graduate/undergraduate course titled Distributed Systems for both graduate and undergraduate students. Both versions of the course are project-heavy. Some semesters, only one call or the other has been offered.

Course materials for semesters before Spring 2026 have been taken down as they do not comply with current Federal accessibility standards, and no exception is provided for historical material.

Offerings

Spring 2026 Spring 2025 Spring 2024 Spring 2023 Spring 2021 Spring 2018

This Offering: Spring 2018

Lecture
486LEC-000 (10312):MWF13:00–13:50,Cooke 121(Ethan Blanton)
586LEC-000 (10296):MWF13:00–13:50,Cooke 121(Ethan Blanton)
Office HoursN/A
SA Office HoursN/A

Course Materials

Materials from this course, including the syllabus and lecture slides, have been taken down as they do not comply with current Federal accessibility standards, and no exception is provided for historical material.

Prerequisites

All students are expected to have a thorough understanding of data structures and algorithms, Internet architecture and networking, and operating systems. In addition, students are expected to have done some systems programming (e.g., using threads and sockets). Students must either know Java or be capable of picking it up rapidly.

Undergraduate students must have completed CSE 250 or an equivalent course at another institution with appropriate articulation.

Text

The text for this course is Distributed Systems: Concepts and Design, Fifth Edition, by Coulouris, Dollimore, Kindberg, and Blair.

Policies

The ultimate authority for course policies is the course syllabus. However, my general academic integrity policy can be found here.

Course Structure

This is a project-heavy course. Students will be expected to implement several non-trivial applications on the Android platform. Projects will make up about half of the final course grade, with the remainder being quizzes and exams.

There will be one midterm examination and one final examination.

There are no graded homeworks for this course. Homeworks may be assigned to help students understand the material, and any material covered in homeworks may appear on exams or quizzes.

Programming Assignments

All projects for this course must be buildable using gradle under Android Studio 3.0.1, and target Android SDK version 19. (SDK versions 23 and above use a fine-grained permission structure that makes automated testing more difficult for our purposes, and newer SDKs are much more resource-heavy in the emulator.) The provided starting code will meet these requirements.