Error Concept
This article organizes the concepts and terminology of errors in SimpleModeling.
Ambiguity of IEEE Error
IEEE 610.12-1990 provides four different meanings for the term "error".
| No. | IEEE Definition | Example |
|---|---|---|
|
(1) |
The difference between a computed, observed, or measured value and the true, specified, or theoretically correct value |
The computed result deviates 30 meters from the correct value |
|
(2) |
An incorrect step, process, or data definition |
A program contains an incorrect instruction |
|
(3) |
An incorrect result |
The computed result is 12 instead of the expected 10 |
|
(4) |
A human action that produces an incorrect result |
A programmer or operator makes an incorrect action |
Historically, all of these were referred to as "error," but in SimpleModeling they are reorganized as follows:
-
(1) → Deviation
-
(2) → Fault / Defect
-
(3) → Failure
-
(4) → Mistake
Organization of Error Concepts
The causal chain, based on this organization, is as follows:
- Mistake (4)
-
A human mistake (incorrect action or decision).
- Defect (2)
-
An imperfection or deficiency in a work product that does not meet its requirements or specifications.
- Fault (2)
-
The technical manifestation of a defect within the system, capable of causing failures.
- Failure (3)
-
The inability of a system or component to perform its required functions within specified limits.
- Deviation (1)
-
The difference between a computed/observed value and the true value.
ISO/IEC 24765 inherits the IEEE definitions while explicitly adding Defect to strengthen the framework.
Terminology Conflict with Java
“Error” has been used ambiguously in software engineering. IEEE defines it as a human mistake, while Java uses the Error class to denote fatal failures, causing confusion.
Since SimpleModeling spans from modeling to programming and adopts the Java ecosystem (including Scala 3), directly adopting IEEE’s concept of Error leads to terminology conflicts.
Therefore, in SimpleModeling, Error is treated as a generic expression, while the main conceptual framework is based on Mistake–Defect–Fault–Failure–Deviation.
Definition in SimpleModeling
| IEEE Error No. | SimpleModeling Term | Treatment |
|---|---|---|
|
(1) Difference from true value |
Deviation |
Phenomenon, recorded in Observation |
|
(2) Incorrect step/process/data |
Fault / Defect |
Cause, internal defects in artifacts or system |
|
(3) Incorrect result |
Failure |
Phenomenon, externalized and recorded |
|
(4) Human action mistake |
Mistake |
Cause, human-originated mistake |
This organization distinguishes Error (generic) from Mistake (human mistake), while ensuring consistent treatment of Defect, Fault, Failure, and Deviation.
Observation
Observations are the systematic recording of phenomena occurring during system operation. Some of the defined phenomena and causes are directly or indirectly linked to the error concepts of Mistake, Defect, Fault, Failure, and Deviation.
Relation to Error Concept
In Observations, Failure and Deviation (phenomena), Defect/Fault (causes), and indirectly Mistake (human cause) are connected to the defined error concepts. This integration aligns the ISO/IEC 24765 terminology with operational recording mechanisms.
As a result, error concepts of SimpleModeling become not only an analytical framework but also the foundation for practical observational activities such as logging, auditing, monitoring, and continuous improvement.
Glossary
| Term | Definition |
|---|---|
|
Bug |
A colloquial term referring to software problems. It has no strict technical definition and is often used broadly to cover Defects, Faults, or Failures. |
|
Defect |
An imperfection or deficiency in a work product (designs, specifications, code, etc.). It does not meet requirements or specifications and requires repair or replacement. Defined in ISO/IEC 24765. |
|
Deviation |
The state in which a computed or observed value differs from a baseline or true value. Represents a measurable quantitative discrepancy. |
|
Error |
A generic term used broadly in practice. In software engineering, it is ambiguous and may denote bugs or failures in general. In SimpleModeling, Error is treated as a broad label, with specifics clarified as Mistake, Defect, Fault, Failure, or Deviation. |
|
Failure |
The inability of a system or component to perform a required function within specified limits. An externally observable phenomenon. |
|
Fault |
A manifestation of a defect within the system. A technical imperfection that, if encountered during execution, may cause a Failure. Defined in IEEE 610.12. |
|
Mistake |
A human action or decision that is incorrect. Refers to mistakes made by designers, developers, or operators. Rarely observed directly but leads to Defects or Faults that manifest as Failures or Deviations. |