Tu proprio modelo de Calidad

Una regla se conoce o no. Una ‘best practice’ se aplica o no. Pero si no se aplica, ¿es porque no es aplicable o porque no es conocida?

Debes presentar los resultados de tus primeros análisis Cobol y, por supuesto, quieres demostrar el valor de estos análisis a los equipos de proyectos, proveedores, stakeholders, etc.

Esto requiere la definición de un modelo de medición de la calidad – un conjunto de reglas y niveles de criticidad – que permite la rápida identificación de las malas prácticas más costosas y peligrosas. Obviamente sería un fracaso denunciar una violación a una ‘mejor práctica’ que no está aplicable – por ejemplo, el uso de SQL (ver. nuestro último post).

¿Cuáles son las reglas aplicables? ¿Cuál de los umbrales de severidad elegir? Cómo ajustar el modelo de Calidad en un Quality profile Sonar para las aplicaciones Cobol ?

Vamos a mostrar en este post cómo configurar tu propio modelo calidad, con una View Sonar y un widget muy útil. Sigue leyendo

Sonar Cobol – Reglas Cobol

Los posts anteriores sobre la preparación y el análisis de código Cobol con Sonar y Jenkins provocaron unos comentarios preocupados por los resultados de análisis y las normas disponibles en el dashboard Sonar.

¿Permiten estos resultados una evaluación de la calidad de las aplicaciones Cobol? ¿Qué valor podemos entregar a los equipos y el management? Y para aquellos que no están familiarizados con el mundo Mainframe, ¿cuáles son las ‘mejores / peores prácticas’ para el código Cobol?

Muchas preguntas, y no vamos a poder responder a todas en un único post. Vamos a dedicar este a la presentación de las diferentes normas y los defectos de calidad que se encuentran frecuentemente en las aplicaciones Cobol.

El objetivo es: has hecho un análisis, los resultados aparecen en el dashboard Sonar. Ahora, ¿por dónde empezar? Sigue leyendo

Quality profile

Hemos visto en el post anterior cómo crear un análisis de código Cobol con Sonar y Jenkins.

En realidad, no hemos utilizado todas las reglas Cobol disponibles en Sonar. ¿Por qué? Debido a que algunas reglas están desactivadas, ya que se usan solamente en un contexto determinado y entonces requieren alguna configuración. Por ejemplo, las reglas de nomenclatura no están estandarizadas en Cobol, y con frecuencia serán diferentes entre departamentos o incluso entre equipos del mismo departamento.

Así que necesitamos gestionar diferentes modelos de calidad, es decir diferentes conjuntos de normas según el proyecto. Sonar lo permite gracias a los ‘Quality profiles’ que incluyen las reglas activadas durante un análisis de código.

Vamos a ver en este post, cómo crear un nuevo perfil con todas las normas de calidad Cobol, y asignarlo a un proyecto existente. Sigue leyendo

Análisis de código Cobol con Sonar y Jenkins

Continuamos nuestra serie sobre el análisis de código Cobol, con el objetivo de demostrar que es simple y fácil de iniciar un proceso de evaluación de la calidad de este código Legacy, sin ser un experto en este idioma.

Ya tienes una plataforma de análisis de código, con Sonar y Jenkins. Si no es el caso, una serie anterior de post explica cómo instalar estas herramientas:

en nuestro entorno.

Analizas código Java o .NET con esta plataforma y se te pide hacer lo mismo con aplicaciones Cobol. El problema: no conoces nada del mundo Mainframe. ¡Qué lío!

No, nada de pánico. Nuestros dos posts anteriores explicaban:

Ahora ha llegado el momento: vamos a ver como implementar el proceso de análisis en nuestra plataforma Sonar-Jenkins. Let’s play. Sigue leyendo

Sonar Cobol – Las preguntas

Hemos visto la semana pasada lo que había que saber sobre Mainframe Cobol, antes de entrar en una reunión con los especialistas de esta tecnología y preparar un proceso de análisis con Sonar.

Vamos ahora a examinar las cuestiones para organizar los análisis con Sonar (que veremos en un artículo próximo).

Estas cuestiones también nos permitirán precisar las reglas de entrega del código fuente.

Sigue leyendo

Sonar Cobol – Lo que debes saber

Hice unos cuantos posts hace unos meses (Sonar – Análisis Cobol con Jenkins, Open Source & código Legacy) con el fin de demostrar que no es necesario ser un gurú de J2EE o un experto Open Source para analizar aplicaciones Legacy de Cobol (o ABAP) con Sonar y Jenkins.

Y veo bastante visitantes llegando a estas páginas a mi blog, lo que refleja el interés por este tema.

Pero alguien me dijo recientemente: «Estamos analizando código J2EE regularmente con Sonar, y todo va de maravilla. También tenemos planes para poner las aplicaciones Cobol en Sonar y Jenkins, pero no sé nada del mundo del mainframe».

Por lo tanto, este post (y los siguientes) tendrá como objetivo ayudar a la implantación de un proceso de análisis de código Cobol con Sonar y Jenkins.

Sigue leyendo

Crowdsourcing and Crowdtesting

Puede que hayas oído o leido algo de Crowdtesting, una práctica que genera una gran cantidad de «buzz» ahora y que consiste en entregar una aplicación a una comunidad de ‘testers’ externos a la empresa para que ellos comprueben su robustez.

Con el post de la semana pasada, me pregunté si esta situación podría justificar el uso de esta técnica. Sigue leyendo

Cherchez l’erreur (2/2)

El bug presentado en nuestro post anterior atrajo a un gran número de comentarios muy interesantes

Así que, primero, un gran agradecimiento a todos los que expresaron sus puntos de vista, ya que fue precisamente el objetivo de esta publicación.

Mi experiencia en consultoría es más bien orientada a las ‘mejores prácticas’ en términos de ciclo de vida del proyecto. No soy un experto en control de calidad.

Pero trabajo regularmente con buenos profesionales de QA y yo tenía mucha curiosidad acerca de las opiniones de personas más expertas que yo en esta área … antes de hacer algunas suposiciones en este segundo post.

Sigue leyendo

Cherchez l’erreur (1/2)

Nada me encanta más que encontrar bugs.

Como consultor de calidad, no hay nada más divertido que un análisis de código de una aplicación que permite encontrar unos defectos bien grandes y imperdonables, como un ‘Break’ en ABAP (instrucción que se usa en modo ‘debug’ y de inmediato para el programa), un OPEN / CLOSE de un archivo Cobol en un bucle (instrucción muy dañosa para el rendimiento, a poner fuera del bucle, obviamente) o accesos directos a la base de datos desde una página JSP. No se necesita un especialista para saber que se trata de defectos graves.

Sin embargo, hay una situación cuando odio encontrar errores: como usuario de una aplicación.

Sigue leyendo

Sonar Upgrade

Hacé ya bastante tiempo que no hablé de Sonar. He sido ocupado un poco recientemente descubriendo nuevos territorios (ver los posts Elasticidad del código, La calidad en el Cloud) y me retrasé en poner al día mi entorno Sonar. Por otra parte, hay una nueva versión 3.0 con un montón de novedades.

Así que sin más preámbulos, ha llegado el momento para una actualización de Sónar.

Sigue leyendo