• Главная
  • О сайте
  • Архив

Normal testing

From the programmer's worst friend

Feeds:
Записи
Комментарии
« Че Гевары настольных систем в мире Linux
Основные «фишки» скриншотера SnagIt »

Разница между ошибкой (багом) и дефектом (тоже багом)

12.01.2009 Автор: Alexei Lupan

Очередной сайт «Software Quality Assurance Interview Questions and Answers» подкинул то, над чем я когда-то искренне смеялся:

20. What is Bug?

A fault in a program which causes the program to perform in an unintended or unanticipated manner.

20. What is Defect?

If software misses some feature or function from what is there in requirement it is called as defect.

Причина смеха: это же взаимозаменяемые понятия.

Но, с точки зрения грамматики, разница есть.

Толковый словарь говорит, что разница в терминах есть:

  • Дефект
    • недостаток,
    • изъян,
    • повреждение.
  • Ошибка
    • неправильность в действиях, поступках, суждениях, мыслях.
    • отклонение от правильного употребления.
    • погрешность.
    • то, что невозможно рассчитать и предсказать заранее, опираясь на накопленные знания.

По этим выкладкам, наиболее близкий перевод для ‘bug’ > ‘ошибка’.

Дефект = ошибка?

Нет. Сам по себе дефект не ошибка. Дефект возникает как следствие ошибки. Но они сопутствуют друг другу, поэтому могут быть восприняты совместно.

В чем же их синонимность?

Ошибка:

грех, погрешность, заблуждение, неловкость, оплошность, опечатка, описка, отступление, промах, уклонение, упущение, неправильность, шероховатость, ложный шаг, провес, промер, просмотр, просчет, аномалия, уродливость. Сопутствующий термин: Недостаток.

Недостаток:

изъян, недосмотр, недочет, неисправность, неправильность, несовершенство, грех, порок, порча, повреждение, пробел, прореха, пятно, аномалия, дефект, слабость, слабое (больное) место, ахиллесова пята.

Следовательно,

> Ошибка

> > Недостаток

> > > Дефект.

Рассматривать эти термины совместно — можно. Подменять — нет.

Баг = ошибка = дефект — в зависимости от контекста.

Добавим перцу

и поговорим как английские лорды с милордами о той же пошаговой стратегии определения терминов:

Mistake

Ошибка. Человеческое деяние, которое в конечном итоге привело к получению неверного результата.

Сказал бы  «неожиданного», но это уводит нас в другой контекст.

В широком смысле — непреднамеренное отклонение от истины или правил.

Оригинал: A human action that produces an incorrect result.

Fault

Дефект, изъян. Неверный шаг (или процесс, или определение данных) в компутерной программе. Первая причина для появления ошибки, потенциальная причина неисправности.

Оригинал: An incorrect step, process, or data definition in a computer program. The outgrowth of the mistake, potentially leads to failure.

Failure

Неисправность. Неправильный результат. Собственно, результат дефекта.

Оригинал: An incorrect result. The result of the fault (e.g. a crash).

Error

Невозможность выполнить задачу (или получить верный результат) вследствие того, что где-то случилась ошибка, которая привела к дефекту, который вызвал неисправность, которая привела к невозможности сделать то, чего мы тут намеревались (евангелие от Антивируса, стих 256, строка 00).

Оригинал: A failure to complete a task, usually involving a premature termination.

Есть еще один распространенный вариант» The amount by which the result is incorrect, но внятно перевести это на русский я не могу. Что-то вроде «насколько неправилен результат»…

Ваша оценка:

Поделиться ссылкой:

  • Tweet
  • по электронной почте
  • Печать

Понравилось это:

Нравится Загрузка...

Похожее

Опубликовано в Банальное, Постановка мозгов, Соображения | Отмечено Словарь | 20 комментариев

