Читать «Эффект плато. Как преодолеть застой и двигаться дальше» онлайн - страница 26
Боб Салливан
Процессу тестирования программ необходим шок, позволяющий предупредить парадокс пестицидов и пробиться сквозь создаваемое сбоями плато. Решение этой проблемы может состоять в использовании подхода, известного в наши дни под названием «фаззинг» и способного справиться почти с любым плато, вызванным акклиматизацией.
Фаззинг обращает внимание на все странное и необычное. Эта техника основана на точке зрения, с которой редко соглашаются инженеры: большинство систем слишком сложны для полного понимания, что приводит к возникновению странных вещей. Инженеры привыкли к жестким процессам и живут в мире математических допусков. Фаззинг допускает, что реальный мир значительно более неопределен.
Первый опыт общения Хью с фаззингом (хотя в то время он этого еще не понял) состоялся, когда он учился в школе на Багамах. Хью захотел выпить газировки. Тогда, в 1980-х годах, машины по продаже прохладительных напитков только-только начали появляться в школах в столице страны Нассау. Багамы – довольно небольшой рынок для поставщиков таких машин, а кроме того, ситуация осложнялась уникальным положением национальной валюты. Официальной денежной единицей на острове выступает багамский доллар, искусственно привязанный к доллару США в соотношении один к одному. Багамские и американские доллары полностью взаимозаменяемы. Если вы покупаете в магазине шоколадку, то можете получить сдачу наполовину в американских, а наполовину в багамских долларах.
Наконец новые машины добрались и до школы, в которой учился Хью, однако к ним были прикреплены рукописные объявления: «Только 25-центовые монеты США». Когда Хью вместе со своими страдавшими от жажды друзьями добрался до одной из этих машин, ни у кого не оказалось американских четвертаков, и ребята начали экспериментировать. Один бросил в прорезь металлическую шайбу в надежде, что это каким-то волшебным образом поможет получить газировку. Шайба тут же выскочила обратно. Тогда они засунули в прорезь американский 10-центовик. Ничего. Багамский 25-центовик. Безрезультатно. Кто-то вспомнил, что в таких ситуациях иногда помогает соленая вода. Из этого тоже ничего не вышло, не считая того, что машина оказалась полностью мокрой. В течение получаса ребята запихивали в машину все, что только могли найти в карманах (в их защиту стоит сказать, что они к тому моменту еще не достигли пубертатного возраста). Ничего не получалось до тех пор, пока кто-то не бросил в прорезь багамскую монету в 10 центов.
Эта монета ничуть не похожа на 25-центовую американскую монету. Она обрезана по краям, что делает ее немного похожей на серебряный цветок. К немалому удивлению Хью и его друзей, на дисплее высветилась цифра «25» – машина ошибочно приняла монету за американский четвертак. Они пошарили по карманам и нашли еще три монетки в 10 центов. На дисплее последовательно высветились цифры «0,50», «0,75» и, наконец, «1,00» (на острове довольно высокие цены). Они нажали кнопку «Выбрать», и –