George Mason University
DEPARTMENT OF COMPUTER SCIENCE

CS 475 -- Concurrent & Distributed Software Systems
Spring 2013

T,R 1:30 pm - 2:45 pm, Nguyen Engineering Building 1103

Prerequisites | Description | Readings | Topics | Grading | Lateness | Home Page


Professor Richard Carver
703-993-1550
rcarver@cs.gmu.edu
Office hours: T, R: 12:45 - 1:15pm
Engineering Bldg Room 5318
TA: Raj Nishtala, rnishtal@gmu.edu, Office Hours: Friday 11:00 am - 1:00 pm, Engineering Bldg 5321.


PREREQUISITES :
Grade of C or better in CS 310 and 367.


DESCRIPTION :
The class focusses on issues that arise in the design and implementation of concurrent and distributed applications. Course work will involve several programming assignments.

Course Outcomes:

  1. Demonstrate an ability to design and implement a concurrent/distributed program.
  2. Demonstrate knowledge of fundamental algorithms for mutual exclusion in shared memory and distributed systems.
  3. Demonstrate an ability to synchronize concurrent processes and threads by using semaphores, monitors, and message passing.
  4. Demonstrate an understanding of the problems inherent in testing and debugging concurrent programs.
  5. Demonstrate an ability to check the correctness of concurrent programs by using testing and debugging tools.

Textbook:
Modern Multithreading by R. Carver and K.C. Tai, Wiley Interscience, 2006.

The textbook is on reserve in the library. The call number is QA76.642 .C38 2006. The book is reserved under the name Theresa Calcagno.

TOPICS:

The following topics will be covered:

  1. Threads, Seamphores, Monitors
  2. Message Passing
  3. Distributed Systems
  4. Client-Server Applications
  5. Middleware technologies
    1. TCP/IP Sockets
    2. RPC/RMI
    3. Web Services (SOAP, XML), J2EE

GRADING:

There will be several homework and programming assignments. In addition, there will be a project. The software required for these projects is available on the computers in the IT&E Lab and on osf1. You can also do some of the projects on your own computer. (The programming assignments involve programming in Java on a Windows/UNIX/Linux platform.) The homeworks, assignments, and class project may be done in groups of 2 or 3. Each member of a group is expected to contribute equally in order to get the same grade.

Tentatively: 55% of the course grade will be based on the homework and programming assignments. In addition, there will be a mid-term exam worth 25% of the grade. The project will account for the remaining 20% of the grade.


LATENESS:

The late submission policy is as follows: submissions will be marked down 10% per day.


HONOR CODE:

You are expected to abide by the University's honor code during the semester. Any violation of the honor code will result in an F for the class.


CLASS HOME PAGE:

CS475 has a home page (http://www.cs.gmu.edu/~rcarver/cs475/)

Calendars

GMU Academic Calendar    |    GMU Final Exam Schedule    |    Calendar of Religious Holidays

Back to the top.