комментариев 20

  1. на 30.01.2009 в 14:34 Алексей Лупан

    Совершенно верно.

    НравитсяНравится


  2. на 30.01.2009 в 14:08 oldyew

    т.е. все проблемы — это баги (насекомые), но в зависимости от места в системе, это или бабочки, или жуки, или стрекозы, так?
    или по другому —
    customer view — it’s a bug aka defect
    solution architect view — it’s a mistake
    manager view — it’s a failure
    developer view — it’s a fault
    tester view — it’s an error

    НравитсяНравится


  3. на 30.01.2009 в 13:35 Алексей Лупан

    Как так — вывода нет?

    Ошибка

    > > Недостаток

    > > > Дефект.

    Рассматривать эти термины совместно — можно. Подменять — нет.

    Баг = ошибка = дефект — в зависимости от контекста.

    НравитсяНравится


  4. на 30.01.2009 в 12:56 oldyew

    тогда тема поста, на основе заголовка не раскрыта 😦
    вывода нет…

    НравитсяНравится


  5. на 30.01.2009 в 10:55 Алексей Лупан

    Баг — очень общий термин, культурный вариант ответа на «Wtf?»

    Пример:
    — It doesn’t work! Nothing works! Wtf?
    — It’s a bug.

    А дальше уже можно разбираться, что это конкретно — ошибка, дефект, неисправность.

    Бо «Nothing works!» может иметь очень много причин 🙂

    НравитсяНравится


  6. на 29.01.2009 в 23:58 oldyew

    если исходить из природы багов (история про бабочку в схеме), то она бабочка, будет являться чем?

    идея — правильная
    воплощение (схема) — работает
    !в схеме залипает бабочка
    ->возникает неисправность->и невозможность выполнить задачу

    и мы приходим к тому, что в системе не была предусмотрена валидация на бабочку… таки-да!

    и что самое забавное, баг — это не то, что стало следствием, а то что было причиной:) незапланированный вариант использования системы…

    что скажете?

    НравитсяНравится


  7. на 29.01.2009 в 23:44 oldyew

    и еще немного перца для афтора:)

    а где же в финальной классификации место для термина BUG?

    НравитсяНравится


  8. на 13.01.2009 в 06:54 Alexei Barantsev

    Ну раз уж это для статистики, то нет большого смысла разделять только на два класса, лучше ввести числовую метрику — срок жизни дефекта, единица измерения количество билдов/релизов/версий, которые этот дефект пережил, и построить график.

    Что касается употребления терминов, у меня всегда стандартный ответ — в своей команде можно договориться называть что угодно как угодно, потому что все «в теме». Главное — не нарваться на проблемы при общении с внешними людьми, которые не знают о ваших договорённостях.

    НравитсяНравится


  9. на 12.01.2009 в 22:52 Nicky

    Приветствую.

    Для меня эти два бага различаются примерно так (если очень грубо описать):

    если не работает или работает плохо = дефект.

    а если работает, но не правильно = ошибка.

    НравитсяНравится


  10. на 12.01.2009 в 21:00 brezenix

    Это дает возможность определить качество тестирование. Большее количество ошибок говорит о том, что тестировщики их пропустили. Вообщем, для отчетности и статистики.

    |Кстати, а если дефект проявляется в текущей версии, в |предыдущей не проявляется, а две версии тому назад |проявлялся — тогда как его назвать?
    Эт глюк 🙂
    Если серьезно, то тут нужно смотреть в каком именно функционале он проявляется и делались ли в этом участке изменения в коде, и уже в зависимости от этого классифицировать.

    НравитсяНравится


  11. на 12.01.2009 в 19:13 Alexei Barantsev

    brezenix — такое употребление терминов запросто может привести к непониманию, если специально не объяснить слушателям или читателям, что имеется в виду.

    Не лучше ли просто говорить, например, «старый дефект» и «новый дефект», ну или как-то примерно так?

    (Кстати, а если дефект проявляется в текущей версии, в предыдущей не проявляется, а две версии тому назад проявлялся — тогда как его назвать? 🙂 )

    НравитсяНравится


  12. на 12.01.2009 в 19:02 Алексей Лупан

    brezenix — в чем преимущество такой классификации?

    НравитсяНравится


  13. на 12.01.2009 в 18:53 brezenix

    Я классифицирую так:
    Ошибка — баг, который проявляется и в текущей (тестируемой) версии, и в предыдущей.
    Дефект — баг, который проявляется только в тестируемой.

    НравитсяНравится


  14. на 12.01.2009 в 15:50 Алексей Лупан

    Запись слегка обновлена.

    НравитсяНравится


  15. на 12.01.2009 в 15:43 Alexei Barantsev

    Не смотри на переводы, читай английский толковый словарь. Объяснение в ISTQB хорошее.

    Ошибка (error или mistake) — это акт программиста (человека, human being), который приводит к появлению дефекта (defect) в программе. И этот дефект там живёт, может быть долго, и всё хорошо, но в какой-то момент случается сбой (fault или failure).

    Сбой — это видимое проявление дефекта. А дефект — это результат ошибки, совершённой программистом.

    То, что иногда термины взаимозаменяются, определяется тем, что человеческий язык гибок, неформален, и понимание смысла слова определяется не только им самим, но также контекстом. Так что можно говорить, что «программист сделал ошибку», «в программе есть ошибка (в смысле дефект)» и «при работе программы случилась ошибка (в смысле сбой)» — из контекста ясно, что имеется в виду.

    НравитсяНравится


  16. на 12.01.2009 в 14:47 Алексей Лупан

    Что-то меня переводы слова fault не вдохновляют.

    I.

    Computers (En-Ru) (for ABBYY Lingvo 12)

    The English-Russian Dictionary of Computers, Internet, and Programming. © E.M. Proydakov, L.A. Teplitsky, 1998-2006. 13,800 entries.

    fault — неисправность, отказ, ошибка, сбой; дефект, повреждение; выход из строя любое условие, вызывающее частичную или полную неработоспособность или неправильное функционирование аппаратных средств

    См. также: bug , error , failure , fault avoidance , fault detection , fault isolation , fault management , fault masking , fault resiliency , fault tolerance , malfunction , MTBF

    II.

    Engineering (En-Ru) (for ABBYY Lingvo 12)

    The English-Russian Dictionary of Mechanical Engineering and Industrial Automation. © RUSSO, 2003, B.S. Voskoboinikov, V.L. Mitrovich. 110,000 words and expressions.

    fault
    1) неисправность; повреждение
    2) дефект; порок; изъян
    3) ошибка; погрешность
    4) сбой; отказ

    И тут, и там, fault — и дефект, и ошибка…

    НравитсяНравится


  17. на 12.01.2009 в 14:21 Алексей

    Приведу цитату из «Certified tester / Foundation Level Sylabus» version 2007, ISTQB

    1.1.2 Couses of software defects
    A human being can make an error (mistake), which produces a defect (fault, bug) in the code, in software or a system, or in a document. If a defect in code is executed, the system will fail to do what it should do (or do something it souldn’t), causing a failure. Defects in software, systems or documents may result in failures, but not all defects do so.

    НравитсяНравится


  18. на 12.01.2009 в 13:28 Алексей Лупан

    То есть, я склоняюсь к тому, что под «багом» подразумевается, в первую очередь, наличие ошибки, которое привело к дефекту.

    НравитсяНравится


  19. на 12.01.2009 в 13:26 Алексей Лупан

    Сначала рассмотрел.

    Потом слегка заколебался (от «колебаться при выборе»).

    В русском языке термины «ошибка» и «дефект» подразумеваются как отдельные, хотя используются совместно и даже взаимоподменяются.

    Попытался найти системность и источник разночтений между «ошибка» и «дефект». Если судить по моим шагам, то, вроде бы, причина разночтений этих терминов и момент, в котором они «сходятся», раскрыт.

    Словарь: Explanatory (Ru-Ru) (for ABBYY Lingvo 12)
    The Comprehensive Dictionary of the Contemporary Russian Language. © 2006, T.F. Yefremova. 180,000 entries.

    НравитсяНравится


  20. на 12.01.2009 в 13:18 Alexei Barantsev

    Алексей, а ты не рассматриваешь возможность того, что в этом “Software Quality Assurance Interview Questions and Answers” лажа написана?

    Толковый словарь, который ты процитировал (не знаю, какой именно) даёт весьма неплохое трактование терминам «дефект» и «ошибка».

    А вот этот самый «bug», что по-русски, что по-английски — ну фигня фигнёй, чес-слово.

    НравитсяНравится



