Gestion de la Configuracion (CM)

Hace tiempo me pase un proyecto entero repitiendo una frase "La gestión de la Configuración es lo más importante del Proyecto [..]" , no se porque esto hoy ha venido a mi memoria..

Este proyecto era un proyecto Multifase en el cual para llegar a Producción ibas pasando por diferentes entornos, como una escalada. El reto es que teníamos que ir controlando muy bien los cambios ya que cuando una versión llegaba a Explotación teníamos otra diferente en Pruebas, y otra en Desarrollo.. y claro esto lo complica todo.

Al final de un modo bastante manual controlábamos los diferentes cambios, y lineas bases.. teniendo siempre un policía que era el Gestor de la Configuración..

Una de las preguntas más recurrentes en los proyectos sw es ¿Que es la Gestión de la Configuración?.. Voy a contestar con una de tantas definiciones que he rescatado de algún libro.. la de la wikipedia por cierto es parecida.


Es el conjunto de técnicas y procesos destinados a asegurar la validez que todo producto obtenido durante cualquiera de las etapas del desarrollo, a través del estricto control de los cambios realizados sobre los mismos y de la disponibilidad constante de una versión estable de cada elemento.
No quiero ahondar más en ello, y hay muchos artículos mejores que este sobre Gestión de la Configuración pero hacia tiempo que tenía pendiente publicarlo.. 


A Project Story: La marmita de optimismo

Las personas tenemos un carácter o personalidad que nos hemos forjado por las diferentes experiencias de la vida, el cual también forma parte de nuestra identidad personal como gestores de proyectos. Hay un rasgo del carácter que afecta a nuestro día a día, e influye directamente sobre las decisiones que tomamos, se trata de la visión del vaso medio lleno o medio vacío.

 Ante una situación mostramos un carácter optimista o pesimista. A mi modo de ver la lectura correcta, es determinar cual es la capacidad del vaso y contraponerlo con nuestro objetivo inicial, y de ese modo dar una valoración de la situación. El problema que tiene esto es que las valoraciones objetivas, sino dicen lo que nos gustaría, son para todos difíciles de encajar.

En mi opinión existe un síndrome en la Dirección de Proyectos, que llamaría el de "La marmita de optimismo", que da un paralelismo entre cuando Obelix se cayo en la Marmita de Poción Mágica y conservó su fuerza toda la vida.. mientras que el pobre Asterix tenía que racionar su poción en una pequeña cantimplora.

 En un proyecto existe un peligro el "Jefe de Proyecto Obelix" que todo cree que se va a solucionar, y nunca ve peligros en los plazos, los costes o la calidad, y aunque todo se va desmoronando.. nunca pierde esa visión optimista, que además gusta. Su gramática suele ser... " en realidad son problemas menores" , " .. vamos a recuperar todo lo perdido en la próxima versión" "... nos queda nada para entregar" . Por lo general a sus responsables siempre les ha transmitido que todo va bien y al cliente nunca le ha exigido ningún tipo de compromiso.

 En contraposición esta el "Jefe de Proyecto Asterix", es prudente, analítico, transmite con claridad la situación del cliente, y de vez en cuando le da un sorbo a la cantimplora de optimismo y mantiene en alza la motivación del equipo y al cliente contento..

  En resumen, el optimismo con moderación, es una arma muy poderosa... en exceso nos nubla la vista y nos hace perder la verticalidad.

Testing Baby Boom

Los últimos meses están siendo testigos de una de las explosiones del negocio del SW más intensas, el Testing. Si  bien es cierto que no estamos asistiendo a un crecimiento de la demanda global de proyectos si existe una nueva tendencia;  poner en marcha nuevas lineas basadas en el Testing. El objetivo que impulsa al Testing como sector emergente es  la mejora de la Calidad final de los desarrollos evitando las puestas fallidas en Producción. Por fin !!!

Ciertamente esta afirmación  podría basarse solo en sensaciones muy subjetivas, pero no es así. Cuando se analizan las web de empleo, buscando por la palabra Testing, se encuentran un gran número de empleos que consideran el Testing como un criterio de selección. Esto hace años no pasaba.. Ahora además empezamos a hablar de la carrera profesional del Testing (TJ, TS, TA...).

Otro indicativo es que existen Congresos, Ponencias, Seminarios etc especializados en Testing por gran parte del territorio nacional, además de dispararse los artículos en Internet y los grupos activos en Linkedin no dejan de aumentar. Hace dos años, apenas encontraba información en español sobre el Testing sin embargo ahora cada vez tenemos más web especializadas.

Si hablamos de herramientas tenemos desde las Open hasta las lideres de mercado como HP o IBM en boca de todo el mundo, no se conciben las pruebas sin herramienta como hace años se dejo de concebir el desarrollo sin un IDE (antes el servidor, el compilador y el editor no estaban integrados). Ademas estas marcas están invirtiendo constantemente en publicidad y presentaciones, esta claro que saben que es un sector emergente y quieren posicionarse como lideres de mercado. De pasada digo que la versión 3 de Rational Quality Manager ha mejorado mucho un producto por otro lado ya bastante aceptable.. Gracias.

