В инженерии ошибка - это дефект в конструкции, производстве или эксплуатации оборудования, схем, электроника, аппаратное обеспечение или программное обеспечение, приводящие к нежелательным результатам или препятствующие работе. Это контрастирует с ошибкой , которая может быть только временной. Иногда то, что может рассматриваться как непреднамеренная или неправильная операция, может рассматриваться как функция.
Среднеанглийское слово bugge является основой для терминов «bugbear » и «bugaboo. "как термины, используемые для обозначения монстра.
Термин" ошибка "для описания дефектов был частью инженерного жаргона с 1870-х годов и возник до появления электронных компьютеров и компьютерного программного обеспечения; возможно, изначально он использовался в аппаратной инженерии для описания механических неисправностей. Например, Томас Эдисон написал следующие слова в письме своему сотруднику в 1878 году:
Так было во всех моих изобретениях. Первым шагом является интуиция, и она приходит с порывом, затем возникают трудности - эта штука выдает, и [это] затем, что «жуки» - как называются такие маленькие ошибки и трудности - проявляют себя и месяцы интенсивного наблюдения, изучения и труд необходимы, прежде чем будет достигнут коммерческий успех или провал.
Baffle Ball, первая механическая игра в пинбол, в 1931 году рекламировалась как «свободная от ошибок». Проблемы с военным снаряжением во время Второй мировой войны считались ошибками (или сбоями ). В фильме 1940 года Flight Command дефект в части радиопеленгатора называется «ошибкой». В книге, опубликованной в 1942 году, Луиза Дикинсон Рич, говоря о механизированной машине для резки льда, сказала: «Распиловка льда была приостановлена до тех пор, пока не появится создатель, чтобы устранить жучков. своего любимого ».
Айзек Азимов использовал термин« ошибка »для обозначения проблем с роботом в своем рассказе« Поймай этого кролика », опубликованном в 1944 году.
A страница из журнала электромеханического компьютера Harvard Mark II с изображением мертвой мотылька, удаленной с устройства.Термин «ошибка» использовался в описании компьютерного пионера Грейс Хоппер, который объявил причину неисправности в одном из первых электромеханических компьютеров. Типичная версия этой истории такова:
В 1946 году, когда Хоппер была освобождена от действующей службы, она поступила на Гарвардский факультет в вычислительную лабораторию, где продолжила свою работу над Mark II и Марка III. Операторы связали ошибку в Mark II с мотыльком, застрявшим в реле, придумав термин «ошибка». Этот баг был аккуратно удален и записан в журнал. Исходя из первой ошибки, сегодня мы называем ошибки или сбои в программе ошибкой.
Хоппер не нашла ошибку, что она с готовностью признала. В бортовом журнале была дата 9 сентября 1947 года. Операторы, которые его нашли, включая Уильяма «Билла» Берка, позже работавшего в Лаборатории военно-морского оружия, Дальгрен, Вирджиния, были знакомы с инженерным термином и забавно сохранил насекомое с пометкой «Первый реальный случай обнаружения ошибки». Хоппер любил пересказывать эту историю. Этот журнал, вместе с прикрепленным к нему мотыльком, является частью коллекции Смитсоновского Национального музея американской истории.
Родственный термин «отладка » также появился раньше, чем его использовали в вычислениях: Оксфордский словарь английского языка этимология слова содержит свидетельство 1945 года в контексте авиационных двигателей.
Некоторые пользовательские ошибки работают так, как задумано дизайнером, что отражает несоответствие между спецификациями и ожиданиями пользователей. Иногда рассматриваемое поведение записывается в пользовательской документации или оплачивается как недокументированная функция, которая фиксируется крылатой фразой «Это не ошибка, это функция» (INABIAF). Эта шутка записана в The Jargon File, датируемой 1975 годом и, возможно, предшествующей этому.