Обсуждение закрыто.

  • Aut bene

    Спiвпрацювальник по підготувальні тестувальників.

    Автор [глоссария] терминологии тестирования (english).

    Неоднократный докладчик [SQA Days], [QA Fest] и других конференций по тестированию ПО.

    Неспешный езжун на «[Волга ГАЗ-21]» 1965 года выпуска.

    Игрун чего-то похожего на тяжелый блюз [на классической гитаре].

    И так [далее].

  • Присоединиться к ещё 1 337 подписчикам

  • Follow Normal testing on WordPress.com
  • Залежи

  • Темы

    • Без рубрики (6)
    • Документация (18)
      • Тест-план (2)
    • Изображения (149)
      • Видео (49)
      • Комиксы (20)
      • Скриншоты (48)
      • Фотографии (46)
    • Инструменты (53)
      • Debian (13)
      • Макросы (1)
      • Трекеры (15)
        • Баг-трекер (8)
        • Тест-трекер (5)
      • LibreOffice (4)
    • Книги (19)
    • Конференции (138)
      • Подкасты (12)
      • Презентации (50)
        • Слайдкасты (10)
      • Семинары (19)
    • Обзоры (1)
    • Постановка мозгов (246)
      • Банальное (168)
        • Не смешно (47)
        • Неприятно (14)
        • Печали (15)
        • Радости (57)
        • Смешно (35)
      • В гостях у психиатра (45)
        • Поросенок v2.0 (3)
        • Странности (12)
        • Удивительные баги (17)
      • Level 80 (2)
    • Соображения (206)
      • Балабольник (10)
      • Гипотезы (11)
      • Озарения (55)
      • Откровения (88)
    • Статьи (23)
      • Интервью (6)
      • Опросы (1)
      • Переводы (11)
    • Управляторское (56)
      • Agile (13)
      • Программисты (23)
      • Рекрутинг (8)
    • Учеба в бою (83)
      • Тренировка (13)
      • Фишки (28)
      • Читерство (9)
    • Testing like… (79)
      • Acceptance testing (5)
      • Business Driven Testing (2)
      • Context-driven testing (2)
      • Defect-based Test Design Technique (1)
      • Автоматизация (37)
        • Performance Testing (5)
      • Рецессионное тестирование (1)
      • Юзероиммитатор (15)
      • Exploratory testing (9)
      • тест-дизайн (8)
      • State Transition testing (1)
      • Unit testing (1)
      • Usability testing (2)
    • To Do (12)
      • Анонсы (7)
  • Тэги

    Calc Excel James Bach Jira Mantis SQA Days SQA Days 7 SQA Days 8 SQA Days 10 Александр Александров Александр Орлов Алексей Баранцев Наталья Руколь Хватит тупить Юля Нечаева
  • Самое читаемое

    • Тестируем поля логин/пароль
    • Priority & Severity на пальцах обезъянок
    • Очень конкретная разница между верификацией и валидацией
    • Как в Excel отображать символ валюты перед цифрами
    • Что такое перформанс-тестирование
    • Основные положения тестирования
    • Разница между ошибкой (багом) и дефектом (тоже багом)
    • План тестирования должен быть внятным, четким, небольшим
    • Запуск Allpairs
    • Группирование данных в Excel
  • Комментарии

    • Alexei Lupan к записи S3E13: Про Тест планы и тест стратегии в 2020 году
    • esculapandreevgmailcom к записи S3E13: Про Тест планы и тест стратегии в 2020 году
    • Alexei Lupan к записи Сетап для преподавания в сети
    • Сергей к записи Сетап для преподавания в сети
    • Alexei Lupan к записи Сетап для преподавания в сети
    • Дмитрий к записи Сетап для преподавания в сети
    • Сетап для преподавания в сети | Normal testing к записи Оценка времени на тестирование: неочевидные надводные камни
  • Блоги о тестировании

    • 1) Блоги тестировщиков на software-testing.ru
    • Про тестинг
    • Selenium IDE — rulezzz!
  • Профессиональное

    • Удобный софт
    • Управление тестированием
    • IT Crowd wikiquotes
    • Testing History

На платформе WordPress.com.

WPThemes.


loading Отмена
Сообщение не было отправлено — проверьте адреса электронной почты!
Проверка по электронной почте не удалась, попробуйте еще раз
К сожалению, ваш блог не может делиться ссылками на записи по электронной почте.
Политика конфиденциальности и использования файлов сookie: Этот сайт использует файлы cookie. Продолжая пользоваться сайтом, вы соглашаетесь с их использованием.
Дополнительную информацию, в том числе об управлении файлами cookie, можно найти здесь: Политика использования файлов cookie
%d такие блоггеры, как: