martes, 14 de septiembre de 2010

Por qué usar Sonar en los proyectos.

Sonar

Sonar consiste en un servidor web y una base de datos donde se van almacenando métricas sobre nuestro código. La parte cliente está basada en Maven, e integra una serie de productos de sobra conocidos, como son Cobertura, PMD o Checkstyle, de forma que cuando hacemos una build Sonar envía todos estos datos al servidor donde se almacenan y agregan para mostrar información útil sobre el proyecto.

Plataforma que maneja la cantidad del código fuente, dedicado a analizar y medir la calidad técnica basado en estádares de reglas de compilación tales como PMD y CheckStyle.

Algunas características son:

  • Visualiza dashboard de proyectos con información resumida de métricas de software como Mantenibilidad, Escalabilidad, Complejidad, Portabilidad.
  • Provee información de Métricas de Código.
  • Porvee información de evaluación de cobertura.

Tutorial para Instalación y ejecución.
http://docs.codehaus.org/display/SONAR/The+2+minutes+tutorial

Como ejemplo analizaremos la configuración realizada para el Proyecto Banco Chile.

Interpretando las Reglas de Condicionalidad

Pasos:
1.- Observar que para SecurityDevicesAdmin tiene un procentaje referente a las reglas de condicionalidad de un 91.3%.


2.- Al seleccionar el link SecurityDevicesAdmin se despliega las reglas definidas para el proyecto.


3.- En Líneas de Código se puede observar que:
a).- El proyecto está compuesto de 16 paquetes.
b).- Posee 76 clases.
c).- Existen 508 métodos,
d).- Y que hay un 4.1% de líneas duplicadas.

4.- En Comentarios se observa:
a).- Existen 2668 líneas comentadas.

5.- En Complejidad se tiene:

a).- Existen 1.7 métodos complejos y,
b).- 11.5 clases complejas

6.- Existen 87 violaciones al código que se detallan:
a).- Eficiencia, existen 2 clases eficientes como se detalla en la siguiente imagen.

b).- Mantenimiento, existen 42 mantenedores que se distribuyen como se muestra en la siguiente imagen.

c).- Confiabilidad existen un servicio para este proyecto que cumple con la regla.


d).- Usabilidad, apunta a saber que programas tiene mayor invocación en el proyecto:


No hay comentarios:

Publicar un comentario