10

Gerald Weinberger, in the 1971 book The Psychology of Computer Programming, gives the following anecdote:

The numerous stages [of reporting?] can produce interesting effects, as a result of filtering practices in a large project. An extreme example was found in a military project that involved not only programming but creating of a worldwide communication network. The programming project itself consistent of about 75 first-level people organized into twelve teams, with the twelve team leders reporting to one programming project manager. [...] Each month, by the requirements of the contract, a progress report had to be submitted to the government. Naturally, since this was an expensive project, the report had to be printed in an impressive full-color format. This meant the final copy for the report had t be in the hands of the printer twelve days before the report deadline—the tenth of the month following the month of the report. [...] Therefore [due to the multi-level reporting delays], what the individual team was reporting was not progress for the month but a prediction for the next month. What came out the other end, however, was labeled as progress reporting, and nobody seemed to worry about the differences. [...] The net result of six or seven stages of such filtering was a report that monthly presented a consistent forward progress, a few areas slightly behind or slightly ahead, a few problems solved from last month, a few new problems and a few problems still open. There was, in short, no measurable relationship between what had been reported at the bottom and what came out the top. Of course, what went in the bottom was only a prediction of progress anyway, so perhaps it didn't matter what was done to it on the way up.

Is that the ARPANET project, by any chance?

9
  • Or could it have been SAGE? Nov 24 at 1:49
  • @WalterMitty SAGE was limited to USA and Canada. Perhaps Space Track as that was world-wide and in the right time-frame. Just conjecture on my part though. Nov 24 at 3:58
  • Out of topic, but this anecdote sure reminds me of a certain little story. Maybe they should have tossed a coin instead:“face, the project is right on schedule; tails, the project is behind” Nov 24 at 6:10
  • There are any number of upward reporting processes that suffer from the same defects: time delays and successive revisions. The signal is almost entirely replaced by noise. Nov 24 at 11:14
  • 1
    Could be Strategic Automated Command And Control System 465L / SACCS or maybe Worldwide Military Command and Control System WWMCCS which was a bit of a boondoggle.
    – Brian
    Nov 24 at 23:12
10

Not really, as the IMP implementation was done by a single company (Bolt Beranek and Newman Inc.) at a single location in Cambridge, USA. The contract was awarded to them in April 1969.

8

Weinberg had worked as one of the engineers in the design and implementation of a ground tracking network during project Mercury in the us space effort. It's not too much of a stretch that he might have referred to this project without naming it in a book written years later.

Mercury computing

1
  • Yws, the MSFN (Wiki) sound like a great candidate
    – Raffzahn
    Nov 24 at 11:50
3

I am fairly sure that Weinberg is referring to the US World Wide Military Command and Control System that was developed during the 1960s. When studying project management at uni many years ago WWMCCS was considered a classic of how software projects run over time, and the best example of how the urge to adjust good or bad news within periodic reports leads to a completely misleading view when those reports eventually get to the top.

Can't be absolutely confident, since I no longer have the uni textbook, but when I read Psychology of Computer Programming some years later it seemed very familiar.

-1

I suggest that it could be either the GPS system, or a military application called NCP? I think all apps had built-in error correction at the time.

I once watched a man who was clearly a ninja of project estimation. I asked him how he did it. What was the main factors? He said, it's all about how many times you have done this type of thing before. Is this spec - is it an "experimental software project"? Or is it an off the shelf implementation of standard framework or off the shelf software that you have done 10 times already? With the later you simply keep records, and get better and better at estimating. But with the experimental projects - he would refuse to enter into it, as there was no way to be sure it would ever complete, and barely any point trying to estimate the arrival time. The only answer that makes sense is "its ready when its ready" and if you don't like it, to use the alternative.

NASA pipelines two copies of every stage to get into space safely with untested tech. It would mean having two teams competing against each other always: Team A could ask to show me your B teams progress and I will speed up A team. Even when team B wins, the next phase again uses two teams (starting from 1 place) because of the safety risks. Never fully giving up on the two tracks. Fault tolerant.

1
  • 1
    Only two copies? In my earthbound work it was at least 3 and sometimes 5. Each team using a different language and/or OS.
    – Chenmunka
    Nov 24 at 21:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.