# 事故モデル
## 定義
事故モデル(Accident Model)は、なぜ事故が起きるかを説明する因果論的枠組みである。どのモデルを採用するかによって、ポストモーテムで何を「原因」として記録し、何を「改善策」として立案するかが根本的に変わる。歴史的に「人間の失敗に帰着させるモデル」から「システムの相互作用を説明するモデル」へと進化してきた。(Source: [[@2016__SREcon16Europe__Accident Models in Post Mortems]])
### 主要な事故モデル
| モデル | 提唱者 / 時代 | 核心命題 | 問題点 |
|---|---|---|---|
| **Bad Apples** | — / 20世紀初 | システムは基本的に安全。信頼性のない人間が障害を引き起こす。悪いリンゴを取り除けばよい | 個人責任に終着し、システム的欠陥を見逃す |
| **ハインリッヒのドミノ理論** | H.W. Heinrich / 1931 | 事故は社会環境 → 人間の欠陥 → 不安全行為 → 事故 → 怪我という連鎖ドミノで発生する | 直線的因果連鎖を前提とし、複雑系の創発的失敗を説明できない |
| **James Reason のスイスチーズモデル** | James Reason / 1990 | 組織の防御層には穴(能動的失敗・潜在的条件)があり、穴が揃った瞬間に危険が貫通する | Bad Apples より洗練されているが、依然として「障壁の欠陥」という静的な構造に注目し、動的なシステム適応を捉えにくい |
| **Normal Accidents (Perrow)** | Charles Perrow / 1984 | 密接に結合した複雑系では、想定外の相互作用による大規模事故は避けられない | 悲観的すぎるとも批判されるが、Surprise が設計に内在するという洞察は重要 |
| **機能共鳴事故モデル(非線形・システミックモデル)** | Erik Hollnagel / 2004 | 事前に明確な関係を持たない条件・出来事の予期しない組み合わせ(concurrence)から事故を説明する。木・グラフ・ネットワークのような固定構造でなく、動的な結合(dynamic binding/coupling)を表現する | 分析コスト・実務適用の閾値は不透明(→未解決の問い) |
Hollnagel(2006)の第1章は Perrow(1984)への言及を踏襲し、Perrow を非線形・システミックモデルの先駆と位置づけている(Source: [[@2006__Ashgate__Resilience Engineering - Chapter 1 Resilience – the Challenge of the Unstable]] ch.1 p.12)。
### 事故モデルとリスク評価手法の対応(Hollnagel, 2006, ch.1)
Hollnagel は「事故分析」と「リスク評価」を同じコインの両面と位置づけ、両者が同一の事故モデルに制約されると論じたうえで、3系統の対応関係(図1.3)を示す(Source: [[@2006__Ashgate__Resilience Engineering - Chapter 1 Resilience – the Challenge of the Unstable]] ch.1 p.14-15)。
| 事故モデル | 対応するリスク評価手法 | 性質 |
|---|---|---|
| 単純線形モデル(ドミノモデル) | イベントツリー(event tree) | 初期事象を根、成功/失敗を葉とする二分木による線形予測 |
| 複雑線形モデル(スイスチーズモデル) | フォールトツリー(fault tree) | 頂上事象を導く条件の論理的組み合わせによる条件付き予測 |
| 非線形・システミックモデル | 機能共鳴(functional resonance) | 固定構造でなく動的な結合を表現することで同時発生(concurrence)を捉える |
イベントツリー・フォールトツリーはインシデントから小規模事故の評価には十分だが、大規模事故の多くは事前に明確な関係を持たない複数要因の複雑な同時発生に起因するため、固定構造のグラフ表現では十分に説明できないと Hollnagel は指摘する(Source: [[@2006__Ashgate__Resilience Engineering - Chapter 1 Resilience – the Challenge of the Unstable]] ch.1 p.14-15)。
## 横断的知見
- **「ヒューマンエラー」は原因でなくラベルである**: [[@2016__SREcon16Europe__Accident Models in Post Mortems]] は Amazon・NASDAQ・ドイツ鉄道の公開インシデント報告がすべて "Human Error" と結論づけていることを示した。Steven Shorrock(EUROCONTROL)はヒューマンエラーを「Someone did (or did not do) something that they were not (or were) supposed to do according to someone」と定義し、その循環性と主観性を暴いた。[[@2019__SREcon19 Asia__A Tale of Two Postmortems - A Human Factors View]](Tanner Lund)も同様に「Human Error は分析の行き止まり(analytical dead end)」と呼ぶ。2 つのソースが独立して同じ結論に到達しており、SRE ポストモーテム実践における「ヒューマンエラー」表記は学習機会を閉じると判断できる。
- **安全性は創発的特性であり、設計可能なプロパティではない**: Sidney Dekker の「Safety is an EMERGENT PROPERTY that arises when components and processes interact with each other and their environment」(p.34) は、Bad Apples / ドミノ理論が前提とする「システムは基本的に安全」という命題を直接否定する。安全は手順書や障壁を追加することで達成されるのでなく、コンポーネントが適切に相互作用する結果として生まれる。(Source: [[@2016__SREcon16Europe__Accident Models in Post Mortems]])
- **原因は「発見」でなく「構築」される**: 「Cause is not something you find. Cause is something you construct.」(Dekker) は、ポストモーテムにおいて「根本原因を探す」という姿勢自体が問題だと指摘する。原因の構築は調査者の視点・フレーム・問いかけ方に依存し、同じイベントから複数の異なる因果ストーリーが構築できる。これはスイスチーズモデルが「穴を探す」枠組みを超えている。(Source: [[@2016__SREcon16Europe__Accident Models in Post Mortems]])
- **スイスチーズモデルは Reason 本人も後に改訂を要求している**: Reason・Hollnagel・Paries (2006) "Revisiting the Swiss Cheese Model of Accidents" がスライドの参考文献に含まれる。原著者たちが自ら限界を認め改訂を促したモデルが、SRE 業界では改訂を知られずに広く流通していることは、知識の経路依存性の問題として興味深い。
- **安全工学の System/Environment 境界モデルはスイスチーズモデルより直接的に SRE 実践と接続する**: [[Laura de Vesine]]([[@2022__SREcon22 EMEA__Principled Identification of Root Causes Using Techniques from Safety Engineering]])は、スイスチーズモデルが「防御層の穴が揃う」という静的モデルであるのに対し、「自分たちが制御できるものをシステム、できないものを環境と呼ぶ」という境界モデルがより操作的だと論じた。根本原因 = システムの脆弱性、トリガー = 環境条件という整理は、SRE エンジニアが「どこに修正を施すべきか」を直接指示する点で Dekker の「原因は構築される」よりも実用的である。スイスチーズモデルが「なぜ失敗したか」を事後説明するのに対し、このモデルは「何を変えれば次の最悪環境条件に耐えられるか」を設計前提として問う。(Source: [[@2022__SREcon22 EMEA__Principled Identification of Root Causes Using Techniques from Safety Engineering]] p.13・p.14)
- **Rasmussen の Safety Model は PIR スタイルの選択に直接接続する**: [[Tom Partington]] は Rasmussen のモデルをポストモーテム実践に接続し、「機械論的推論(Mechanistic Reasoning)」——システムを相互関係のない部品の集合と見なす立場——がなぜ失敗するかを説明した([[@2022__SREcon22APAC__A Post Incident Review Review]] p.15–16)。Rasmussen は「作業は Workload・Economic・Performance の3境界に囲まれた空間で行われ、境界へのドリフトが重なると事故になる」と主張した。この動的ドリフトモデルは、スイスチーズモデルの「穴が揃う静的構造」とは異なり、日常の作業圧力とコスト圧力が複合的に安全境界を侵食するプロセスを説明する。[[ANZx]] の PIR がカウザルマップ(多要因の因果グラフ)を採用するのは、Rasmussen 的な複合ドリフトを記述するためであり、単一根本原因モデルとは根本的に異なる認識論に基づく。
- **CAST はイベント選択の主観性問題を「制御構造分析」で構造的に回避する**: [[Ruben Barroso]]([[@2026__SREcon26Americas__The Case of the Misnamed Cities - CAST Analysis of a Google Maps Incident]])は RCA で選ばれるイベントが「馴染み深い・単純・politically acceptable」という主観的フィルターを通過するものに偏ること(Subjective Selection of Events)と、時系列が因果を意味しないこと(Chronology ≠ Causality)を指摘した。CAST はこの問題を「どのイベントを選ぶか」でなく「コントローラーのメンタルモデルと文脈要因から分析する」設計で回避する。「Leadership が評価失敗をオーバーライドした」という RCA では不可視のイベントや「Management of Change プロセスの欠如」という非イベント的要因が CAST では析出できる。本 wiki の「ヒューマンエラーは原因でなくラベル」「Cause is not something you find」という観察と同方向であり、システム理論的事故モデルの実装例として位置付けられる。(Source: [[@2026__SREcon26Americas__The Case of the Misnamed Cities - CAST Analysis of a Google Maps Incident]])
- **Rasmussen の Safety Model がポストモーテム(事後分析)を離れ、オブザーバビリティ設計そのものの一般原理として転用される**: [[@2022__SREcon22APAC__A Post Incident Review Review]](Tom Partington)は Rasmussen の3境界モデルを PIR(Post Incident Review)スタイル選択の説明枠組みとして用いたが、[[@2026__OReilly__Observability Engineering 2E - Chapter 22 Fin’s Case Study in Modern Engineering]](Kesha Mykhailov、Fin/Intercom)は同じモデルを、事後に事故を説明する道具ではなく**リアルタイムに安全境界を可視化し事前にドリフトを防ぐ**運用原則として引用する。Finのケースでは、顧客中心の信号(time to first token = 性能境界)と事業中心の信号(対話あたりコスト = 経済境界)をトレーステレメトリへ結合することが「オブザーバビリティの最後の1マイル」だと結論づけられる。これは Rasmussen の元来の主張(作業は3境界に囲まれた空間で行われ、境界を越えて初めて位置が判明する)が、事後のインシデント学習ツールとしても、平時のリアルタイム運用ダッシュボード設計原則としても機能する、汎用性の高いモデルであることを示す。ただし Fin の事例は「作業負荷境界(engineer burden)」を直接計測する信号を欠いており、性能・経済の2境界のみを扱っている点で、モデルの3境界すべてを運用に落とし込めているわけではない。(Source: [[@2022__SREcon22APAC__A Post Incident Review Review]], [[@2026__OReilly__Observability Engineering 2E - Chapter 22 Fin’s Case Study in Modern Engineering]])
- **Rasmussen の「境界へのドリフト」モデルは、根本的に静的な障壁モデル(スイスチーズ)に対する力学的な代替であり、原論文では単体の図ではなく事故因果論全体の一部として提示される**: [[@1997__Safety Science__Risk management in a dynamic society - A modelling problem]] を一次資料として wiki に取り込み、これまで SREcon 系トークの二次引用でのみ知られていた3境界モデル(本ページ上記「Rasmussen の Safety Model」)の原典を確認した。原論文 Figure 3 での正式名称「Boundary of functionally acceptable performance / Boundary to Economic Failure / Boundary to Unacceptable Work Load」は、SREcon22APAC・SREcon23Americas が伝える「Performance / Economic / Workload」という呼称と一致する。重要なのは、原論文がこの図を Zeebrügge フェリー転覆事故(Figure 2)の因果分析——複数の意思決定者がそれぞれ局所最適化する過程で防御が系統的に劣化する——の**直後**に提示している点である。すなわち Rasmussen 自身は境界モデルを「スイスチーズモデルの改良版」としてではなく、「なぜ複数の独立した意思決定が事故に向かって収斂するのか」を説明する力学的機構として位置づけている。本ページが記録してきた「スイスチーズモデルは静的構造、Rasmussen モデルは動的ドリフト」という対比は原論文の主張と整合する。(Source: [[@1997__Safety Science__Risk management in a dynamic society - A modelling problem]] Figure 2・Figure 3)
- **AcciMap は境界モデルとは別個の Rasmussen の貢献であり、CAST の制御構造分析に先行する多階層因果マッピング手法である**: 原論文は Ivan Svedung との共同研究(Svedung and Rasmussen, 1997)に基づき、社会技術システムの6階層(政府〜設備・周辺環境)上に意思決定ノードと Yes/No 分岐を接続する「AcciMap」を提示する([[AcciMap]])。CAST([[@2026__SREcon26Americas__The Case of the Misnamed Cities - CAST Analysis of a Google Maps Incident]])が「コントローラーのメンタルモデルと文脈要因」を分析するのに対し、AcciMap は「どの階層のどの意思決定が下流のどの物理条件に接続するか」を明示的な階層構造上にマッピングする点で異なる粒度を持つ。両者とも「単一の根本原因を探す」枠組みを回避する点は共通するが、AcciMap は Rasmussen 自身の Figure 1 の社会技術階層モデルを前提とし、CAST は STAMP の制御構造理論を前提とする、という系譜の違いがある。AcciMap と CAST/STAMP の直接的な理論的接続(後者が前者からどう発展したか)は本 wiki 未検証。
- **Hollnagel(2006, ch.1)の一次資料は、SREcon16Europe が二次的に紹介したドミノモデル・スイスチーズモデル批判の理論的系譜を裏付ける**: [[@2016__SREcon16Europe__Accident Models in Post Mortems]] は Dekker の「安全性は創発的特性である」という言葉を引いて Bad Apples・ドミノモデルの「システムは基本的に安全」という前提を批判したが、この批判は Hollnagel 自身が第1章で辿る論理と一致する。Hollnagel はドミノモデルについて「安全性はドミノを取り除くか間隔を広げることで高められる」という着想を与えた点で有用だったが、事故に根本原因があり結果から遡って発見できるという誤解を助長したと述べ(ch.1 p.10-11)、スイスチーズモデルについても「依然として構造・コンポーネントに焦点があり、システム全体の機能そのものには焦点が当たらない」と評する(ch.1 p.11-12)。SREcon16Europe が実務者向けに要約した批判は、この一次資料(2006年刊行の本書)の論理を継承したものであることが確認できる。(Source: [[@2016__SREcon16Europe__Accident Models in Post Mortems]], [[@2006__Ashgate__Resilience Engineering - Chapter 1 Resilience – the Challenge of the Unstable]])
- **Hollnagel(ch.1)が示す「事故モデル→対応するリスク評価手法」の三系統対応(図1.3)は、本ページが集約してきた Rasmussen の境界モデル・AcciMap・CAST を、より大きな分類法の中に位置づける**: 単純線形モデル↔イベントツリー、複雑線形モデル↔フォールトツリー、非線形・システミックモデル↔機能共鳴という対応(ch.1 p.14-15)に照らすと、本ページが集約する Rasmussen の3境界モデル・AcciMap・CAST はいずれも「非線形・システミックモデル」側の実装例として位置づけられる。これらは固定された木構造でなく動的な因果関係・制御構造を表現しようとする点で、Hollnagel が機能共鳴モデルに求める性質(動的な結合の表現)を共有する。一方、イベントツリー・フォールトツリー(単純・複雑線形モデル側)に相当する具体的な適用事例は、本ページが集約する SRE 文脈のソースにはまだない。(Source: [[@2006__Ashgate__Resilience Engineering - Chapter 1 Resilience – the Challenge of the Unstable]], [[@1997__Safety Science__Risk management in a dynamic society - A modelling problem]])
- **プロローグと第1章は「失敗の定義」を独立の語彙で一致させつつ、第1章はそれをモデルの系譜という異なる軸に接続する**: [[@2006__Ashgate__Resilience Engineering - Prologue Resilience Engineering Concepts]] は「失敗とは、個人レベルであれシステムレベルであれ、複雑性に効果的に対処できない一時的な無能力を表す」と定義するが、第1章はこれを事故モデルの選択という問題に接続し、「システミックな視点では通常の遂行も失敗も創発的現象であり、失敗は複雑性への対処が一時的にできなくなった状態を表す」(ch.1 p.13-14)と述べたうえで、単純線形モデル・複雑線形モデルではこの失敗観そのものが成立しない(コンポーネントの故障として理解されてしまう)ことを示す。プロローグが失敗を定義する語彙は、第1章が整理する事故モデルの系譜のうち最終段階(非線形・システミックモデル)を前提として初めて成立することが分かる。(Source: [[@2006__Ashgate__Resilience Engineering - Prologue Resilience Engineering Concepts]], [[@2006__Ashgate__Resilience Engineering - Chapter 1 Resilience – the Challenge of the Unstable]])
## 未解決の問い
- Fin のケーススタディはRasmussenの3境界のうち性能・経済の2境界をトレーステレメトリに結合したが、「許容できない作業負荷」境界(エンジニアへの圧力)を同様にリアルタイム計測・SLO化した実例は本 wiki にまだない。エンジニアの認知負荷や変更疲労をテレメトリとして扱う手法はあるか。
- スイスチーズモデルの代替として、Hollnagel の FRAM(Functional Resonance Analysis Method)や Rasmussen の Risk Management Framework は SRE・インシデント分析にどこまで実用的に適用できるか。第1章(2006)が示す前身の「機能共鳴事故モデル(functional resonance accident model, Hollnagel, 2004)」は動的結合の表現という設計思想までは示すが、具体的な分析手順・実務適用コストは本ページ未確認(Source: [[@2006__Ashgate__Resilience Engineering - Chapter 1 Resilience – the Challenge of the Unstable]])。
- 「原因は構築される」という Dekker のテーゼは、AI によるインシデント自動分析と根本的に相容れないのか。LLM が生成する「根本原因分析」は本質的に特定のフレームを前提にした構築物であるが、それをどう評価すべきか。
- ソフトウェアシステムは Charles Perrow の言う「密接に結合した複雑系」に該当するか。マイクロサービス化やカオスエンジニアリングはこの文脈でどう位置づけられるか。
- 「Bad Apples モデルからスイスチーズモデルへ」という進化のナラティブは西洋安全工学の文脈で構築されたものだが、日本の安全工学(ゼロ災運動等)との接続はどうなるか。
- de Vesine の System/Environment モデルで「バグ」は Environment 側に分類されている(p.20)。しかしバグはエンジニアが書いたコードの誤りであり、System 側とも言える。この分類はなぜか。テスト・コードレビュー・CI が System に含まれるとすれば、バグを Environment に置く理由は「バグが存在することを前提に System を設計せよ」というメッセージか。(Source: [[@2022__SREcon22 EMEA__Principled Identification of Root Causes Using Techniques from Safety Engineering]] p.20)
- AcciMap([[@1997__Safety Science__Risk management in a dynamic society - A modelling problem]])と CAST/STAMP の理論的系譜は本 wiki 未検証。AcciMap の「社会技術階層上の因果マッピング」から STAMP の「制御構造理論」への発展はいつ・どのように起きたか。
- Rasmussen の境界モデルが「探索的実験がブラウン運動を生む」(Figure 3 中心の楕円)と述べる部分は、SREcon 系の二次引用では触れられてこなかった。この「実験による変動」という要素は、カオスエンジニアリング([[Casey Rosenthal]]、[[@2021__OReillyJapan__SREの探求 - Chapter 14 初めにカオスありき]])が「欠落した安全性シグナルを人為的に生成する」と位置づける能動的検証と、どの程度概念的に近いか。原論文の記述は自然発生的な変動を指しており、意図的なカオス注入とは異なるはずだが、両者の関係は未整理。
## 関連
- [[ポストモーテム]] — 事故モデルの選択がポストモーテムの「原因」記述と改善策の質を規定する
- [[Human-out-of-the-loop]] — 人間を意思決定から外すことへの懸念と事故モデルの関係
- [[@2016__SREcon16Europe__Accident Models in Post Mortems]] — 事故モデルの系譜を SRE 文脈で整理した講演
- [[@2019__SREcon19 Asia__A Tale of Two Postmortems - A Human Factors View]] — Human Factors 視点からの同主題の深化
- [[@2026__OReilly__Observability Engineering 2E - Chapter 22 Fin’s Case Study in Modern Engineering]] — Rasmussen の安全モデルをオブザーバビリティ設計原則として転用した事例
- [[AcciMap]] — Rasmussen が提示したもう一つの事故分析手法(社会技術階層上の因果マッピング)
- [[@1997__Safety Science__Risk management in a dynamic society - A modelling problem]] — 3境界モデルおよび AcciMap の一次資料(原論文)
- [[@2006__Ashgate__Resilience Engineering - Chapter 1 Resilience – the Challenge of the Unstable]] — 単純線形/複雑線形/非線形・システミックモデルの3系統と、対応するリスク評価手法(イベントツリー/フォールトツリー/機能共鳴)を整理する一次資料
- [[レジリエンスエンジニアリング]] — 事故モデルの選択がレジリエンスの理解そのものを規定するという第1章の主張の集約先
## 出典
- [[@2016__SREcon16Europe__Accident Models in Post Mortems]] (p.15-37)
- [[@2019__SREcon19 Asia__A Tale of Two Postmortems - A Human Factors View]]
- [[@2022__SREcon22 EMEA__Principled Identification of Root Causes Using Techniques from Safety Engineering]] (p.13-15・p.20: System/Environment モデルと用語再定義)
- [[@1997__Safety Science__Risk management in a dynamic society - A modelling problem]] (Figure 2・Figure 3: Zeebrügge 事故分析と境界へのドリフトモデルの原典)
- [[@2022__SREcon22APAC__A Post Incident Review Review]] (p.15-16: Rasmussen Safety Model; p.21: Causal Map; p.22: Swiss Cheese Model)
- [[@2026__OReilly__Observability Engineering 2E - Chapter 22 Fin’s Case Study in Modern Engineering]]("Empathy": Rasmussenの3境界を用いてオブザーバビリティの「最後の1マイル」を論じる)
- [[@2006__Ashgate__Resilience Engineering - Chapter 1 Resilience – the Challenge of the Unstable]] — Hollnagel, E., "Resilience – the Challenge of the Unstable," in Hollnagel, E., Woods, D. D., & Leveson, N. (Eds.), *Resilience Engineering: Concepts and Precepts*, Ashgate, 2006, Chapter 1(p.10-17: 事故モデルの系譜とリスク評価手法の対応)