28/9/2007 0:13
El Bruno
[VS2008] Code Metrics
Buenas
después de unas semanas complicadas jugando con el Nanocóptero y cuando comienzo a cerrar los pendientes con las Domain Specific Language Tools, me queda tiempo para probar un par de cervezas con los amigos algunas de las novedades de Microsoft Visual Studio 2008. En este caso uno de los 4 pilares fundamentales del desarrollo que posee Microsoft Visual Studio 2008: Code Metrics.
Esta nueva herramienta permite a los desarrolladores generar métricas para sobre proyectos y soluciones de Visual Studio para analizar la "complejidad" de los mismos. Los resultados se realiza sobre 5 tipos diferentes de análisis: Maintainability Index, Cyclomatic Complexity, Depth of Inheritance, Class Coupling, and Lines of Code (donde los datos del primer análisis surgen de una fórmula sobre los resultados de los 4 restantes).
Pues bien, si te gusta la informática seguramente conocerás los conceptos sobre los que se basan las métricas de código, pero lo interesante es ver como está integrado dentro de Microsoft Visual Studio 2008. Para esto, pensé en escribir un poco de código para una mini demo, pero después me decanté por utilizar un poco de código ya escrito, y tal vez uno de los más populares para los desarrolladores .Net: Enterprise Library 3.1.
El proceso de análisis tarda un poco, teniendo en cuenta la cantidad de código que posee EntLib, no es de extrañar. Y tampoco es de extrañar los excelentes resultados que da el mismo; todos los assemblies con un nivel de mantenibilidad muy alto (all greens) y salvo excepciones detalles como el Core.Design la complejidad ciclomática es muy buena:
Sobre el panel Code Metrics, sobre los resultados obtenidos, es posible realizar algunos filtros por algunos de los análisis realizados para analizar más en detalle esta información:
Finalmente, si queremos realizar un análisis más detallado, es posible exportar los resultados a la herramienta de BI más popular para el desktop: Microsoft Excel.
Por ejemplo, el siguiente gráfico muestra los diferentes resultados del análisis realizado sobre cada uno de los assemblies de Enterprise Library 3.1 y si alguien está interesado en ver todo el detalle puede descargar el archivo excel desde aquí.
Nota: llama la atención la cantidad de código que tiene el Logging AppBlock, versus el Exception Handling AppBlog, entre otras cosas.
Pues bien, una gran incorporación para Microsoft Visual Studio 2008 y una nueva gran herramienta para nosotros los desarrolladores, que nos permitirá perfeccionar un poco más el resultado de nuestro trabajo diario.
Saludos @ Home
El Bruno
Crossposting from
ElBruno.com
Archivado en: Visual Studio,VSTS
Comparte este post: