IEC 62304 (医療機器ソフトウェア)
医療機器ソフトウェアのライフサイクルプロセスを定める標準(IEC)。安全に開発・保守されていることを枠組みで担保する。安全臨界認証の医療版で、製品の正しさよりプロセスの正しさを規定する点が特徴。
安全クラス — 危害の重さで決まる
故障したとき起こりうる危害で3クラス。クラスが上がるほどプロセス要求が厳しくなる。
| クラス | 起こりうる危害 |
|---|---|
| A | 負傷・健康被害は起こり得ない |
| B | 負傷は起こり得るが重篤でない |
| C | 死亡または重篤な負傷が起こり得る |
ライフサイクルプロセス
Clause 5(開発)は計画→…→リリースの 8活動領域。加えて横断プロセスとして:
- 保守 (Clause 6)
- リスクマネジメント (Clause 7、ISO 14971 と連携)
- 構成管理 (Clause 8)
- 問題解決 (Clause 9)
SOUP — 出自不明ソフトウェア
IEC 62304 固有の最重要概念。SOUP (Software of Unknown Provenance) = 自社の医療機器向けに開発されたのでない、または十分な開発記録が無いソフト。OS・OSS ライブラリ・サードパーティのネットワークスタック・クラウド API が該当。
- バージョン・出自・検証状況・採用根拠を文書化する(特に Class B/C)
- リスクベースで「使ってよいか」を判断し、SOUP 向けのテスト要求を定める
これは 認証ギャップの「ランタイム未認証」と同じ問題 — WASM ランタイム(wasmtime 等)は医療文脈では典型的な SOUP。コンパイラが完璧でも、実行系を SOUP として正当化・検証する負担が残る。
システムへの含意 — 安全クラスは外部対策で下げられる
62304 の安全クラスも、ソフト単体でなく機器全体のリスクマネジメント(ISO 14971)から決まる。重要なのは §4.3 の発想 — ハードウェアや外部のリスク制御手段で、ソフトが危害に寄与し得なくなれば、ソフトの安全クラスを下げられる。
例: ソフトが暴走しても機械的インターロックが過剰投与を物理的に止めるなら、その投与制御ソフトは Class C でなく B/A 扱いにできる。
含意は他2基準と同じ — 安全はソフトの完全性だけでなく、システム全体の防御層(物理的フェイルセーフ・分離)で達成する。ソフトを賢くするより、危害経路をアーキテクチャで断つ方が安い・確実なことが多い。許容される安全性の③でなく④で稼ぐ発想。
Links
関連
- safety-critical-certification — 3基準の俯瞰と Almide のギャップ。SOUP = ランタイム認証問題
- do-178c — 航空版
- iso-26262 — 自動車版
- soup — IEC 62304 固有概念の詳細(出自不明ソフトの管理)
- safety-critical-certification-bodies — 医療は FDA / EU MDR(通知機関 TÜV SÜD・BSI)が審査