构建安全且可用的医疗设备软件:与Neeraj Mainkar的对话Building Safe and Usable Medical Device Software: A Conversation with Neeraj Mainkar

环球医讯 / AI与医疗健康来源:www.infoq.com美国 - 英语2025-01-03 17:00:00 - 阅读时长13分钟 - 6311字
本文介绍了医疗设备软件开发中如何应对安全性和可用性的挑战,通过严格的流程、以用户为中心的设计和利用新兴技术来确保软件的质量和可靠性,特别提到了AI在其中的作用。
医疗设备软件开发安全性可用性FDA设计控制质量文化用户测试AI自动化测试持续改进上市后监督数据可视化认知负荷工程师技能培训法规遵从性能可维护性反馈循环多样性用户群体集成挑战信息架构
构建安全且可用的医疗设备软件:与Neeraj Mainkar的对话

在本期播客中,InfoQ文化与方法主编Shane Hastie与Neeraj Mainkar探讨了在医疗设备软件开发中面临的挑战,特别是在软件错误可能带来生死攸关后果的情况下,如何通过严格的过程、以用户为中心的设计和利用新兴技术来应对这些挑战。

关键要点

  • 确保医疗设备软件的技术质量和安全性至关重要,这需要有记录的、可重复的过程和广泛的测试。
  • 构建质量文化和责任感至关重要,包括严格的培训、招聘最优秀的人才,并灌输安全第一的理念。
  • 可用性是一个关键设计目标,需要与最终用户密切合作,并在性能和可维护性等因素之间取得平衡。
  • 发布后的更新和增强是一个持续的挑战,需要有一个反馈循环和一个纪律严明的持续改进方法。
  • AI正在通过自动化测试、模拟和数据分析等方式提高安全性和可用性。

访谈内容

确保技术质量

Shane Hastie:在这个领域,软件错误可能会致命,您如何确保产品的技术质量?让我们先从这一点开始。

Neeraj Mainkar:确实,这属于如何确保软件绝对安全的问题。FDA指南和法规中的设计控制部分就涵盖了这一点。这些法规旨在确保像我们这样的医疗设备公司遵循非常严格的产品和软件开发实践,以确保最终生产出来的设备是安全有效的。这意味着要遵循有记录的过程。“如果你不记录它,它就没有发生”是医疗设备行业的一句名言。你需要记录一切,确保过程是可重复的,以便能够追溯到问题发生的地方。你需要应用所有工具,确保尽可能广泛和详细地测试你的设备,覆盖尽可能多的工作流程。为了确保设备的安全性,你需要有一个定义良好的可重复过程,记录你所做的每一步,并使用所有工具确保开发的软件尽可能避免出现错误。重点在于验证和确认,确保你验证了设备的要求。在我们的世界里,验证非常重要,具有特殊的含义,即你必须确保一组用户告诉你,你建造的设备确实实现了其预期目的。这些都是我们确保软件不含任何可能导致致命错误的方法。

培养质量文化

Shane Hastie:这与当今行业中“快速行动,打破常规”的理念背道而驰。你如何在团队和你共事的人中培养这种质量文化?

Neeraj Mainkar:这是一个很好的问题。我们总是告诉人们,医疗设备软件领域是非常独特的。你必须感受到这份责任,意识到创建绝对安全关键的东西的重要性。因此,培训成为新工程师在医疗设备公司生活中的重要组成部分。他们一进来,你必须首先确保他们接受了所有法规的培训,了解对他们有哪些期望,包括文档、细节关注、单元测试、集成测试和整体测试。你不能进行足够的测试。我们总是使用这样一个格言:你必须确保你在开发代码时使用最佳实践,确保不让任何错误潜入。其次,确保你雇佣的人显然擅长他们的工作。正如你可以想象的那样,这尤其适用于像医疗设备这样的人,因为你绝对希望确保在系统上工作的人员是最优秀的。因此,招聘过程可能相当漫长和艰难。我们希望确保我们有合适的人选,当合适的人进来时,我们会对他们进行培训。然后定期提醒每个人我们为什么这样做。我经常给人们举一个非正式的例子,称为“妈妈测试”,即你必须自信地认为你正在开发的设备有一天可能会用于某个人身上。你愿意让这个设备用于你所爱的人吗?如果答案是否定的,那么你知道你需要继续努力,确保设备是安全的,不太可能被误用,也不太可能出现任何错误。这些都是确保人们理解开发医疗设备的重要性的关键要素。

医疗设备软件工程师所需的技能和态度

Shane Hastie:那么,注重技能,让人们清楚地理解,进行培训。如果你要描述你的工程师,他们会是什么样的人?

