連載の第1回では「STAMP/STPAとは何か」「既存の分析手法と何が違うのか」に焦点を当て、分析手法の流れを紹介した。第2回は、STPAの実践手順を解説する。各ステップで「何をすべきか(What)」と、具体的に「どうすればよいのか(How)」を中心に紹介していく。
はじめに前回のおさらいをしよう。
STAMP(Systems-Theoretic Accident Model and Processes:システム理論に基づくアクシデントモデル)は、「要素間の相互作用に潜む問題が顕在化したときに危険な状態になり、事故につながる」という考え方である。そして、STPA(System-Theoretic Process Analysis)は、STAMPの考え方に基づいて相互作用が正しく働かない条件を抽出/特定(原因究明)するという、新しい安全性解析手法である。
STPAは、システム開発を行うときに用いるハザード分析手法という位置付けだ。前回で紹介した通り、旧来のハザード分析手法と比較し、複雑でソフトウェアの役割が大きなシステムの分析に適したものとされている。
STPA実践の第一歩は、「対象システムを理解する」ことから始まる。対象システムのコントロールストラクチャーを確認した後、回避すべきアクシデント(システムにとっての損失)とハザード(危険な状態)を決めてSTAMPによるモデリングを行い、STPAの分析に着手する。
STAMP/STPAによるモデリングは、以下の3つの要素を基にしている。
次にSTPAのプロセスを見てみよう。STPAのプロセス構成は、以下の4パートを包含している。
STAMP/STPAを提唱したマサチューセッツ工科大学(MIT) 教授のナンシー・レブソン(Nancy Leveson)氏は、「STPAはシステムなどの発展に伴い、トップダウンのアプローチで繰り返し行われるものである」としている。つまり、手順(手法)例として参照できるものはあるが、絶対的なものは存在しない。ハザード分析を行う目的や段階の違いも含め、STAMP/STPAの具体的な適用には、さまざまなバリエーションが考えられる。なお、STPAでは以下のようなハザード誘発要因によって危険な状態になり、条件がそろったときにハザードがアクシデントにつながると想定している。
では、次から実際の手順(ステップ)を見ていこう。今回紹介する手順は、IPAが2015年に公開した『STAMP手法に関する調査報告書』を基にしている。同報告書の手順は以下の通りだ。
Copyright © ITmedia, Inc. All Rights Reserved.