エラー・コンセプト

SimpleModelingにおけるエラー概念と用語体系について整理します。

IEEE Errorの多義性

IEEE 610.12-1990 では error に対して次の4つの意味を与えています。

No. IEEE Definition

(1)

The difference between a computed, observed, or measured value and the true, specified, or theoretically correct value

計算結果が正しい値から30mずれている

(2)

An incorrect step, process, or data definition

プログラムに誤った命令がある

(3)

An incorrect result

期待値10に対して計算結果12

(4)

A human action that produces an incorrect result

プログラマやオペレータの操作ミス

これらは歴史的にはすべて "error" の語で呼ばれてきましたが、SimpleModelingでは次のように整理します。

  • (1) → Deviation(逸脱)

  • (2) → Fault(障害要因)/Defect(欠陥)

  • (3) → Failure(故障)

  • (4) → Mistacke(過誤 - 人間の誤った行為)

エラー概念の整理

整理結果に基づく因果連鎖は次のようになります。

Mistake (4)

人間による過誤。

Defect (2)

成果物に存在する誤りの総称。

Fault (2)

Defectがシステム内部で具現化した技術的欠陥。

Failure (3)

システムやコンポーネントが要求機能を実行できない現象。

Deviation (1)

計算値や観測値の真値からの逸脱。

ISO/IEC 24765 は IEEEの定義を継承しつつ、Defect を明示的に追加して体系を補強しています。

Javaとの用語衝突

「エラー」という語はソフトウェア工学において多義的に使われてきました。IEEE では人間の過誤を Error と定義していますが、Java では Error クラスが致命的障害を表すため、混乱を招きやすくなっています。

SimpleModelingはモデリングからプログラミングまでをスコープにし、Javaエコシステム(Scala 3を含む)を前提とします。このためIEEEのError概念をそのまま採用すると用語衝突が発生します。

そこでSimpleModelingではErrorを汎用的表現とし、主要な概念体系は Mistake–Defect–Fault–Failure–Deviation に基づかせます。

SimpleModelingでの定義

IEEE Error番号 SimpleModelingでの用語 扱い

(1) Difference from true value

Deviation

Observationで記録

(2) Incorrect step/process/data

Fault / Defect

内部要因

(3) Incorrect result

Failure

外部に表出しObservationで記録

(4) Human action mistake

Mistake

人間由来の原因

この整理により、Error(汎用語)と Mistake(人間の過誤)を区別しつつ、Defect, Fault, Failure, Deviation の位置づけを一貫して扱うことができます。

日本語用語

Defect・Fault・Failure・Deviation・Error・Mistake の訳語は以下の通りです。

英語 日本語

Defect

欠陥

Fault

障害要因

Failure

故障

Deviation

逸脱

Error

エラー

Mistake

過誤

Fault は一般に「欠陥」と訳されますが、Defect と区別するために SimpleModeling では「障害要因」としています。 == 観測記録

観測記録(Observation)は、システム運用中に発生する現象を体系的に記録する仕組みです。ここで定義される現象や原因の一部は、エラー概念の Mistake・Defect・Fault・Failure・Deviation と間接的または直接的に結びつきます。

現象

  • Failure

  • Rejection

  • Incident

  • Deviation

この中で Failure および Deviation がエラー由来の現象に対応します。

原因

  • Defect

  • Fault

  • Anomaly

  • Root Cause

この中で Defect と Fault がエラー由来の原因に対応します。また Mistake(過誤)は人間由来の行為であり直接的には記録されませんが、それが Defect や Fault を生み出し、最終的に Failure や Deviation として観測されます。

エラー概念との関係

観測記録における Failure(現象)、Deviation(現象)、Defect・Fault(原因)、そして間接的に Mistake(人間由来の過誤)は、それぞれエラー概念で定義された内容と接続されます。これにより、ISO/IEC 24765 で整理された用語体系と運用上の記録が統合されます。

結果として、SimpleModelingのエラーコンセプトは単なる分析の枠組みにとどまらず、ログ、監査証跡、モニタリング、継続的改善といった実務的な観測活動の基盤となります。

用語定義

用語 定義

バグ (bug)

俗語的にソフトウェアの不具合を指す用語。厳密な技術的定義はなく、Defect や Fault、Failure を広く含む日常的な表現。

欠陥 (defect)

成果物(設計書、仕様書、コードなど)に存在する不完全さや不足。要求や仕様を満たさず、修正や置換が必要となる状態。ISO/IEC 24765 に基づく。

逸脱 (deviation)

計算値や観測値が、基準値や真値から外れている状態。観測可能な量的ずれを表す。

エラー (error)

汎用的な表現として用いられる用語。ソフトウェア工学では多義的に使われ、バグや障害全般を指す。SimpleModeling では広義のラベルとして使用し、個別には Mistake・Defect・Fault・Failure・Deviation に整理する。

故障 (failure)

システムまたはコンポーネントが要求された機能を規定条件内で実行できない状態。外部に表出し観測される現象。

障害要因 (fault)

システム内部に存在する技術的な欠陥。Defect が具現化したもので、実行時に Failure を引き起こす可能性がある。IEEE 610.12 に基づく。

過誤 (mistake)

人間の行為や判断の過誤。設計者・開発者・運用者による誤操作や誤判断を指す。直接は観測されにくいが、Defect や Fault を通じて Failure や Deviation に結びつく。

補足

Mistake はエラー連鎖の起点であり、Defect を導入し、それが Fault となり、最終的に Failure や Deviation として実行時に観測される。