CS590CC: Cloud Computing
Fall 2017





  Lectures: CS590CC: Cloud Computing Tu/Th 8:30am-9:45am in CMPSCI 142
V. Arun (office hours: Tu/Th: 9:45am-10:30am or by appointment)


This course will teach the principles and practice of distributed systems as applied in today s cloud computing environments. The course will cover concepts in distributed computing including distributed clocks, consistency, fault tolerance, and consensus. The course will also cover popular cloud computing service models, related programming models, datacenter architectures, software-defined networking, and security and privacy issues in public clouds. The course will expose students to popular cloud platforms such as Amazon EC2, Google AppEngine, and Microsoft Azure, OpenStack, etc. The assignments in the course will include a nontrivial programming component that assumes familiarity with multithreaded programming and network programming. This course counts as a CS Elective toward the CS major (BA/BS). Prerequisite: COMPSCI 377 or an equivalent first course in operating systems. 3 credits.

Course Materials

This course will cover material from two textbooks: (1) Distribtued Systems: Principles and Paradigms (2nd edition), Tanenbaum and Van Steen, and (2) Distributed and Cloud Computing, Hwang, Fox, and Dongarra. It is recommended that you purchase at least the first textbook.

Additionally, slides and class notes for material covered in class will be posted on the schedule page. 


You must have completed an undergraduate course in operating systems equivalent to CMPSCI 377 at UMass Amherst. An undergraduate-level knowledge of networking is also helpful.


Homeworks (4 to 5) 20%
Programming assignments (4 to 5) 40%
Midterm and final 30%
Class participation 10%

Academic Policy Please read and abide by the UMass Acadameic Honesty Policy. You must do all homework and programming assignments by yourself.