6.033 ASSIGNMENT 12:
May 2 through May 15 (last day of classes)

For Lecture, Monday, May 5

A slight change of plans: we have swapped today's and Wednesday's lecture. Today's lecture is on the topic of complexity. Coming Wednesday's lecture will be the last lecture on fault-tolerant systems.

Now that we have completed studying many different systems, we will take a step back and look again at complexity in this lecture. Jerry Saltzer will lecture. In preparation, read Brooks, The Mythical Man-Month, Chapters 1, 2, 4, and 5.

How to read The Mythical Man-Month, by Frederick P. Brooks, Jr. This book is 22 years old. The reason we read it is that much of the wisdom it captures is timeless--a unique perspective and advice on building complex systems. Many system designers keep this book on a front bookshelf and say that they re-read it every year or two. You will probably want to do the same.

On the other hand, some of its chapters haven't aged as well as others, and some of its chapters are focused more on software engineering than on system design. Fortunately, the chapters are largely independent essays, so one can selectively read the ones that are relevant and current. For purposes of 6.033, the chapters worth reading are 1, 2, 4, 5, 11, 13, 14, and 19. For 6.170, the most relevant parts are the same ones as for 6.033, plus chapters 8, 12, 15, 16, and 17. (Note: chapters 16-19 are actually recent addenda; they appear only in the 1995 edition of the book.)

This term's assigned reading covers most, but not all, of the 6.033-relevant chapters. when you get time it is definitely worthwhile to go back and read the others, and also the 6.170-relevant chapters.

Note that the Brooks book is the reading material both for today's lecture and also, in part, for Thursday's recitation (5/8).

For Recitation, Tuesday, May 6

The topic is design project 2. Last Thursday you handed in two copies of your design paper. Your reading assignment for today is to review one of your fellow-student's papers; the paper was be assigned to you by your recitation instructor in the recitation section on May 1 (see How to hand in design project 2).

Your team's one-page reading report should address the following question regarding the design paper assigned to your team:

Describe one strength of the design and give one suggestion on how to improve the design.

The section will devoted to reviewing different designs. Peer review is a commonly practiced method of reviewing designs, papers, etc. The goal of peer review is to be constructive, not destructive. Comments along the lines ``this design is trash'' are out of order, but comments along the lines ``this design is weak because it doesn't handle Z, but by incorporating X it would be more bullet proof'' or ``This design is excellent, because it meets all of the stated goals and manages to add two others, Y and Z.''

For Lecture, Wednesday, May 7

The last lecture on transactions. Read Chapter 19 of the Mythical an-Month, if you have the 1995 edition of the book. In anticipation of quiz 3, one week hence, expect to pick up a handout with example questions at this lecture.

For Recitation, Thursday, May 8

In preparation, read "When professional standards are lax: the CONFIRM failure and its lessons" by Oz, reading #38. Skim the paper, a detailed read is not necessary. Also read Chapter 14 of the Mythical Man-month (plus any of chapters 2, 4, 5, and 11 that you didn't get to on Monday.)

For Special Lecture, Friday, May 9

Bob Metcalfe will give an invited lecture on writing. As an interesting side note, we read his classic Ethernet paper on March 4. Ethernet is the local-area network that hooks up most computers in the world, including your PC in your dorm. Bob is also the founder of 3COM. His lectures are very insightful and entertaining--don't forget to go! He will discuss the importance of writing in your future carreers.

For Lecture, Monday, May 12

The last lecture! In preparation, read "Before the Altair: the history of personal computing" by Press, reading #40 (the last reading!). We will provide a handout with the solutions to the example questions.

For Recitation, Tuesday, May 13

In preparation, reread "Hints for computer system design" by B. Lampson, reading #8.

For Quiz 3, Wednesday, May 14

The quiz time is 2-3pm, and there are 3 rooms this time!

Students with last names beginning with A through H should go to 34-101.

Students with last names beginning with I through R should go to 4-370.

Students with last names beginning with S through Z should go to 2-190.

The quiz is open book and note and covers all material from Lecture 17 through Recitation 24 (i.e., storage systems, fault-tolerance computing, transactions, and more complexity). Of course that material builds in various ways on things studied earlier so you shouldn't be surprised to find integrating questions.

For Recitation, Thursday, May 15

We will attempt to hand back Quiz 3 with solutions in recitation. If we can't get the solutions done in time, a notice will be posted on the 6.033 home page when they are available. We will use part of this recitation to get feedback from you on how 6.033 can be improved, so bring your ideas.


System aphorism of the week
Il semble que la perfection sont atteinte non quand il n'y a plus rien à ajouter, mais quand il n'y a plus rien à retrancher.
(It seems that perfection is attained not when there is nothing more to add, but when there is nothing more to take away.)
(Antoine de Saint-Exupery, Terre des Hommes (Wind, Sand and Stars), 1939, Chapter 3 "The Tool")

6.033 Handout 38, issued 4/29/96