Neeraj Mainkar:他们来自各种不同的背景。你不会在每个职位上都只雇佣有10到15年经验的人。你会尝试选择多样化的人群。你希望在关键位置上有经验的人,这些人之前做过医疗设备,见过行业的挑战,能预见该做什么和不该做什么。他们还可以作为优秀的导师,因为我个人无法培训我们雇佣的每一个人。通常我会在关键位置上雇佣有医疗设备经验的首席架构师、测试经理和发展经理。当我们雇佣实际开发软件的工程师和测试软件的测试员时,我们会尝试涵盖各种类型的人员。显然,他们都必须通过一定的技术水平测试,所以我们总是会给人一些小项目做,确保他们可以为我们解决试用问题,然后说服我们他们确实擅长自己的工作。另一个方面是态度。你对软件开发的态度是什么?软件工程作为一个领域相对年轻,确实存在一个问题,即很多人可以从事软件开发。如果你足够聪明,你可以学习软件开发。不像机械工程师,你必须有机械工程学位才能被雇佣。在软件中,你会发现情况并非总是如此。人们通过许多不同的领域进入软件,许多人是自学的。所以你需要询问他们,他们的方法是否系统化和“工程化”。你是随心所欲还是牛仔程序员,急于开始构建东西并编写代码?还是你有条理?这也是我们试图在员工和工程师中培养的东西:医疗设备软件不同于游戏软件。你不能只是开始构建东西。你需要遵循一个过程。你需要确保你的架构已经定义好并在编码前经过审查。这种真正严谨的工程方法是我们面试时考察的态度之一。当然,还有一个共同点是如何与他人良好合作。软件工程有时被认为程序员倾向于独行侠,只想自己工作。事实远非如此,尤其是在医疗设备领域。因为你要跨职能工作,不仅与其他软件工程师和测试人员,还要与质量、法规、硬件和系统人员一起工作。你需要一起工作。理解你正在构建的医疗设备软件是更大系统的一部分,理解你的角色及其与系统工程的关系非常重要。有些东西你无法通过面试得知,但你可以通过询问人们的先前经验来了解。

可用性在医疗设备软件中的意义

Shane Hastie:这是安全方面的等式。你说过有安全和可用性,两者之间存在紧张关系。

Neeraj Mainkar:绝对是这样。

Shane Hastie:在医疗设备软件领域,可用性意味着什么?

Neeraj Mainkar:简单来说,就是它有多直观。我们经常使用“直观”这个词。事实上,我们领域中最著名的公司之一是Intuitive Surgical,大家都知道的达芬奇机器人制造商。所以直观性非常重要。它应该尽可能自然,尤其是当你考虑一个工作流程时,从点击一个按钮到下一步需要做的操作应该尽可能自然,需要尽可能少的培训。这是我所说的可用性的基本定义。更技术性的定义可能是,认知负荷有多大。现在如何衡量认知负荷?这可以通过进行可用性测试来完成,我们可以详细讨论这一点,但当你进行可用性测试时,你会进行所谓的形成性测试。理想情况下,你会确保用户在一个单独的房间里,尽可能少地得到任何人的帮助来使用你的设备。然后看看他们通过阅读用户手册或直接玩软件来掌握下一步需要多快,以及他们感到使用设备舒适的速度有多快。虽然可能没有客观的衡量标准,但你可以判断一个人的反应速度。实际上,有一些客观的衡量标准,例如在这些形成性研究中,你可以发现用户犯了多少错误?他们能否在尽可能少的指导下学会如何使用这个设备?这些是我们定义可用性的方法。

设计低认知负荷和直观可用性

Shane Hastie:设计低认知负荷和高可用性或直观可用性,你们是如何做到的?

Neeraj Mainkar:这是我最近在一篇文章中讨论的部分。我们希望使设计以用户为中心,你必须默认涉及用户。如果我要制造一个外科医生使用的导航设备,我必须绝对让外科医生参与设备的设计。这意味着他们不能在最后才想到,他们必须从第一天起就参与。一旦你准备好开始设计前端,你就必须让他们参与,制作很多原型并获得反馈。我们必须建立这个持续的反馈循环,即使在Proprio,我们也一直在这样做。我们定期邀请外科医生来玩我们的设备,使用它,然后给我们诚实的反馈,关于他们认为设备的可用性如何。显然,这里有一些工程挑战,正如任何从事这项工作的人所知道的,即使可用性也是一个多方面的问题。如果你试图让一个方面变得太突出,而不确保其他方面也相应改进,你可能会牺牲很多其他同样重要的功能,只是为了可用性。虽然可用性显然是中心,但我们还需要确保其他方面也被照顾到,例如用户可能不会考虑但使用时会意识到的性能问题。如果为了使东西更易用,我们让工作变得太长或太慢,用户肯定会抱怨:“是的,它很容易理解,但为什么性能这么差?”另一个方面是可维护性。如果为了可用性,我们将用户界面变得过于复杂和分散,维护它也可能成为一个挑战。因此,你必须在这些不同因素之间找到正确的平衡。显然,最终用户体验和可用性是最重要的,但这些其他因素也很重要,这就是设计中的权衡。再次强调,保持外科医生的参与,保持用户的参与,让他们测试你的设备,使用你的设备,在开发过程中给你持续的反馈,确保你最终生产的设备是外科医生想要的并且可以使用的。

