The assignments in this section refer to Athena, which is MIT's UNIX-based computing environment. Important background material on problem set procedures and hints is provided below the table. Some of the supporting files are not available on MIT OpenCourseWare.

0 Introduction to 6.170 tools and infrastructure

This assignment will introduce you to the various tools that you will use in 6.170.
(PDF - 2.0MB) (ZIP) (The ZIP file contains: 20 .java files.)
1 Java and coding to specification

This assignment will provide practice reading and interpreting specifications, as well as reading and writing Java source code.
(PDF) (ZIP) (The ZIP file contains: 10 .java files.)
2 BasicList

Create a blackbox test from the specification of a module.
(PDF) (ZIP) (The ZIP file contains: 2 .java files.)
3 Object model extractor

Write a tool to extract object models from Java bytecode.

Hints (PDF)
(ZIP) (The ZIP file contains: 2 .java files.)
4 Design an Abstract Data Type

Design an ADT for a graph.
(PDF) (ZIP) (The ZIP file contains: 7 .java files.)
5 Stata Center navigation and analysis

Is your reusable ADT from problem set 4 really reusable? Try to use it to find directions in Stata and see.
(PDF) (ZIP) (The ZIP file contains: 1 .java file.)
6 Boggle

Create a GUI for the popular board game, Boggle.
(PDF) (ZIP) (The ZIP file contains: 20 .java files.)

Background Material

Problem set procedure (PDF)

Hints on succeeding on 6.170 problem sets (PDF)

The following two reference files, which should be used jointly with the problem set procedure, provide additional details on how to complete the problem sets for 6.170.

Emacs and command line reference (PDF)

Eclipse reference (PDF)