Я анализирую кодовую базу, состоящую в основном из Java, которая довольно большая (~ 1 миллион строк кода) с использованием SonarQube, Jenkins и Bitbucket.
Более того, одна из основных задач этого анализа - изучить, как можно улучшить архитектуру и дизайн этой кодовой базы с помощью анализа SonarQube и плагинов. Во время своего исследования я обнаружил, что раньше существовала матрица, которая делала то, что я искал, то есть матрица структуры зависимостей SonarQube, однако на данный момент она обесценилась.
Я также нашел метрику сложности, которую нужно использовать для исследования уровня сложности каждого файла / класса / метода, но я ищу более продвинутые отзывы о дизайне и архитектуре, если это возможно.
Вот мои плагины на моем сервере SonarQube (под управлением v5.3), которые я использую на данный момент:
- Checkstyle v2.4
- Findbugs v3.3
- Git v1.1
- Java 3.11-build4121
- Свойства Java v1.5
- PMD v2.5
- SVN v1.2
То есть то, что я ищу, - это информация о том, как можно использовать SonarQube для поиска архитектурных недостатков или областей улучшений с использованием программных метрик или аналогичных средств. Во время своего исследования я не обнаружил какой-либо четкой связи с тем, как использовать SonarQube для этой цели.
Таким образом, мой вопрос заключается в том, как можно использовать SonarQube и определенные плагины для поиска улучшений архитектуры и дизайна (например, путем просмотра различных изменений с течением времени) в базе кода?
Я рад любым отзывам или вопросам, которые могут у вас возникнуть.