Одна из вещей, о которых я часто думал, - как мы можем использовать какие-то метрики для измерения изменений, идем ли мы в обратном направлении или нет?Это в контексте большой, унаследованной базы кода, которую мы улучшаем.Большая часть кода - C ++ с наследием C.Некоторые новые функции и графический интерфейс написаны на C #.
Для начала, мы могли бы по крайней мере проверить, изменяется ли простой уровень сложности с течением времени в коде.Сложность состоит в том, чтобы иметь представление - мы можем, возможно, создать трехмерную поверхность, где двумерная карта представляет код, и у нас есть тепловая карта цвета, представляющая сложность с выпуклой и трехмерной поверхностью, чтобы показать изменения.
После того, как вы сможете сгенерировать некоторые матрицы чисел, вы обнаружите множество математических систем, которые позаботятся о подобных вещах.
Со временем мне бы хотелось иметь более сложные числа, но те же методы визуализации.используется для представления изменений.
Мне нравится в Crap4j идея сосредоточиться на соотношении между сложностью и количеством юнит-тестов, охватывающих этот код.
Мне бы тоже хотелосьвключить СОЛНЕЧНЫЕ метрики дяди Боба и некоторые из метрик Чидамбера и Кемерера.Трудно найти инструменты для их генерации на C ++.Единственный вариант - Основные показатели Кракатау (я не возражаю против оплаты инструментов).Мое желание использовать метрики CK частично исходит из книг Объектно-ориентированные метрики: меры сложности Хендерсона-Селлерса и более ранних Объектно-ориентированных метрик программного обеспечения .
Если мы начнем использовать ряд этих метрик, у нас может получиться десять или около того чисел, которые меняются во времени.Я довольно плохо осведомлен о статистике, но, возможно, было бы интересно отследить кучу таких метрик, а затем обратить внимание на то, какие из них имеют тенденцию меняться.
Обратите внимание, что связанный вопрос касается измерения кодакачество по большой кодовой базе .Меня больше интересует измерение изменения .