Понятие «баг» или «бaга» произошло от английского сленгового «bug», которое является определением любого просчета, дефекта или неточности в механизмах, проектах и пр. Web-разработчики называют багом ошибки, приводящие к неправильной работе ресурса или алгоритма.
Существует несколько предположений, почему изменился смысл слова, которое изначально переводилось как «жучок» или «букашка». Согласно одному из них, во время тестирования вычислительной машины в Гарварде причиной остановки стал мотылек, попавший в контакты реле. С тех пор слово «баг» среди программистов стало нарицательным для любых неполадок.
«Тут у тебя прокрался хитрый баг, сразу и не найдешь»
«Заметил серию багов на сайте» – на web-ресурсе найдены критические повреждения, требующие вмешательства.
«Бажный движок» – CMS, предназначенная для разработки сайта или иной площадки повреждена и не предназначена к использованию.
Также багами называют:
- Незначительные программные или текстовые искажения;
- Расхождение с требованиями или спецификацией;
- Выдается программная или системная ошибка;
- Сбой программы, который привел к непредвиденному завершению;
- Ситуация, когда программа «зависла» и требуется перезагрузка;
- Ошибки, допущенные в процессе разработки дизайна или программного интерфейса, препятствующие нормальной работе.
Баги классифицируют по «серьезности ошибки» и приоритетности исправления дефекта:
- Blocker (препятствующие), которые блокируют последующую работу с тестируемой системой или ее основными функциями.
- Critical (критическая), требующая немедленного решения. Это может быть сбой в общей системе безопасности или сервер «падает» (прекращает принимать запросы по каким-либо причинам).
- Major (важные) – некорректная работа системы, но сохраняется возможность работы с использованием альтернативных входных точек.
- Minor (минимальные, незначительные), которые обычно исправляют в плановом режиме по мере накопления: технические ошибки на странице администратора, опечатки и пр.
- Trivial (тривиальная) – не привлекающая внимания проблема, связанная со сторонними сервисами и не производящая видимого воздействия на качество продукта в целом.
Наиболее редко встречаются баги «Normal» – это кратковременные сбои в работе программы, неработающие кнопки или сбой эффектов на игровых площадках.
По приоритетности корректировки выделяют баги «High», «Medium» и «Low». Работу с ними обычно производят по степени влияния на функции системы. Все требования предварительно должны быть оговорены и задокументированы на стадии принятия решения о качестве разрабатываемого продукта.
Также различают подгруппы типа: «fix if time», требующие исправления по мере возможности, «fix in release», обнаруженные при тестировании (остаются до выхода новой версии) и незначительные «never fix», которые оставляют без изменений.