38 635
10 мая 2021 в 8:00
Автор: Ян Альшевский

«Это ПО — мешок с мусором». Как забагованная программа разорила десятки почтальонов и отправила их в тюрьму

В красивом будущем роботы и компьютеры заменят человека, который сможет заниматься своими делами и в ус не дуть. Так выглядят утопические варианты, но реальность часто вносит свои коррективы. Из-за них и возникает боязнь ошибки со стороны машинного интеллекта — так появляются фильмы с постапокалиптическими сценариями, в которых сломанный или заблуждающийся компьютер начинает планомерное уничтожение создавших его людей.

Обычно в таких случаях главным антагонистом выступает сошедший с ума искусственный интеллект — на такой легко спихнуть ответственность, ведь он действует как бы сам по себе. Опять же в реальной жизни многие беды происходят от ошибки человеческой. И признать сей факт очень трудно, ведь это удар по самолюбию. А если самолюбие самого высокого уровня — государственного, то ситуация усложняется еще больше.

Под конец прошлого века британская почтовая служба решила автоматизировать процессы, повысив эффективность работы и сделав жизнь почтальонов проще. Для исполнения задуманного была выбрана компания ICL, которая к тому времени уже находилась под крылом Fujitsu.

ICL была основана еще в 1968 году. Ее основной деятельностью являлась разработка мейнфреймов, существовало также софтверное подразделение. В какой-то мере компания стала одним из столпов новой государственной стратегии по созданию конкурента IBM и им подобных. В начале восьмидесятых одним из основных партнеров ICL стала Fujitsu, которая к концу века превратилась в единственного владельца акций британской компании, сохранявшей свой бренд до 2002 года.

Разрабатываемая платформа получила название Horizon. Это был весьма дорогостоящий проект, включавший в себя создание всей инфраструктуры от ПО до железа, а также обучение персонала. «Полевые испытания» начались в 1995-м, когда Horizon развернули в ограниченном количестве почтовых отделений. Следующие пять лет продукт дорабатывался.

В 1999 году, когда платформа была почти готова к массовому запуску, ее прозвали «крупнейшей невоенной IT-системой в Европе». К тому времени на разработку Horizon потратили около 700 млн фунтов стерлингов налогоплательщиков — это невероятная по всем меркам цифра. Позже она превысила миллиард.

Фото: britishironworkcentre.co.uk

К моменту ожидаемого запуска система, ответственная за переводы денег и любые другие операции в почтовых отделениях, не была полностью отлажена: якобы в сентябре 1999-го боссам Fujitsu и ICL докладывали о множестве багов. Информацию не посчитали существенной. Был запланирован повсеместный запуск, который и случился в 2000 году.

Проблемы начались сразу, без паузы. Вначале они были малозаметны и выражались в незначительных суммах недостач. Младшие почтовые служащие, столкнувшись с ними, пытались самостоятельно покрыть минус. Кому-то удавалось сделать это из зарплаты, кто-то продавал машину, другие закладывали собственную недвижимость. В некоторых случаях денег все равно не хватало.

Фото: BBC

Доказать что-либо было невозможно: руководство почтовой службы и разработчики системы были полностью уверены в непогрешимости Horizon. А «виновные» рядовые сотрудники таковыми считались из-за особенностей работы учетных записей: контроль за ними находился лишь в их руках. С точки зрения логики топ-менеджеров все очевидно: проблема в глупом почтальоне.

В период с 2000 по 2014 год в растратах были обвинены более 730 младших почтмейстеров, то есть раз в неделю появлялся как минимум один «вор».

С течением времени снежный ком недостач рос. Одну из сотрудниц почты, например, обязали выплатить 59 тыс. фунтов стерлингов, ее коллегу — 75 тыс., другому «повезло»: «попал» тысяч на шесть. Сроки за нарушения были разными: от нескольких месяцев до нескольких лет. Люди теряли работу, семью, здоровье, деньги и возможность устроиться на хорошую должность. Зафиксирован как минимум один случай суицида и несколько попыток. Жертвой стал почтальон, «задолжавший» 100 тыс. фунтов стерлингов.