升级和增强已上市产品

Shane Hastie:鉴于你所描述的情况,既涉及到安全方面,又涉及到可用性方面,我们日常处理的软件,那些不在医疗设备空间的人,可以在某些情况下每天甚至更频繁地更新和改进。在这种环境中,你们如何处理已经在市场上的产品的升级和增强?

Neeraj Mainkar:这是一个非常好的问题,幸运的是,近年来监管机构如FDA已经开始认识到软件的可塑性,并知道软件可以随着时间的推移而改进。FDA对此有一个专门的名称,叫做上市后监督。上市后监督是FDA对像我们这样的医疗设备制造商非常严肃的责任,表示“好吧,你的工作并不是在完成设备并将其推向市场后就结束了。不,你们有巨大的责任继续进行上市后监督,监控你们的设备如何被使用,保持一个定义明确的问题目录和漏洞。”但也要从用户那里获得一些反馈,说:“嘿,你希望这个设备如何改进?这个设备未能解决哪些痛点?这个设备为你解决了哪些痛点,但显然可能创造了一些新的痛点。我们应该如何不断改进您的用户体验?”好消息是在软件中这完全是可能的,你可以不断重构设计。在某些情况下,说起来容易做起来难,但毫无疑问,你可以在现实生活中不断改进设计,并推出改进。可能不像一些非医疗和非安全关键软件那样快,有时甚至每天都可以更新。我们当然不会那样频繁地更新,但在三到六个月的频率内,没有任何理由说明像我们这样的医疗设备公司不能继续推出软件改进。这是通过发布后的反馈循环实现的。我们有一个渠道,任何人都可以联系我们,告诉我们他们使用设备时遇到的问题。

AI在医疗设备软件中的应用

Shane Hastie:我们正处于AI时代。

Neeraj Mainkar:是的。

Shane Hastie:AI在你们的空间里发生了什么?

Neeraj Mainkar:除了围绕AI产品的炒作外,我们也是其中之一,我们设备的很大一部分实际上是由AI驱动的。但在我们当前讨论的可用性和安全性方面,AI已经产生了巨大的影响。目前没有一个医疗设备领域的开发者不使用某种形式的AI,无论是ChatGPT还是其他竞争工具,来创建设备代码。我们已经开始使用AI进行自动单元测试,因为你可以让像ChatGPT这样的工具为你的代码创建单元测试。它可以比人类更快、更准确地完成。我们认识到,尽管这听起来可能与需要更多软件工程师的想法相悖,但当意识到软件中的错误是由于软件开发中的人为因素造成的。因为是人类在开发,而人类容易犯错,所以我们最终会在软件中有很多错误。这是事物的本质。但是,你使用的自动化工具如AI越多,你就能越确保这些事情能更好地工作。因为它消除了人为错误的因素。我们还没有这样做,但它在我们的路线图上,开始使用AI进行基于虚拟现实的模拟测试。如果你正确使用AI和可用性测试,你可以使用AI工具分析用户交互,识别可用性问题,提出设计改进建议,这实际上正在进行中。这些工具正在开发中。你甚至可以让AI预测潜在的用户挑战。你甚至可以让AI创建某些你可能没有想到的用户工作流替代方案,这有助于确保“嘿,你没想到这个特定的工作流变体”。它扩展了设备系统级可用性测试的宇宙。所以,坦率地说,对这个问题的一个简短的回答是,天空是极限。我们才刚刚开始在整个软件工程的各个层面使用AI。

其他需要考虑的方面

Shane Hastie:还有什么我没有问到但应该问到的问题吗?

