Хотя цикломатическая сложность является полезным показателем, я склонен находить ее плохим инструментом для идентификации сложного кода. В частности, я нахожу, что он просто выделяет определенные типы кода (например, парсеры) и пропускает сложные проблемы рекурсии, многопоточности и связывания, а также многие из определенных анти-паттернов.
Какие еще инструменты доступны для идентификации проблемного кода Java?
Обратите внимание, что мы уже используем PMD и FindBugs, которые, как мне кажется, отлично подходят для выявления проблем на уровне методов.