Pero claro, ahora es el momento en que el sector del Testing  se enfrenta problemas, se empieza a disparar la demanda de conocimientos especializados y profesionales con experiencia en este paradigma, y no hay tanto como se demanda. Durante años el Testing  ha sido el hermano pobre del desarrollo, el hermano que mendigaba que le dejaran unas horas para probar algo...  Ahora que esta de moda, aparecen el oportunismo y todo el mundo quiere vender testing sin conocimiento, sin experiencia, ofertando al programadores reconvertidos de la noche a la mañana a testers.

Señores clientes, protegeros de esto, exigir Testing con experiencia, con herramientas consolidadas, con profesionales certificados en ISTQB, con modelos de Pruebas basados en Procesos y procedimientos (CMMI, TMMI), con indicadores de medición bien pesados (kpi) , con experiencia en implantación de servicios de pruebas..  y también hay que estar dispuesto a pagar por ello el precio justo.  Sino lo hacemos así, al final se incrementarán los costes, se retrasarán los plazos de los proyectos y no mejorará la Calidad... y por extensión, se dirá que el Testing no soluciona nada.

Por otro lado, la Calidad no es fácil, diseñar pruebas, hacer QAs, ejecutar pruebas cuesta y tenemos que formar nuevos profesionales con mucha especialización... necesitamos un Baby Boom de testers . Además creo que puede ser una nueva rama muy atractiva y una gran apuesta de futuro profesional. 

Espero que no nos carguemos entre todos una de las lineas que puede ayudar a cambiar muchas cosas en nuestro sector, volviendo a preocuparnos todos por el Producto SW, más que solo por las horas..  los beneficios vienen solos y es un Win & Win Cliente / Proveedor. 

I have the ball, I pass the ball...

Parafraseando la frase de mi admirado Guardiola, admirado sobre todo por el gusto que tiene por hacer las cosas bien, y primar el juego sobre el resultado.. No todo vale para ganar !!!  A lo que voy, es que desgraciadamente en nuestro mundo de la Ingeniería del Software, pasar la bola rápidamente no es el camino.

Cuando llega una petición de trabajo, una tarea, un requerimiento, un cambio.. debe existir un valor añadido de la cadena, hay que aportar algo más de un  "Por favor ponte con esto.. lo antes posible". Esto acaba ocurriendo por la sobresaturación de la cadena, donde el JP llama al Analista, este pasa el cambio al Diseñador, y así hasta el programador, que naturalmente hace lo que puede..

La vuelta es peor, una cadena de mails en las que se dice "Hecho" o "OK subido" que nadie comprueba hasta que llega al cliente.. que devuelve un "Se reproduce" y vuelta a empezar..

Es difícil asentar un modelo de ingeniería basado en un modelo "I have the ball, I pass the ball" , en el que todos acabamos cayendo.. más fácil, más rápido, más barato..  pero muy malo y poco rentable. 

¿Soluciones? Procesos y procedimientos de trabajo adecuados..  Ahhh pero si eso ya se tiene.. Ya ¿ pero se cumplen? En esto se debe poner el esfuerzo..

Creo que puedo sacar algo más de jugo a la frase.. Se trata de hacer un juego sencillo y ágil, en este sentido si me parece algo más apropiado a intentar dentro del ámbito del software. Me gustan los modelos ágiles pero no los entiendo como un modelo no procedimentado. Ágil no quiere decir anarquico y cuando un proyecto esta desorganizado no se debe decir que el modelo que se sigue es Ágil..

Pep Help me !! (.. y renueva)

¿Es una SCAMPI un buen modelo de evaluación?


El método SCAMPI es el método de evaluación que sirve para certificar en  CMMI a las compañías interesadas en cumplir con dicho modelo. El hecho o premisa de una certificación es que tiene que existir un equipo auditor que "certifique" que la Organización cubre las practicas de CMMI para los niveles 2,3,4 o 5.  (modelo escalonado matizo para los entendidos).

A lo largo de mi carrera he podido participar en varios procesos SCAMPI, y tengo que decir que es un método pesado, sobre todo la parte documental.

Un auditor necesita que las practicas de CMMI estén soportadas por evidencias y dichos "artefactos" deben estar almacenadas en una base de datos llamada PIIDB. El problema es que la recolección de evidencias es bastante farragosa y más cuando cada día es más habitual que estas ya no sean documentos ofimáticas sino que sean trabajos embebidos en herramientas case, de pruebas, de Gestión de la Configuración, etc..

El problema en CMMI 2 es de entidad menor debido a que solo tenemos 7 Áreas de Proceso, pero en CMMI 3, la cosa cambia con 18.

Tengo que romper aquí una lanza en favor de la versión 1.3 que ha eliminado un tipo de evidencia, con lo cual ahorra bastante trabajo, pero aún así es demasiado repetitivo en ocasiones.

Ahora bien sin embargo, otra parte del Modelo SCAMPI son las Entrevistas, destinadas a encontrar afirmaciones sobre el cumplimiento del modelo.. Esto si, me encanta, tanto como entrevistado como formando parte del equipo de auditoria he disfrutado mucho siempre con ello... y es algo que no me perdería, sobre todo si los auditores son buenos ;-)  (y los nuestros lo son).

La verdad es que no puedo contestar a la pregunta que encabeza este post, porque no veo claro otra forma de hacer tanto trabajo, pero si creo que es un punto de reflexión.

Con cariño para mis auditores y amigos.