Почему индекс работоспособности проекта уменьшается, хотя цикломатическая сложность, сцепление классов и строки кода уменьшаются? - PullRequest
2 голосов
/ 13 мая 2011

Для моего проекта C # дельта метрик кода после рефакторинга:

  • Индекс работоспособности: -4
  • Цикломатическая сложность: -48
  • Глубинанаследования: 0
  • Классовая связь: -9
  • Строки кода: -85

Почему индекс ремонтопригодности уменьшился, когда формула:

MI = MAX (0, (171 - 5,2 * ln (объем Хэлстеда) - 0,23 * (цикломатическая сложность) - 16,2 * ln (строки кода)) * 100/171)?

Ответы [ 2 ]

2 голосов
/ 05 апреля 2012

Возможные варианты: 1) объем Холстеда увеличился;2) вы используете MI-вариант, который учитывает комментарии.

1 голос
/ 14 сентября 2014

Не уверен, что кто-то все еще заботится об ответе, но ...

В формуле для индекса ремонтопригодности используются средние значения HV, CC и LOC. Таким возможным объяснением может быть то, что вы удалили один или два небольших класса, что не подходит для среднего размера и, следовательно, для MI.

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

...