Neeraj Mainkar:我认为我们可以多谈谈挑战。我们提到了复杂性和可用性之间的权衡,但还有很多其他因素我们没有讨论。可用性与用户群体的多样性之间也有冲突。如果只有一个用户类型的世界会简单得多,尤其是在医疗设备领域。有时候你必须担心,好吧,所以我有不同的用户配置文件。我有外科医生将使用我的设备,但也可能是坐在那里进行术前规划的医技人员,这是一种不同的用户。还可能有像手术室护士这样的人使用同一设备,这是一种不同的用户。每个用户都必须有相似的良好和轻松的体验。这可能很有挑战性,因为有时你创建的工作流是为了迎合这一边的观众而不是另一边的观众,找到完美的平衡,使每个类型的用户都能得到同样好的体验,始终是一项持续的努力。另一个我们不常谈论的挑战是,你试图使系统尽可能易于使用,但有时如果你的系统需要与其他旧的遗留系统集成,这可能会限制你的能力。我不是说很多,但它有时会影响你设备的灵活性,特别是如果你的设备是复杂工作流的一部分,其中还有其他设备和其他软件系统用于执行复杂工作流的其他部分。你知道我的意思吗?这可能是一个挑战。当然,另一个对我们这样的人来说内部挑战是我们提到的今天早些时候,有这么多技术和新工具不断出现在我们的视野中。有时候聪明的做法是确保我们不追逐最新的闪亮工具,而是更专注于用户需求,而不是利用所有这些令人兴奋的新技术。作为工程师,我们都想玩弄所有新出现的东西,并想把它包含在我们的设备中,因为我们只是想玩弄它。控制这种冲动,确保用户需求是首要的,其他一切都应该是为此服务的,而不是反过来,“哦,有这项很棒的新技术,我想想办法使用它”。有点像“有了锤子,一切都像钉子”的情况。你想挑出那个,这是更多在工程方面。然后一件最近的事情是,这些基于AI的工具也可能带来它们自己的挑战。具体来说,我指的是现在有太多的数据过载,因为现代软件往往为了给外科医生或其他用户提供尽可能多的信息,现在数据无处不在,数据库很便宜,存储大量数据非常容易。但有时候会发生用户现在不得不查看过多的数据。表面上看,这似乎是个不错的问题,但如果数据没有正确安排和呈现,也可能让人不知所措和困惑。因此,信息架构、数据可视化和上下文化你在任何软件界面中看到的东西已经成为我和开发医疗设备软件的工程师们更重要的责任,因为这是一个非常重要的问题。有这么多数据。例如在Proprio,每次手术我们都会收集一兆字节的数据。现在那是一大堆数据。我们需要以一种不压倒外科医生和其他用户的方式呈现这些数据,同时也有用。我们不想走另一个极端,要么压制任何形式的数据,那也不是我们想做的。我们还想在提供正确的数据类型供他们决策和隐藏其余部分之间找到正确的平衡。所以这些都是我认为在尝试开发高度可用的东西时人们可能没有考虑到的其他挑战。

Shane Hastie:Neeraj,感谢你分享有关软件工程领域的深刻见解,特别是在一个错误可能致命的领域,你真正改变了人们的生活。如果人们想继续对话,他们可以在哪里找到你?

Neeraj Mainkar:你可以在LinkedIn上联系我,我的用户名是nmainkar,基本上是我的名字首字母N加上我的姓氏Mainkar。你可以写信给我,我很乐意回答任何问题。

Shane Hastie:非常感谢。

Neeraj Mainkar:谢谢你。


(全文结束)

大健康

猜你喜欢

  • FDA发布关于人工智能赋能医疗设备的全面草案指南FDA发布关于人工智能赋能医疗设备的全面草案指南
  • FDA发布关于上市后更新AI设备的最终指南FDA发布关于上市后更新AI设备的最终指南
  • 国防部将开发可扩展的生成式AI测试数据集国防部将开发可扩展的生成式AI测试数据集
  • FDA发布医疗设备中人工智能使用的草案指南FDA发布医疗设备中人工智能使用的草案指南
  • FDA发布最终指南,允许AI医疗设备上市后更新FDA发布最终指南,允许AI医疗设备上市后更新
  • FDA就医疗设备、药物设计和临床研究中的人工智能监管目标和挑战提供观点FDA就医疗设备、药物设计和临床研究中的人工智能监管目标和挑战提供观点
  • 数字健康周报:2025年医疗技术领域将加大AI/GenAI的应用,FDA推动数字健康,英国试点项目数字健康周报:2025年医疗技术领域将加大AI/GenAI的应用,FDA推动数字健康,英国试点项目
  • FDA法规将如何塑造医疗设备制造中的人工智能FDA法规将如何塑造医疗设备制造中的人工智能
  • 2025年CES展会上的AI驱动视力测试自助服务终端:与Eyebot首席执行官的访谈2025年CES展会上的AI驱动视力测试自助服务终端:与Eyebot首席执行官的访谈
  • FDA敦促AI医疗设备制造商:超越初次批准,着眼长远FDA敦促AI医疗设备制造商:超越初次批准,着眼长远
大健康
大健康

热点资讯

大健康

全站热点

大健康

全站热文

大健康