Я работаю над довольно большим проектом, над которым работало несколько лет, в довольно крупной компании, и я беру на себя задачу улучшить общее качество кода.
Мне было интересно, какие метрики вы бы использовали для измерения качества и сложности в этом контексте. Я ищу не абсолютные меры, а ряд пунктов, которые можно улучшить со временем. Учитывая, что это своего рода макрооперация над сотнями проектов (я видел несколько вопросов, которые задавали о гораздо меньших проектах), я ищу что-то более автоматизируемое и целостное.
Пока у меня есть список, который выглядит так:
- Процент покрытия кода при полнофункциональных тестах
- Повторение сбоев БВТ
- График зависимости / оценка, основанная на каком-то инструменте, например nDepend
- Количество предупреждений о сборке
- Количество обнаруженных / подавленных предупреждений FxCop / StyleCop
- Количество «уловленных» заявлений
- Количество шагов развертывания вручную
- Количество проектов
- Процент кода / проектов, которые "мертвые", например, нигде не упоминаются
- Количество WTF во время проверки кода
- Общее количество строк кода с разбивкой по уровням