Pull to refresh

Могу ли я увидеть код?

Reading time2 min
Views5.5K
Original author: Sathyaish Chakravarthy
Некоторое время назад Карен Сэндлер (исполнительный директор в GNOME Foundation) был поставлен диагноз Гипертрофическая кардиомиопатия, что, если не вдаваться в медицинские подробности, существенно увеличивает вероятность смерти от проблем с сердцем. Ей была рекомендована установка кардиостимулятора. Испытывая законное любопытство, Карен спросила, что за программное обеспечение работает в нём и может ли она взглянуть на его код, перед тем, как доверить ему свою жизнь. После множества пожиманий плечами, смущенных взглядов и переводов стрелок, кот, наконец-то, был вынут из мешка.

Оказалось, что все медицинские устройства (в США?) сертифицируются организацией FDA (Food and Drug Administration), которая никогда не проводит ревью исходного кода, пока с устройством не случится некоторая проблема, которая явно связана с ПО. Вместо этого, FDA полагается на отчет производителя, в котором, конечно же, может быть написано всё, что угодно. Кроме общих стандартов по форматированию текста, никаких особых требований к этому документу нет.

Объясняется всё это следующим образом: каждое медицинское устройство уникально, FDA просто не в состоянии выработать какие-то общие требования ко всем устройствам, не упустив что-то важное, а создавать такие правила для каждого отдельного аппарата — слишком долго и дорого. Также, FDA, конечно же, не знакомо с аппаратным устройством создаваемой техники на уровне её производителя, а значит именно он (и только он) может решать, как именно должен быть построен софт, какие тесты он должен пройти и когда быть признан годным к уставновке в реальные устройства.

Мы все знаем, что любое ПО содержит баги. Software Engineering Institute говорит о среднем числе в 1 баг на каждые 100 строк кода. Сколько строк в ПО кардиостимулятора? Исследования показывают, что 98% случаев сбоев таких устройств, случающихся по причинам багов в ПО, легко можно было бы избежать при должном уровне тестирования кода. Отсутствие необходимых тестов, code review и прочих механизмов обеспечения качества приводит к смертям людей и нет никакого (или почти никакого) законодательного механизма борьбы с этим.

Мысль Карен проста. Роль программного обеспечения в нашей жизни изменилась. С простых задач типа редактирования текста или игр, современный софт вырос до чего-то, что существенно влияет на все аспекты нашей жизни, вплоть до самого факта её у нас наличия. А значит, мы должны иметь свободу доступа к коду такого ПО, дабы вовремя не дать ему совершить непоправимое.
Tags:
Hubs:
Total votes 182: ↑175 and ↓7+168
Comments199

Articles