Майский марафон. #15: Medical Software
#биомедлестница
Сегодня весь день провёл на семинаре от VDE (Союз электротехники, электроники, информационных технологий), посвящённый разработку программного обеспечения для медицины.
Поидее стоимость билета составляла около 280 евро, но можно было как студенту записаться бесплатно, правда, с условием обязательного посещения - в противном случае, VDE обещал выставить счёт на те же 280 евро. И надо сказать, для такой стоимости конференции, я поразительно мало нового узнал. Забавно, что язык конференции официально английский, при этом все слайды презентаций на английском, приглашения тоже, ну а говорили все спикеры, кроме одного американца, который участвовал удалённо, по-немецки. Забавно, если кто-то пришёл по приглашению на английском, не понимая немецкого.
Основными темами были:
Риски разработки софта для медицины и алгоритм работы с ситуациями, когда риск слишком высок.
Польза должна быть выше рисков. Если не выходит, можно попробовать поменять сценарий использования или ввести ограничения использования продукта (например, не использовать на детях).
Контроль качества с точки зрения норм (ISO) и правильная мотивация разработчиков.
Autonomy - mastery - purpose (TED Talk на тему). Разработчикам нужно в первую очередь давать свободу делать то, что они хотят (автономия), возможность совершенствоваться (мастерство) и иметь цель, большую чем они сами (предназначение). Материальные рычаги типа принципа кнута и пряника работают только для физического труда и рутинных задач, не требующих каких-либо когнитивных усилий.
Качество нужно контроллировать не потому что надо, а потому что в этом есть смысл (экономия на возвратах товара, репутация производителя, меньше исков и т.п.).
Разработка софта в стиле Agile (Scrum)
Это когда не сразу ставится задача сделать конечный продукт, а итеративно создаются и улучшаются прототипы - и способы совмещения этой философии с нормами к документации (которые Agile не ставит во главу угла).
Документировать придётся, и много, и подробно. В этом с Agile абсолютно точно есть расхождение (несмотря на то, что оратор пытался доказать, что всё мол можно разрабатывать по аджайлу).
Сам процесс итеративного улучшения продукта описан в ISO нормах, в целом описывается как цикл: Plan - Do - Check - Act. Т.е. планируй, делай, проверяй, реагируй.
Прецеденты регистрации софта с элементами машинного обучения в качестве медицинского продукта и сравнение этих процедур в Америке и Европе.
FDA (Food & Drug Administration, администрация продуктов питания и лекарственных средств, главный регулятор медицинских продуктов в США) водит производителей за руку, показывая, как нужно делать, чтобы пройти проверки, давая всю необходимую помощь, причем информация предоставляется на сайтах бесплатно.
Европейские регуляторы дают очень ограниченную информацию, не помогают в процессе разработки, нормы в текстовой форме платны. Т.е. разработчик должен купить нормы, сам их понять (есть ещё так называемые "гармонизированные нормы" - переведённые с правового на человеческий язык, тоже стоят денег), разработать всё как надо и пройти все проверки, клинические испытания и т.п.
Регистрация в Америке проходит по принципу похожести (производитель ищет похожие на рынке продукты и относит свой к такому же классу опасности; инновационные продукты по-умолчанию проходят проверку по третьему (из четырех, где четвертый - самый серьезный) классу опасности, пока не будет результатов проверки, которые могут как повысить, так и понизить этот класс.
Регистрация в Европе проходит по принципу соответствия критериям. Каждый продукт должен быть проассоциирован со всеми критериями, и на основании подходящих делается вывод о классе опасности.
Кибербезопасность
Safety (сохранность) - имеет дело с вредом, т.е. с неумышленным (как правило) повреждением здоровья, окружающей среды или собственности. Снижать нужно вероятность наступления такой ситуации.
Security (безопасность) - имеет дело с умышленными атаками. Снижать нужно шанс успешной атаки.
C-I-A (мнемоническая запоминалка - буквы совпадают с аббревиатурой ЦРУ) - confidentiality, integrity, availability (конфеденциальность, целостность, доступность).
Риск взлома медицинского софта будет расти, потому что данные очень ценные из-за своей полноты.
Можно ждать громких политизированных прецедентов взлома больничных систем.
Про кибербезопасность говорил эксперт из Symantec Corp., по связи отвратительного качества, удалённо, без видео. Но у него было пара очень характерных для 21 века слайда.
Речь идёт о росте расходов на медицинское обслуживание и, как сравнение, роста административных сотрудников в соотношении с врачами. Слайды всех насмешили, хотя я практически уверен, что в зале тоже сидели не врачи и не сами разработчики, а как раз администрация, менеджеры высшего звена, руководители, регуляторы и прочие.
EVOpit.log
Хроника продвижения по карьерной лестнице инженера биомедицинской техники.
Бонусом: концентрат трансгуманизма, гаджетов и биохакинга.