Обзор метрик сложности и качества
Хотя существует много различных показателей качества, здесь перечислены лишь некоторые из самых важных.
Метрики сложности помогают измерять качество кода. Цикломатическая сложность измеряет число линейно независимых путей выполнения по исходному коду программы. Другой способ анализировать качество — это расчет метрик сложности Холстеда.
Эти метрики измеряют:
- "Словарный запас" программы.
- Длину программы.
- Рассчитанную длину программы.
- Том.
- Трудность программы.
- Трудозатраты для программы.
Средства анализа кода можно использовать для проверок безопасности, взаимодействия, использования языка и глобализации. Они должны входить в арсенал каждого разработчика и в каждый процесс разработки ПО.
Регулярный запуск средства статического анализа кода и прочтение его выходных данных — это отличный способ самосовершенствования для разработчика, ведь замечания, выданные правилами анализа, часто могут вас чему-то научить.
Распространенные метрики, связанные с качеством
Одна из перспектив применения DevOps — это ускорение доставки ПО при одновременном повышении качества. Ранее эти две метрики были практически противоположностями. Чем быстрее шла работа, там ниже было качество. Чем выше качество, тем дольше занимала работа. Но процессы DevOps могут помочь вам выявлять проблемы еще на ранних этапах, а при этом обычно исправление проходит быстрее.
Ранее мы обсуждали некоторые общие метрики и показатели КПЭ проектов. Ниже приведен список метрик, которые напрямую связаны с качеством создаваемого кода, а также с процессами сборки и развертывания.
- Процент неудачных сборок — какая доля от всех процессов сборки завершается сбоем?
- Процент неудачных развертываний — какая доля от всех процессов развертывания завершается сбоем?
- Количество запросов в службу поддержки — каково общее число обращений пользователей в службу поддержки или добавленных сообщений об ошибках?
- Процент возврата ошибок — какой процент обращений пользователей или сообщений об ошибках открывается повторно после закрытия?
- Процент незапланированной работы — какой процент от общего объема работ составляют незапланированные работы?