Glossary · Automation software engineering and architecture
Bug
Also known as: Software defect, Software bug
German: Programmfehler
In software engineering, a bug is a defect in software, such as an error in code, configuration or design, that can cause the software to behave differently from its specification or intended behavior when it is executed under certain conditions.
- Software engineering
In one sentence
A bug is a defect in software that can make it behave differently from its specification or intended behavior.
Example
A bug in the recipe download routine truncates parameter names longer than 24 characters, so some recipes load with default values.
How it applies
- Engineering: Bugs are found by reviews, static and dynamic analysis, tests and field reports. A defect tracking system records each bug with affected versions, severity, root cause and fix.
- Maintenance: Fixing a bug is a change like any other: it needs Impact analysis, testing and release under Change control. Regression tests make sure the bug does not return.
- Documentation: Known issues and fixed bugs belong in release notes. If a bug affects how operators use the machine, the documentation team may need to publish a workaround or update the manual until the fix is installed.
Error, defect and failure
In software engineering vocabulary, a human error (mistake) introduces a defect (bug, fault) into the software; when the defect is executed under certain conditions, it can cause a failure, a visible deviation from required behavior. Keeping these terms apart helps in root-cause analysis and in functional safety work, where systematic faults are treated differently from random hardware failures.