Лучшие ошибки софта VII

Довольно смешная (не смешная для авторов, конечно) ошибка произошла несколько лет назад. Игра Aliens: Colonial Marines вышла в феврале 2013 года и быстро получила шквал критики. Ну очень сырой продукт выпустили. Нещадно бажило всё, от графики до AI. И вот спустя четыре с хвостиком года обнаружился символ, исправление которого привело к наизаметнейшему улучшению поведения монстров. Достаточно было заменить ошибочное «Teather» на верное «Tether». Тестирование? Не, не слышал.

Автомобильная индустрия вовсю напичкивает машины сложным софтом, потому очередная проблема не удивляет. Но масштаб последствий интересный. Итак, Fiat Chrysler Automobiles NV отзывает около 4.8M автомобилей в США по причине баги в круиз-контроле. Вернее, с ним-то всё хорошо. Просто при схождении звёзд в 15 моделях этот контроль потом не выключить, да ещё и замыкание происходит. В общем, веселье, если ты не за рулём.

Затрудняюсь оценить ущерб, но ошибка классическая, хоть в учебники. В 1978 году с помощью NASA начали исследовать озоновые дыры над Антарктикой. Датчики собирают данные, софт анализирует, дыры находятся. Уря-уря. Пока в 1985 году совсем другие ребята не обнаружили, что огромная дырень прошла мимо программы исследований просто потому, что в код влепили ограничение на верхние границы. Мол, если значение такое-то, то оно шибко толсто, так не бывает, явно ошибка датчиков. Оказалось, бывает и не такое.

На дне у Ларнаки с 1980 года лежит большой и красивый кораблик MS Zenobia. А лежит он там потому, что в софте, управляющем закачкой балластной воды, выстрелила бага, закачавшая слишком много воды слишком не вовремя. Жертв нет. Как и Зенобии. Зато дайверам раздолье, внесено в карты годных мест.

Долго колебался, добавлять эту историю или нет. Решил добавить, т.к. можно считать примером того, с какой стороны в софт может прилететь проблема и как легко всё испортить, не учитывая все векторы «атаки». На юге Финляндии 12 апреля 1997 года поезда не ходили целый час. Всё потому, что на клавиатуру упала скрепка. Упала под пробел и, как понимаю, накрыла контакты. Дальше я не понял причины (машина запрашивала логин три дня и переполнила винт?), но в итоге сигналы на железке были переведены автоматикой в «стоп». Ну всё и остановилось. В общем, учитывайте и такие случаи, да.

Лучшие ошибки софта VII: Один комментарий

  1. Финляндия: скорее всего, была подана несовместимая с какими-то условиями команда, и система безопасности на всякий случай всё остановила. Разумное решение для автоматики.

Добавить комментарий