Он закончил читать и вопросительно взглянул на меня.
— Резкие колебания звука и изображения, которые вызывают галлюцинации, расстройство нервной системы и даже смерть, — пояснил я. — Программа зависла, вот все звуки с изображениями и смешались воедино. Психика моего напарника этого не выдержала.
— И при каких обстоятельствах такое может произойти?
— Обычно случается при зависании программы или сбое, произошедшем в графическом движке. Еще каких-нибудь десять лет назад такое частенько случалось. Гибли люди.
— Но сейчас технологический уровень позволяет практически исключить подобные случаи. За последние полтора года в мире зарегистрированы всего две смерти тестеров. Если считать вчерашнюю гибель мистера Акимова, то три…
— Наша работа всегда была сопряжена с риском, — я пожал плечами. — Необязательно это риск летального исхода. У тестеров порой происходит потеря рассудка тоже, но такие случаи обычно не добираются до следственного управления. Вопросы компенсации семье тестера решаются в руководящих кругах фирмы-заказчика и тестовой организации.
— И много таких случаев на вашей памяти?
— Мне известен лишь один случай. Женщина-тестер по имени Ольга Субботина, работавшая в паре со старшим тестером Европейского отделения, проверяла программу для военных. Она сошла с ума прямо в трансляционном кресле. Просто в один момент сорвала с себя шлем с датчиками, принялась плакать, и… и все…
— Понятно, — кивнул следователь. — А программу, убившую вашего напарника, до вас тестировали?
— Убивает не программа. А человек, ее создавший или допустивший ошибку. Убивает умник, который вовремя не проверил систему охлаждения установки. Программный код — это лишь инструмент, посредством которого безалаберность одних приводит к смерти других.
Шолленг хмыкнул:
— Мне ясна ваша позиция, мистер Игнатов. Но я бы попросил отвечать на поставленный вопрос, а не философствовать. Пустопорожние разглагольствования не помогут нам выяснить, кто является виновником гибели вашего напарника.
— Так ведь я о том и толкую. Невозможно найти человека, который виновен. Напарник погиб из-за случайности, но прежде была совершена ошибка. Кем совершена, мы не узнаем никогда.
— Не будьте так пессимистично настроены, мистер Игнатов. Отвечайте на поставленный вопрос. Кто-нибудь тестировал программу до вас?
— Да, разумеется, — я провел пятерней по волосам. — Было две группы, но с участниками тех тестовых команд все в порядке. После трагедии я звонил в компании…
— Раньше программу тестировали не ваши люди? Не из одной с вами компании?
— Нет, что вы… Тогда нашей компании еще не существовало. Это ведь было три с лишним года назад. Тогда на рынке тестинга работали всего две фирмы — «Скаут» и «Технотест». Те группы, кто тестировал программу, были из «Скаута». Мне они сообщили, что единственной проблемой были вирусы.
— Вирусы? — Следователь насторожился. — Вот об этом поподробнее. Что за вирусы?
— Обычные компьютерные вирусы. Их в программный код продуктов частенько вносят конкуренты, чтобы запороть финальный продукт. Есть вирусы, которые блокируют выход из программы. Есть такие, которые размножаются и портят программный код. Некоторые распространяют рекламу. Например, если вы пользуетесь программой трехмерной карты Парижа, то на Эйфелевой башне может висеть баннер порносайта… ну и так далее. Это обычное дело. У тестеров есть специальное оборудование для выявления вирусов. Они подключают его к стенду и чистят программу от вредоносного кода.
— А в той программе, которую тестировали вы, вирусов было много?
— Когда работали наши предшественники — порядком. Как мне ребята из «Скаута» рассказали, кто-то очень не хотел, чтобы программа вышла на рынок мультимедиа-продуктов.
— Так не хотел, что пошел на убийство тестера?
— Да бросьте вы! — Я усмехнулся. — Кто мог хотеть смерти тестера? Да и не станет никто изощряться ради того, чтобы за программой пошла дурная слава. Хотя идея, надо признать, довольно оригинальная. К примеру, погиб тестер, и программу закрыли. Следовательно, правительство больше не будет иметь дел с фирмой, распространяющей опасный для жизни товар. А если речь идет о программах для школы, то фирму вообще могут прикрыть. И госзаказ не поможет…
— Вот-вот, — следователь в задумчивости барабанил пальцами по лакированной столешнице. — А вирусы могут спровоцировать зависание программы?
— Могут, но мы перед тестированием все проверили и вирусов не обнаружили. Я понимаю, к чему вы клоните. Думаете, кто-то загнал в программу вирус, чтобы потом убить тестеров. Огорчу вас, это маловероятно.
— Но ведь возможно!
— Да… — я замялся, — но гения, способного написать вирус, обходящий наши сканеры, я пока не встречал. Теоретически можно полностью перекроить программу, но еще ни у кого не получалось реализовать это на практике.
— Значит, глухо… — Шолленг покосился на матово поблескивающий дисплей планшета, с помощью которого до сих пор велась запись разговора, и тяжело вздохнул. — А кто-нибудь мог «точить зуб» на вас с напарником и умышленно устроить все это?
— Исключено, — я отрицательно мотнул головой. — Двойки тестеров на тестирование программы утверждаются за сутки до непосредственного начала работы, чтобы свести к минимуму вероятность подкупа их представителями разработчика программы. Даже если бы нас и ненавидели так, чтобы подстроить несчастный случай, вероятность, что именно я или Акимов окажемся в тестовой группе, была слишком мала.
— Понятно… — Шолленг еще быстрее, чем прежде, застучал пальцами по столешнице. — А что, по-вашему, вообще могло привести к зависанию программы?
— Например, дополнительные функции, которые накручивали разработчики. Чтобы оставаться конкурентоспособными, создатели программ как только не изощряются. Эти, например, добавили кучу разных функций вроде встроенного компаса и прочего хлама. Будто жители Объединенной Евразии будут учиться с помощью компаса определять расстояние и направление, север и юг… Да при нынешнем уровне развития систем GLONASS и GPS это и не нужно вовсе… Вот…
Я замолчал, переводя дух.
— И каким образом все эти мелочи могли повлиять на программу?
— Представьте дерево, — вновь начал я, — оно крепкое и целостное. Но если к нему пытаться привить ветвь другого растения, может получиться все что угодно. Например, ветвь не приживется и погубит дерево. Это случается нечасто, но, тем не менее, случается. Так и с программами. Если в итоговый код добавляют нечто совершенно новое, может произойти что угодно. Лет сорок назад, когда все программы были ориентированы на стандартные персональные компьютеры, все было проще, но теперь…
— Понятно. Значит, случилось то, чего заказчики больше всего боялись. Мало того, погиб человек. Теперь правительство может отказаться от дальнейшей работы с фирмой… — Следователь словно что-то вспомнил — вскинул голову: — А какие фирмы с ними конкурируют?
Я пожал плечами:
— Я думаю, таких наберется не меньше дюжины. Сейчас подобные программы разрабатывают все кому не лень…
Шолленг помрачнел. Он несколько секунд барабанил пальцами по столешнице, затем с тяжелым вздохом поднялся с кресла и прошелся по кабинету.
— Мистер Игнатов, я прошу вас не злиться и не обижаться на меня. Допросы свидетелей — моя работа, не более того. Дома меня ждут жена и маленькая дочурка, и я бы не хотел, чтобы вы, покинув эту комнату, считали меня бездушным дознавателем… Понимаете ли, я обязан проверить все версии…
Следователь замер посреди кабинета и виновато посмотрел на меня.
— Спрашивайте, чего уж там… У меня своя работа, у вас — своя. Наверное, работенка похлеще, чем у тестеров.
— Да уж, — Шолленг слабо улыбнулся. — Мистер Игнатов, скажите… вы с мистером Акимовым хорошо ладили? Не случалось ли у вас с ним конфликтов?
Я растерянно поглядел на собеседника. В холодных, серых глазах следователя блеснул нехороший огонек.
«Он что-то знает, — предательски зашептал внутренний голос. — Может даже, навел справки про Кетти, разузнал, что эта мерзавка спала с Акимовым».