Ли Каслтон стал банкротом в 2004-м. Тогда ему было 39 лет, он работал на почтовую службу и «задолжал» ей 27 тыс. фунтов стерлингов. Отдавать не захотел, на него подали в суд, признав виновным. Также суд постановил выплатить 321 тыс. фунтов издержек. Фото: Convenience Store

После 11 лет использования системы выяснилось, что доступ к учетным записям ответственных лиц имеют не только они: технические специалисты также могли вносить изменения в данные конкретных пользователей. В отчете по аудиту от Ernst & Young, в частности, сообщалось, что доступ «технарей», в том числе удаленный, был неограниченным. В 2015 году появилось дополнение: узнать о «вторжении» почтальоны не могли. В почтовой службе это отрицали и пытались судиться со СМИ за информацию об этом. Потом все же признали.

В некоторых случаях сотрудники почтовых офисов могли обнаружить пропажи, которые были связаны с программными ошибками. Упоминается ситуация, когда после очередного обновления ПО система дублировала записи о переводе средств. В других случаях система, наоборот, «забывала» внести данные, что также приводило к появлению на балансе минуса, за который отвечал сотрудник.

Фото: theweek.co.uk

Случалось и вовсе странное: сотрудница одного из отделений в 2006 году заметила взявшуюся из ниоткуда недостачу и сразу сообщила об инциденте в техподдержку. Ей рекомендовали алгоритм для исправления, после чего минус в 2 тыс. фунтов не исчез, а превратился в 4 тыс. От нее потребовали выплатить всю сумму. Профит? Миссис Хэмилтон попросила провести аудит. Что произошло дальше? Женщину обвинили в краже и растрате, хоть и не смогли документально подтвердить их, пригрозили тюрьмой.

Некоторые баги фиксировались до массового запуска платформы, однако в Fujitsu, которая получала новые «жирные» госконтракты, сообщения о них якобы игнорировали. Постепенно описаний ошибок становилось все больше, но никаких видимых действий не предпринималось. Речь шла об ошибках в передаче данных, «фантомных транзакциях», «несоответствиях в построении дерева данных» и так далее.

«Все знали, что Horizon представляет собой мешок с д******. ПО прошло через тестеров огромное количество раз, каждый раз собирая тысячи ошибок», — рассказал один из сеньоров, который работал над продуктом в 1998—2000 годах. По его словам, в команде не было специалистов с достаточной квалификацией для выбранной работы. «Может, у них были какие-то сертификаты, но их не хватало для столь крупного проекта. Они не знали, что и как делать», — заявил он на условиях анонимности в феврале 2021 года.

После неожиданного завершения работы терминала с Horizon. Фото: postofficetrial.com

Бывший сотрудник Fujitsu, также пожелавший остаться анонимным, в 2001 году работал в поддержке Horizon. По словам инженера, многие ошибки системы тогда исправляли на ходу по мере их появления, код дописывался и переписывался. «Мы понимали, что код не отвечает задачам, и переписывали его», — заявил он. Затем приходил другой сотрудник и писал свой код, после этого — третий и так далее.

Кроме того, сама система записи данных с клиентских машин также не имела общего вида, что приводило к непрекращающейся путанице данных в базе (которая, в свою очередь, не была предназначена для хранения той информации, которую в нее вносили). Каждый сотрудник писал отчеты по наитию, как ему вздумается, единого словаря и API для обработки не существовало. Добавляло масла в огонь и то, что это была асинхронная система. В этом случае могла нарушаться последовательность записи в общую базу: например, пользователь вводит данные локально, а затем они стираются записью, пришедшей из головного офиса (потому что так сложилось…).

