
Оказалось, что все медицинские устройства (в США?) сертифицируются организацией FDA (Food and Drug Administration), которая никогда не проводит ревью исходного кода, пока с устройством не случится некоторая проблема, которая явно связана с ПО. Вместо этого, FDA полагается на отчет производителя, в котором, конечно же, может быть написано всё, что угодно. Кроме общих стандартов по форматированию текста, никаких особых требований к этому документу нет.
Объясняется всё это следующим образом: каждое медицинское устройство уникально, FDA просто не в состоянии выработать какие-то общие требования ко всем устройствам, не упустив что-то важное, а создавать такие правила для каждого отдельного аппарата — слишком долго и дорого. Также, FDA, конечно же, не знакомо с аппаратным устройством создаваемой техники на уровне её производителя, а значит именно он (и только он) может решать, как именно должен быть построен софт, какие тесты он должен пройти и когда быть признан годным к уставновке в реальные устройства.
Мы все знаем, что любое ПО содержит баги. Software Engineering Institute говорит о среднем числе в 1 баг на каждые 100 строк кода. Сколько строк в ПО кардиостимулятора? Исследования показывают, что 98% случаев сбоев таких устройств, случающихся по причинам багов в ПО, легко можно было бы избежать при должном уровне тестирования кода. Отсутствие необходимых тестов, code review и прочих механизмов обеспечения качества приводит к смертям людей и нет никакого (или почти никакого) законодательного механизма борьбы с этим.
Мысль Карен проста. Роль программного обеспечения в нашей жизни изменилась. С простых задач типа редактирования текста или игр, современный софт вырос до чего-то, что существенно влияет на все аспекты нашей жизни, вплоть до самого факта её у нас наличия. А значит, мы должны иметь свободу доступа к коду такого ПО, дабы вовремя не дать ему совершить непоправимое.