Как измерить плотность дефектов?

Существует ли стандартный способ измерения плотности дефектов? Большинство сайтов онлайн заявляют, что это должно быть измерено как:

number of defects discovered / the code size

Мои вопросы:

  • Должны ли дефекты, "исправленные" в течение периода, вычитаться из обнаруженных дефектов?
  • Что делать с дефектами, которые решено исправить в следующем выпуске, из-за нехватки времени? Должны ли эти дефекты отставания быть добавлены в плотность следующего выпуска?
  • KLOC в знаменателе, вероятно, не является хорошей мерой, если было доказано, что код излишне раздут из-за сильного дублирования. Как следует учитывать это?
  • Можно ли сопоставить отток в конкретный период времени и существующее отставание дефектов для определенного модуля с количеством дефектов, созданных / обнаруженных в результате оттока

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

5 ответов

Решение

Я предполагаю, что Defect Density используется для определения скорости, с которой ваши программисты генерируют дефекты, в то время как вычитание фиксированных дефектов связано с количеством жалоб, поданных вашими клиентами / конечными пользователями.

Из ваших целей: (а) кажется несостоятельным, (б) чрезвычайно острым и будет приносить дивиденды и (в) может вызвать ложный оптимизм.

Вы действительно должны стремиться к Zero Defects и для целей метрики вы должны игнорировать найденные и исправленные ошибки перед выпуском.

Плотность дефектов - это количество подтвержденных дефектов, обнаруженных в программном обеспечении / модуле в течение определенного периода разработки / эксплуатации, деленное на размер программного обеспечения / модуля. ('дефекты (подтверждены и согласованы (не просто сообщены))).

Плотность дефектов: Плотность дефектов = Дефект / размер блока

Здесь могут возникнуть вопросы: для чего на самом деле предназначен этот размер? Размер блока = размер обычно учитывается либо в строках кода, либо в функциональных точках. Будучи хорошим программистом, вы должны быть достаточно уверены, что в вашем коде нет дублирования, которое могло бы раздуть ваш размер кода.

Пример: предположим, что в 1 KLOC найдено 10 ошибок, поэтому DD равен 10/KLOC.

Плотность дефекта используется для измерения качества кода / модуля / требования / продукта. Да, стандарт для измерения одинаковый: плотность дефектов = количество дефектов / размер

но здесь, если мы используем размер как KLOC (тысяча строк кода) или FP (функциональные точки), тогда может быть трудно рассчитать то же самое, а иногда для клиента (или некоторых держателей) это не имеет никакого смысла. Таким образом, мы должны учитывать следующие моменты при расчете плотности дефектов.

  1. Количество дефектов должно быть рассчитано путем сложения всех дефектов, связанных с кодом (они должны включать в себя проверку дефектов, внутренних ошибок и ошибок клиента /UAT), поскольку все ошибки связаны с кодом и, следовательно, должны быть частью плотности дефектов.
  2. Выравнивание количества дефектов в зависимости от их серьезности перед их добавлением дает более точный результат, и это тоже стандарт. Можно рассматривать это как критический баг = 5, высокий = 3, средний = 1, низкий = 0,5. Это иногда называют взвешенной плотностью дефектов, но более точно в результатах.
  3. Размер не должен быть ограничен только строками кода или функциональными точками. Это может быть нет. требований тоже. Самый простой и эффективный способ - это взять размер за время, потраченное на кодирование (это не должно включать проверку кода, усилия по переработке кода). Таким образом, Плотность дефектов можно рассматривать как Дефекты на 100 человеко-дней усилий, затраченных на кодирование, и если у вас есть заданная цель проекта, вы можете увидеть, соответствует ли она вашей цели или нет.

Это эффективный и простой способ расчета плотности дефектов с периодом времени, который вы можете увидеть, улучшаете ли вы или нет.

total number detected defects in your developed software divided by size of your software in line of code . it is calculated in KLOC ,it means it is multiply by 1000 
for example
defects found are 12
size is 2000
defect density= defects/size
answer=.006
it is calculated in kloc so .006*1000=6 so defect density is 6

Дефект - это, в основном, когда продукт поставляется заказчику после того, как какая-либо функциональность не работает, или вы можете сказать, что отклонение от требований пользователя не позволяет измерить дефект, но вы можете предпринять некоторые меры для предотвращения его дефекта, это можно сделать с помощью различные способы тестирования, некоторые из важных вы найдете ниже:

  • Тестирование дыма
  • Тестирование в здравом уме
  • Тестирование черного ящика
  • Белое Тестирование
  • Нагрузка и стресс-тестирование

У вас должно быть полное знание того, что ваш клиент просит от вас, это поможет вам избежать дефектов.

Другие вопросы по тегам