По состоянию на 2013 год Horizon использовалась в 11 500 отделениях, ежедневно через платформу поводилось 6 млн транзакций. В головном офисе почтовой службы повторяли: система работает стабильно, без сбоев и ошибок. Одновременно сторонние эксперты объясняли часть проблем плохим интернетом и устаревшим оборудованием. С учетом объемов проводимых операций сбои называли «относительно редкими» и вызванными «неожиданным стечением обстоятельств». Параллельно сотрудников почты винили в недостаточном желании сообщать о проблемах: «Хелпдеск работал до десяти вечера, никто не мешал оставить сообщение».

Фото: Anthony/Pexels

Тем не менее именно в 2013-м наметились изменения. Если в 2012—2013 годах обвинений почтовых служащих в растратах и кражах насчитывалось 42, то в 2013—2014-м — всего два, а еще годом позже — ни одного. Нарастало давление прессы и общественности, начали появляться подробности.

В зависимости от подхода к подсчету речь, вероятно, может идти о десятках актуальных критических багов, то есть о «кривом коде», и 12 тыс. ошибок ежегодно — собственно, последствий работы «кривого кода». В суд также были предоставлены записи как минимум о 23 критических ошибках кода, датированных еще концом девяностых годов. До этого их не рассматривали как нечто опасное и требующее внимания.

Журналы с багрепортами рассматривались позже в судах как доказательства в пользу почтмейстеров. Предполагается, что задолго до этого информация была доступна руководству Fujitsu. Однако вместо проведения расследования топ-менеджеры (опять же якобы) предпочли стратегию виктимизации (или, точнее, в современной терминологии виктимблейминга) сотрудников почты. Также во время одного из заседаний была озвучена история некорректного учета, задокументированная еще в 1999 году. В нем баланс не сходился вначале на 1,3 тыс. фунтов, на следующую неделю — на 12 тыс., после нее — более чем на миллион фунтов. «Да, выглядит плохо», — признал инженер поддержки Horizon.

Особенно активно проблему начали раскручивать лишь в 2014 году — до этого попытки сотрудников почтовой службы доказать свою невиновность обычно заканчивались ничем. Даже если обвинения по каким-то причинам снимали, переполненная багами Horizon продолжала функционировать. Чтобы доказать свою правоту, им потребовалось еще много лет.

Фото: postofficetrial.com

Наконец, в 2019 году почтовая служба заключила соглашение на 58 млн фунтов стерлингов с 555 бывшими сотрудниками (после выплат судебных издержек и налогов им осталось 12 млн), для самой службы судебные издержки обошлись в 100 млн фунтов. Тогда же суд пришел к выводу, что на протяжении всего срока Horizon работала некорректно, что и привело к возникновению виртуальных задолженностей. На фоне этого последовали десятки других обращений о пересмотре ранее вынесенных приговоров. Всего в рассмотрении тогда находилось более 2400 жалоб. Вопрос, кто виноват, оставался открытым, хотя суд неоднократно указывал на осведомленность разработчика и почтовой службы в существовании огромной проблемы.

В апреле 2021 года еще 39 дел были закрыты, а все обвинения отозваны. Скоро настанет черед следующей «пачки» пересмотров. Скандал, вероятно, еще будет разгораться, так как почтовые служащие, отсидевшие годы в тюрьме и потратившие пару десятилетий на доказательство своей невиновности, теперь требуют крови.

Источники: Computer Weekly (1, 2, 3), BBC (1, 2, 3), Private Eye, Computerworld UK, Convenience Store, The Register, The Scotsman, Post Office Trial, New Statesman, International Policy Digest

Большие жесткие диски, быстрые SSD и портативные внешние дискипопулярные модели накопителей в Каталоге

3.5", SATA 3.0 (6Gbps), 7200 об/мин, буфер 256 МБ
M.2, PCI Express 3.0 x4 (NVMe 1.4), контроллер Samsung Pablo, микросхемы 3D TLC NAND, последовательный доступ: 3500/3000 MBps, случайный доступ: 500000/480000 IOps

Читайте также:

Наш канал в Telegram. Присоединяйтесь!

Есть о чем рассказать? Пишите в наш телеграм-бот. Это анонимно и быстро

Перепечатка текста и фотографий Onliner без разрешения редакции запрещена. nak@onliner.by

Без комментариев