There will be a programming assignment, a multi-part programming project, about four written homework assignments, a midterm exam, and a final exam.

The programming assignment and homeworks are to be done individually. The programming project will be done in groups of two students.

The project is done in groups for two reasons. The first is the size of the class. The second and more important reason is that this is an opportunity to experience the joys and frustrations of working with others. It's a skill you only get better at with practice...

Since 15-441 fulfills the project-class requirement of the CS degree, you will be expected to learn and practice good software engineering, as well as demonstrate mastery of the networking concepts. Both partners in a project group will need to fully understand the project and your solution in order to do well on those exam questions relating to the projects. For example, a typical question might be: ``When you implemented X, you came across a particular situation Y that required some care. Explain why this simple solution Z doesn't work and describe how you solved it.'' We'll pick questions such that it will take some effort to figure out Y. If you didn't take the time to work the problem yourself and just relied on your partner, you won't have enough time during the test to figure it out. Be careful\,---\, the insights you'll need will come only from actually solving the problem as opposed to just seeing the solution.



Topic Assigned Due Other Info Solutions
Project 1 09/04/01  09/25/01 5pm EST  Read the project link for the latest information  Sample Solutions
Homework 1 09/11/01  09/18/01 (In class)     
Homework 2 09/27/01  10/09/01 (In class)     
Project 2 10/02/2001 10/25/2001 5pm EST    
Project 3 11/1/2001 12/4/2001 5pm EST    
Homework 3 11/02/2001 11/15/2001 (In class)   HW3 Solutions;
Homework 4 11/27/2001 12/11/2001 (In class)