To compute the predicted position of the enemy missile, the Patriot battery relied on highly accurate
time-keeping to focus the attention of its radar on a ???range gate.??? If the incoming missile were again detected
in the range gate at the predicted time, the Patriot battery concluded that the incoming missile was real, and
automatically launched its attack.
The problem discovered in the tragic Dhahran incident was that the time-keeping variable used in the
Patriot software lacked sufficient precision, and this resulted in truncation of the time measurement. That truncation
slowly accumulated a difference between actual and computed time. In Dhahran, the missile battery had been
in place for over 100 hours, and the time difference had accumulated to 0.34 seconds. Since the Scud was
moving fast, the Patriot battery miscalculated the predicted position of the Scud by about a half mile. As a result,
the battery did not detect the incoming missile in its range gate, and so concluded that no attack was in progress.
The battery sat silent as the Iraqi missile killed the US soldiers.
Such subtle problems in software illustrate the tremendous challenge, and the tremendous responsibility,
developers have to create and test their programs and systems.
Pages:
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490