--------------------------------------------------------------------------------------------
La deuda técnica es el conjunto de problemas en un esfuerzo de desarrollo que hacen ineficiente el avance del progreso en el valor del cliente. Ésta mina la productividad al hacer el código difícil de entender, frágil, difícil de validar y crea trabajo no planificado que bloquea el progreso. La deuda técnica es muy maliciosa. Comienza siendo pequeña y crece con el tiempo a través de cambios apresurados, falta de contexto y falta de disciplina. Las organizaciones a menudo encuentran que más del 50% de su capacidad está minada por la deuda técnica.
SonarQube es una plataforma de open source que es la solución “de facto” para la comprensión y la gestión de la deuda técnica.
Los clientes nos lo han dicho, a nosotros y a SonarSource, la compañía que está detrás de SonarQube: el análisis de aplicaciones .Net con SonarQube y la integración con tecnologías de builds de Microsoft necesitan mejorar considerablemente.
En los últimos meses hemos estado colaborando con nuestros amigos de SonarSource y estamos encantados de poner a tu disposición un conjunto de componentes de integración que permiten configurar una Build Team Foundation Server (TFS) para conectarse a un servidor SonarQube y enviar los siguientes datos, los cuales se recopilan durante una build bajo la visión de perfiles y umbrales de calidad definidos en el servidor de SonarQube:
- Resultados de análisis de código de .Net y JavaScript
- Análisis de código clonado
- Datos de cobertura de código de las pruebas
- Métricas para .Net y JavaScript
Nos hemos dirigido inicialmente a TFS 2013 y superiores, para que los clientes puedan probar estos cambios inmediatamente con código y con las definiciones de builds que ya tienen. Hemos intentado usar los cambios anteriormente mencionados con las builds en Visual Studio Online (VSO), usando un agentes en local, pero hemos descubierto un error en torno al cálculo de los datos de cobertura de código sobre el que ya se está trabajando para resolverlo. Cuando esté solucionado, lo comentaremos en este blog. También estamos trabajando en la integración con la próxima generación de builds en VSO y TFS.
Además, SonarSource ha desarrollado un conjunto de reglas .Net, que se han escrito utilizando el nuevo framework de análisis de código basado en Roslyn, y se ha publicado en dos formas: en un paquete Nuget y en VSIX. Con este conjunto de reglas, el análisis que se realiza como parte de la build también se puede hacer en directamente dentro de Visual Studio 2015, explotando la nueva experiencia de análisis de código del IDE.
Estamos muy agradecidos también a nuestro equipo de ALM Rangers por su constante apoyo y que han escrito, en paralelo, una guía de instalación de SonarQube que explica cómo configurarlo de modo que esté listo para su puesta en producción y que se utilice junto con Team Foundation Server 2013 para analizar aplicaciones .Net. Esto incluye la referencia a los nuevos componentes de integración mencionados anteriormente.
Esto es sólo el comienzo de nuestra colaboración. Tenemos un montón de ideas interesantes sobre nuestro backlog, así que no nos pierdas de vista.
Como siempre, estaremos muy agradecidos de vuestros comentarios sobre la experiencia e ideas sobre cómo se podría mejorar para ayudaros a vosotros y a vuestros equipos y ofrecer de manera más eficiente un software de mayor calidad y más fácil de mantener.