• 第8章: SaMD(Software as a Medical Device)の開発と規制対応
  • HOME
  • 第8章: SaMD(Software as a Medical Device)の開発と規制対応

8.2 SaMDの開発プロセス

SaMD(Software as a Medical Device)の開発プロセスは、通常のソフトウェア開発プロセスと医療機器開発の規制要件を組み合わせたものです。患者の安全を最優先しながらも、ソフトウェア特有の俊敏性も確保する必要があります。

SaMDの開発では、以下の要素が重要となります:

  1. リスクベースドアプローチ:SaMDのリスクレベルに応じた開発プロセスの適用
  2. 設計管理の徹底:要求仕様から検証までの一貫したトレーサビリティ確保
  3. 規制要件への適合:IEC 62304などの国際規格と薬機法の要求事項への対応
  4. 品質保証活動:開発全工程を通じた品質確保と記録の維持
  5. 市販後管理を見据えた設計:アップデート、保守を考慮した構造設計

8.2.1 SaMD特有の設計開発考慮事項

SaMDの開発では、通常の医療機器開発に加えて、以下のソフトウェア特有の考慮事項が重要です:

  1. 使用環境の特定
    • 実行環境(OS、ブラウザ、デバイス仕様など)
    • ネットワーク要件(帯域、セキュリティなど)
    • ユーザー特性(医療従事者、患者など)
  2. 安全性に関わる特性
    • エラー処理と例外管理
    • データの完全性確保
    • システム応答時間と信頼性
  3. インターフェース仕様
    • 他システムとの連携(電子カルテ、PACSなど)
    • データ入出力フォーマット
    • APIの安定性と互換性
  4. ライフサイクル計画
    • バージョン管理戦略
    • 保守・サポート体制
    • 市販後更新プロセス

これらの考慮事項を開発計画に組み込み、設計文書に適切に反映させることが重要です。

8.2.2 IEC 62304(医療機器ソフトウェアのライフサイクルプロセス)の適用

IEC 62304は医療機器ソフトウェアのライフサイクルプロセスを規定する国際規格で、SaMD開発では必須の規格です。

主要プロセス:

  1. ソフトウェア開発計画
    • ソフトウェア安全クラス分類(A/B/C)
    • 開発手法とスケジュール
    • 検証戦略
  2. 要求仕様開発
    • システム要求からソフトウェア要求への変換
    • 機能・非機能要求の明確化
  3. アーキテクチャ設計
    • ソフトウェアアイテムの特定
    • インターフェース定義
    • SOUP(既製ソフトウェア)の特定と管理
  4. 詳細設計と実装
    • モジュール設計と実装
    • コーディング規約準拠
  5. 統合とテスト
    • ユニットテスト
    • 統合テスト
    • システムテスト

安全クラスによる要求事項の違い:

安全クラス定義要求事項レベル
A危害を引き起こさない基本的な開発管理
B重篤でない危害を引き起こす可能性詳細なプロセス管理
C重篤な危害・死亡を引き起こす可能性最も厳格なプロセス管理

8.2.3 アジャイル開発手法とSaMD

アジャイル開発は柔軟性と迅速な反復を特徴とする開発手法ですが、規制対象のSaMD開発では規制要件との両立が課題となります。

アジャイルSaMD開発のポイント:

  1. 規制対応とアジャイルの統合
    • 「アジャイル+規制」ハイブリッドアプローチ
    • スプリント内での規制文書作成
    • 段階的な設計管理レビュー
  2. 文書化戦略
    • 効率的な文書作成アプローチ
    • 継続的な文書更新
    • 自動化ツールの活用
  3. リスク管理の統合
    • スプリント計画にリスク分析を組込む
    • 増分的リスク評価
    • 安全性関連機能の優先開発
  4. トレーサビリティの確保
    • 要求→設計→実装→テストの追跡
    • ツールによる自動トレース
    • バックログ項目と規制要件のマッピング

8.2.4 ソフトウェア検証・バリデーション(V&V)の実施

ソフトウェア検証・バリデーション(V&V)は、SaMDが要求仕様を満たし(検証)、意図した用途に適合している(バリデーション)ことを確認するプロセスです。

主要活動:

  1. 検証活動
    • 静的検証:コードレビュー、静的解析
    • 動的検証:ユニットテスト、統合テスト、システムテスト
    • テスト網羅率の評価
  2. バリデーション活動
    • ユーザー要求に対する適合性評価
    • ユーザビリティテスト
    • 臨床バリデーション(必要に応じて)
  3. テスト計画と戦略
    • テストケース設計(同値分割、境界値分析等)
    • リスクベースドテスト(重要機能の重点テスト)
    • 回帰テスト戦略
  4. 文書化要件
    • テスト計画書
    • テスト仕様書
    • テスト報告書
    • トレーサビリティマトリクス

8.2.5 AIを活用したSaMDの開発と検証

AI(人工知能)、特に機械学習(ML)を活用したSaMDは、従来のソフトウェアとは異なる開発・検証アプローチが必要です。

AI/ML SaMD開発の特徴と対応:

  1. データ管理
    • トレーニング/バリデーション/テストデータの分離
    • データ品質管理
    • データバイアス検出と対策
    • データセット文書化
  2. モデル開発・検証
    • アルゴリズム選択とハイパーパラメータ最適化
    • 性能メトリクスの定義と評価
    • 信頼区間と不確実性の定量化
    • 対照群との比較評価
  3. 説明可能性
    • 特徴重要度分析
    • 局所的解釈可能性手法(LIME、SHAP等)
    • 決定プロセスの透明性確保
  4. 頑健性検証
    • エッジケーステスト
    • ドメイン外データでの挙動
    • 敵対的例に対する堅牢性

日本でのAI医療機器開発では、PMDAの「人工知能を用いた医療機器開発に関する特別相談」を活用し、早期から規制当局との対話を行うことが推奨されます。