ソフトウェアの欠陥の原因
まとめ
人間はエラーを起こす。エラーがコード、ソフトウェア、ドキュメントの欠陥になる。コードの欠陥が実行されると故障が起きる。
オペレータがソフトウェアを操作したら想定と違う動作(インシデント)を発見した。そのインシデントを調査した結果、故障だと判明。故障の原因はとあるコードのバグによるものだった。そのバグはAさんの誤りによりコードに埋め込まれていた。
エラー/誤り
間違った結果を生み出す人間の行為。
エラーがコード、ソフトウェア、システム、ドキュメントの欠陥となる。
バグ/欠陥/フォールト(fault)
要求された機能をコンポーネントまたはシステムに果たせなくする、コンポーネントまたはシステムの中の不備。
エラーによってプログラム中にフォールトを埋め込んで実装してしまう。
故障(failure)
コンポーネントやシステムが、期待した機能、サービス、結果を提供できないこと。
すべての欠陥が故障となるわけではない、欠陥の含まれたコードが実行されなければ、故障にはならない。
インシデント
ソフトウェア・システムを実際に使うユーザーやテスト担当者が期待する動きと、実際の動きが一致しない事象。
インシデントと故障は同じではない。インシデントを調査した結果、故障ではなくユーザーのオペミスという場合もありえる。