En el nivel físico/de implementación más bajo, lo que me gusta hacer es adoptar maven como una herramienta de compilación, y luego configurar los extensos informes de maven, para producir un sitio web lleno de varias métricas de código.
- Para empezar no es el maven checkstyle plugin que puede informar sobre la conformidad de código a un nivel especificado, la coherencia de las normas de codificación tiene muchas ventajas obvias, la mayoría de los proyectos serían simplemente adoptar una de las normas pre-configurados, por ejemplo, sol o apache.
- Los findbugs plugin enumera los posibles errores de programación
- Hay una selección de informes de cobertura de código, he utilizado cobertura. Muestran línea por línea en una aplicación cuyas piezas están cubiertas por pruebas unitarias. Maven admite pruebas unitarias en el ciclo de vida de compilación, ejecutándolas como parte de la compilación. Esto me ha salvado un par de veces.
- El PMD plugin identifica el código duplicado y resalta las áreas que pueden necesitar refactorización.
Una vez que esto se configura y se convierte en parte del ciclo de construcción normal, básicamente se ocupa de sí mismo, y usted no tendrá que preocuparse por hacer grandes auditorías/actualizaciones bianuales.
Muchos de los informes tienen límites de umbral que se pueden configurar para fallar la construcción si se infringen, es decir, más de n% de errores de estilo de comprobación, provocan un error de compilación.
Maven también promueve un enfoque modular para crear aplicaciones, esto da como resultado módulos más pequeños comprensibles y reutilizables, así como la separación de preocupaciones, es decir, módulos separados para capas de presentación y persistencia. El principal beneficio que proporciona maven es gestionar las interdependencias entre los módulos.
Esto no le ayuda mucho en las capas de arquitectura de nivel superior, por lo que se necesitará un enfoque complementario para cubrir esa dimensión.
Vea algunos ejemplos de informes en este enlace
http://maven.apache.org/plugins/maven-dependency-plugin/project-reports.html
¿Qué tipo de auditoría es esta? ¿Seguridad? ¿Calidad del código? ¿Algo más? –
thx stephen, estoy editando mi pregunta – LB40