Що таке щільність дефектів? Формула для обчислення з прикладом

Що таке щільність дефектів?

Щільність дефектів – це кількість дефектів, підтверджених у програмному забезпеченні/модулі під час конкретного періоду операція або розробки поділено на розмір програмного забезпечення/модуля. Це дозволяє вирішити, чи готова частина програмного забезпечення до випуску.

Щільність дефектів розраховується на тисячу рядків коду, також відомого як KLOC.

Як розрахувати щільність дефектів

Формула для вимірювання щільності дефектів:
Defect Density = Defect count/size of the release

Розмір випуску можна виміряти в термінах рядка коду (LoC).

Приклад щільності дефектів

Припустимо, у ваш програмний продукт інтегровано 3 модуля. Кожен модуль має таку кількість виявлених помилок-

  • Модуль 1 = 10 помилок
  • Модуль 2 = 20 помилок
  • Модуль 3 = 10 помилок

Загальна кількість помилок = 10+20+10 =40

Загальний рядок коду для кожного модуля становить

  • Модуль 1 = 1000 LOC
  • Модуль 2 = 1500 LOC
  • Модуль 3 = 500 LOC

Загальна кількість рядків коду = 1000+1500+500 = 3000

Щільність дефектів розраховується як:

Defect Density = 40/3000 = 0.013333 defects/loc = 13.333 defects/Kloc

Щільність дефектів

Еталон щільності дефектів

Однак не існує фіксованого стандарту щодо щільності помилок, дослідження показують, що один дефект на тисячу рядків коду зазвичай вважається ознакою хорошої якості проекту.

Фактори, що впливають на показники щільності дефектів
  • Складність коду
  • Тип дефектів, врахованих для розрахунку
  • Тривалість часу, яка враховується для розрахунку щільності дефектів
  • Навички розробника або тестувальника

Переваги щільності дефектів

  • Це допомагає виміряти ефективність тестування
  • Допомагає відрізнити дефекти компонентів/програмних модулів
  • Це корисно для визначення областей для виправлення або покращення
  • Це корисно для вказівки на компоненти високого ризику
  • Це допомагає визначити потреби в навчанні для різних ресурсів
  • Це може бути корисним для оцінки тестування та переробки через помилки
  • Це може оцінити решту дефекти у програмному забезпеченні
  • Перед випуском ми можемо визначити, чи достатньо нашого тестування
  • Ми можемо забезпечити базу даних зі стандартною щільністю дефектів