MEDTEC Online

静的解析による医療機器のソフトウェアにおける共通コードの徹底

静的解析による医療機器のソフトウェアにおける共通コードの徹底

静的解析(コーディングスタンダード解析)が実施されるようになり、医療用ソフトウェアの開発にも長期的なベストプラクティスがもたらされるようになってきている。

By Chris Adlard, Coverity, Camberley, UK

既存の医療機器の半数以上は、完成した装置に組み込まれたシステムとして、或いはその製造過程に於いて、何らかのかたちでソフトウェアが関与している。ソフトウェアは医療技術の進歩を促進する一方で、複雑性を増すことでリスクも生んでいるのが現状だ。

ソフトウェアにはコードの複雑さと欠陥発生数との間に強い相関関係がある。安全性が不可欠であるという医療機器のもつ性質上、さまざまな検査方法を用いることで、機器が欠陥を引き起こして最終的には傷害などにつながらないように留意している。

2006年以来、従来のソフトウェア検証・確認プロセスにおいてコードを検証するために静的解析を使用することが急激に増えている。最近の静的解析は、プログラムの可能な実行パスをすべて模擬することでコード内の複雑な欠陥を発見することができる。さらに、ランタイムの欠陥に焦点を置くことで、新しい静的解析技術はコードベース内の複雑な相互作用をさらに多く評価することができる。例えば、実行時にソースコードで操作される変数値の追跡や、関数のパラメータの処理方法とその戻り値の関係である。

非常に洗練された方法でコードを解析するために、成熟したソリューションはパスフロー解析とプロシージャ間解析を組み合わせて、特定のソフトウェアシステム内で制御フローが1つの関数から別の関数へ受け渡されるときの動作を評価できる。解析全体が自動化されており、既存の開発プロセスに実質的な変更を加える必要はない。

このように静的解析の使用によって、医療用ソフトウェアの開発プロセスにおける長期的なベストプラクティスが生まれている。静的解析での自動コードテストの強みの上に構築される良好な管理、リスクおよびコンプライアンス方針は、医療機器の安全性を高め、開発プロセスをより効率化することができる。そのような方針によって、開発組織はコンプライアンスと規制要件に対してコードを定義・テストし、開発プロセス全体を通して開発リスクを管理することが可能になる。また、ソフトウェアと関連機器の品質と安全性の制御において規範的なアプローチを取ることができる。

機器の急速な進化によって、機器の効率を向上するだめだけでなく、セキュリティの脅威を減少するためにも、バグのないソフトウェアの重要性がより一層高まっている。制御、報告、監視にネットワーク接続を必要とする機能を多くの機器が取り入れているため、セキュリティの問題は非常に重要である。

2012年6月2日に『The Economist』誌に掲載された記事、「When Code Can Kill or Cure」(コードが死を招く時、あるいは治癒を可能にする時)では、植込み型除細動器の再プログラミングが治療中断または不要なショックの発生を引き起こす可能性を挙げている。マサチューセッツ大学コンピュータサイエンスKevin Fu教授はThe Economistに対し、「多くのメーカーはコンピュータサイエンスで開発された新しいツールを使用する専門知識または意欲がない」と指摘している。

幸いにも、ベストプラクティスに沿った開発テストソリューションを導入すれば、セキュリティ違反を未然に防ぎ、安全性が不可欠なコードベースの整合性を確約することができる。

 

Chris Adlard is Senior Manager, Worldwide Customer Advocacy and Communications, at Coverity, Quatro House, Lyon Way, Camberley, Surrey GU16 7ER, UK

Tel. +44 1276 804 790

e-mail: info@coverity.com

www.coverity.com

 

 

カテゴリー: