6.171 Software Engineering for Web Applications

Fall 2003

Photo of Plaza de Bolivar in Bogota, Colombia.
A photo of Plaza de Bolivar in Bogota, Colombia found on http://mitupv.mit.edu/, a bilingual online community developed by 6.171 students Aimee Lee and Kathy Lee. (Image courtesy of Sandra Gaviria.)

Course Highlights

This course site features links to online textbooks for the course, as well as a detailed syllabus outlining the history and pedagogy of 6.171.

Course Description

6.171 is a course for students who already have some programming and software engineering experience. The goal is to give students some experience in dealing with those challenges that are unique to Internet applications, such as:
  • concurrency;
  • unpredictable load;
  • security risks;
  • opportunity for wide-area distributed computing;
  • creating a reliable and stateful user experience on top of unreliable connections and stateless protocols;
  • extreme requirements and absurd development schedules;
  • requirements that change mid-way through a project, sometimes because of experience gained from testing with users;
  • user demands for a multi-modal interface.

Technical Requirements

File decompression software, such as Winzip® or StuffIt®, is required to open the .tar files found on this course site. Any number of software tools can be used to import the .csv files found on this course site.

*Some translations represent previous versions of courses.

Donate Now


Dr. Philip Greenspun
Prof. Harold Abelson

Course Meeting Times

Two sessions / week
1.5 hours / session