
在數位醫療快速發展的當下,軟體已成為醫療器材的核心。從血糖機到 AI 輔助診斷系統,軟體不只支撐功能,更直接影響病患安全。
然而,軟體的失效模式往往難以預測。一行程式碼的錯誤,可能導致劑量計算偏差、警報延遲,甚至造成嚴重危害。也因此,世界各國對醫療器材軟體的要求日益嚴格。在這樣的背景下,IEC 62304 成為醫療軟體合規與安全管理最重要的國際標準之一。
IEC 62304 是什麼?
IEC 62304 的全名為《Medical Device Software – Software Life Cycle Processes》,中文為醫療器材軟體生命週期流程。
這套標準規範的不是產品「應該具備什麼功能」,而是醫療器材軟體的開發與維護流程應如何被管理、控制與追溯。核心概念在於:安全有效的醫療軟體,必須建立在可控且可追溯的生命週期開發流程之上。
無論是醫療器材的嵌入式軟體,或是獨立軟體醫材(SaMD),在申請 FDA、CE 或 TFDA 認證時,IEC 62304 幾乎都是基本要求。
軟體風險分級:風險越高,要求越嚴
IEC 62304 將軟體依照風險程度分為三個等級:
| 風險等級 | 描述 |
| Class A | 軟體系統不會引起危害情況,或在考量外部風險管制措施後,不至於產生不可接受的風險 |
| Class B | 在考量外部風險管制措施後,軟體可能導致危害情況,但危害程度為非嚴重傷害 |
| Class C | 在考量外部風險管制措施後,軟體可能導致危害情況,且危害程度可能為死亡或嚴重傷害 |
Class A 仍須進行驗證與文件化,但深度與嚴格程度可相對簡化;Class C 則要求從架構設計、單元測試到整合驗證,都必須具備完整且可追溯的證據鏈。風險越高,管理要求越嚴謹,這是 IEC 62304 分級制度的核心邏輯。
五大核心流程
IEC 62304 將醫療器材軟體生命週期拆解為五個主要流程,構成企業建立軟體品質系統的架構基礎:
1. 軟體開發流程
涵蓋從需求到測試的完整開發路徑,包含四個階段:
- 軟體需求分析: 將使用者需求轉化為技術規格,並特別考量安全需求。
- 架構與詳細設計: 定義軟體各模組之間的交互作用與介面關係。
- 單元實作與驗證: 撰寫程式碼並進行單元測試。
- 軟體整合與系統測試: 確保各模組組合後能正常運作,並符合最初的需求規格。
2. 軟體維護流程
醫療軟體上市後仍需持續更新與修補。無論是錯誤修正或功能更新,都必須遵循維護程序,評估更新是否影響現有的安全性與符合性。
3. 軟體風險管理流程
這是 IEC 62304 執行的重點,並與 ISO 14971 醫療器材風險管理標準融合運用。常見的風險情境包括:劑量設定中途關機、資料傳輸延遲導致警報未觸發、資料傳輸異常等。針對這些風險,必須設計對應的控制措施,例如檢查機制、警示設計或防呆設計。
4. 軟體配置管理流程
要求對原始碼、開發工具、文件與測試結果進行嚴格的版本管控,確保在任何時間點都能精確追溯至某個特定的發布版本。
5. 問題解決流程
當測試期間或上市後發現問題,必須有標準化流程來記錄、分析、修正與關閉問題,防止相同錯誤重複發生。
SOUP 管理:來源不明軟體的稽核重點
SOUP(Software of Unknown Provenance)指來源不明的軟體元件,包含第三方函式庫、開源軟體、作業系統等。由於現代開發幾乎無法完全避免使用 SOUP,這也成為稽核的重點項目之一。
針對 SOUP,企業應考量三個面向:列出所有使用的 SOUP 清單、分析其失效是否影響軟體安全性、驗證其功能符合預期使用需求。
小結
遵循 IEC 62304,不只是為了取得合規認證,更是為了確保患者安全、降低法律風險,並建立企業在數位醫療時代的可信任能力。
當醫療產業邁入 AI、雲端與軟體驅動的新時代,軟體開發已無法只依賴開發速度或工程直覺。IEC 62304 提供的不是束縛,而是一套可被驗證、可被追溯的科學管理路徑。