Cultura de Calidad

Por Víctor Gómez Adán

  • La magnífica comunidad de testing

    Cuando leo noticias de la comunidad de testing, me sorprende la diferencia de estilos, formas y métodos de trabajo que tenemos y aún así, como todos trabajamos en un camino único, la garantía de los desarrollos con los que trabajamos.


    Me sorprende que maneras de trabajo se realizan en algunas empresas y como, entre todos, podemos aprender tanto, como podemos hacer que muchas personas vivan mejor, trabajen más a gusto y tengan una tranquilidad que, sinceramente, es impagable.

    Cuando hablas con compañeros de profesión y te cuentan como han ayudado a los equipos, como han sido aceptados, ellos y su labor, cosa que antes era más complicado, es un orgullo escucharlos y entender como lo han realizado.

    Ver el esfuerzo que se está haciendo por ayudar a equipos de trabajo, ver como vas cumpliendo años de profesión y ver como te vas encontrando con compañeros y te agradecen el trabajo que realizaste en su día, como te siguen día tras día, leyendo publicaciones, se interesan por la calidad y nos ayudamos mutuamente para seguir avanzando por este camino que todavía nos queda por andar.

    Es muy gratificante, el escuchar y que te expliquen como siguen utilizando pautas, métodos, procesos y técnicas que has ido implantando y como siguen funcionando, sean o no, perfectas y, evidentemente, mejorables, pero valen, las continúan realizando y siguen obteniendo buenos resultados.

    Para mí, participar, servir y trabajar para esta comunidad, es un verdadero orgullo y ese sentimiento de mejora continua personal y profesional es lo que nos hace más fuertes y lo que nos permite que la calidad esté, cada día, más presente, que se tenga más en cuenta y podamos seguir aportando este oficio tan gratificante, la mayoría de las veces. 

    Fue una suerte cruzarme con este mundillo del testing o calidad, cada día es una satisfacción mayor la que me permite continuar trabajando por y para las personas que me rodean.
  • ¿Es la calidad gratuita?

    ¿Es la calidad gratuita, de verdad? Sí.

    La calidad, hablando de personas, es la cualidad inherente de hacer las cosas bien, de la mejor manera posible.


    Como cualidad, es gratuita. No nos hace falta nada para comenzar a utilizarla, solamente hacer las cosas con empeño, de buena gana y con la mejor intención del mundo. Aunque no todo salga de manera excelente, hemos puesto todo nuestro esfuerzo y será la mejor calidad que hemos podido aportar en ese momento puntual.

    En ciertos momentos, podremos hacer las cosas con mejor calidad y en otros momentos con otra, pero si nuestros esfuerzo es persistente, cada vez lo conseguiremos hacer mejor.

    Esta cualidad la tienen todas las personas, no hay ninguna que no pueda aportarla en su día a día de cualquier manera, a nivel personal, a nivel profesional, para uno mismo o para el resto de personas. En un pequeño gesto, como un saludo a primera hora de la mañana, según llegamos al trabajo, se demuestra la calidad hacía los demás que puede tener una persona.

    A nivel profesional, las aplicaciones son infinitas, solo con el hecho de pensar que lo que estamos haciendo, puede beneficiar a las personas de nuestro alrededor, es algo que debería llevarnos a realizar las cosas lo mejor posible, que podamos y sepamos.

    Esta cualidad se puede trasladar a objetos cotidianos, para fijarnos en nosotros mismos. Cuando vamos a comprar algo, intentamos que sea de la mejor calidad, en este caso no es gratuita, evidentemente y no siempre lo más caro es lo que mejor calidad tiene, pero si hacemos una comparativa, nos damos cuenta que las cosas con calidad son más caras a corto plazo pero baratas en el largo.

    Eso mismo pasa con nuestra propia aplicación de la calidad, con el matiz de que a nosotros no nos cuesta nada aplicarla.

    En un proyecto, pasa exactamente lo mismo, a las personas que trabajan en él no les cuesta aplicar la calidad y hacer las cosas lo mejor que se pueda. Además, haciendo una inversión inicial más grande en profesionales dedicados a la misma, encontrarán que a largo plazo se les será devuelta esta inversión en forma de buenos resultados.
  • Planificar entre todos es de valientes

    Cuando marcamos los hitos del proyecto, tenemos que ser conscientes de la planificación para validaciones que queremos realizar. Es importante obtener un colchón de jornadas adecuado para que se puedan ejecutar todas las pruebas que tengamos en mente, además de solucionar los defectos que nos encontremos.


    La planificación debe de estar acorde con ese rango de fechas y adecuarse al número de personas que trabajen en el equipo. No es lo mismo una planificación adecuada para validar y que posibles defectos los solucione una única persona, que no que tengamos a todo el equipo solucionando problemas.

    Una planificación adecuada nos dará un periodo correcto de desarrollo, con su periodo de validación, su escritura de test unitarios y dando tiempo a dejar el código limpio y mantenible, no solo es cuestión de entregar a tiempo, sino que conlleva mucho más que eso. 

    Nos dará tiempo a realizar una buena batería de pruebas, a automatizar lo que fuese necesario, a solucionar errores de manera adecuada y a tener todo mantenido y sostenible, tanto el código como las pruebas, documentación o requisitos. La principal idea es esa, la mantenibilidad de todo lo que hagamos, por y para las personas involucradas en el proyecto.

    Una buena planificación se basa en la consensuación, el reunirse y hablar con todos las áreas, llegando a diferentes acuerdos, haciendo convivir la parte de negocio con la de desarrollo y calidad, adecuando a las necesidades reales y lógicas, de cada uno, esta planificación. Con necesidades reales y lógicas me refiero a que no todo se puede cubrir, ni todo es necesario y crítico. Dentro de todo lo crítico que tengamos entre todos, hay que hacer convivir y priorizar lo que realmente es importante dentro de todo el equipo de trabajo.

    La consensuación y el acuerdo es la base fundamental, el hablar entre todos, el que las personas sean partícipes, el adecuar y humanizar el proyecto, es la mejor manera de que todo el mundo esté alineado, tenga unos objetivos comunes y sepa que el camino es recto y más sencillo de lo que parece, apoyándose entre todas las personas, ayudando y no dejando solo a quien se descuelgue o realice una puntual mala acción, ya que no sabemos en que momento, alguno de nosotros, puede estar en su misma situación y buscaremos la ayuda y el apoyo del resto de personas del equipo.

    Como digo, planificar correctamente es algo más que dar fechas correctas, es humanizar y alinear a todo el equipo.
  • La calidad está de moda

    Despues de dos días cargados de charlas, seminarios, conversaciones...puedo decir que la calidad está de moda.


    Puedo ver como desarrolladores se apuntan a eventos de testing y quieren aprender sobre calidad, puedo ver que la calidad ya no es cosa de que pruebe un equipo o un grupo de personas, sino que es algo transversal, que empieza desde la primera conversación con el cliente hasta que el software se pone en producción.

    He visto en muchos sitios como la calidad es un cero a la izquierda, en otros que hacen calidad de cartón piedra y otros que se toman la calidad muy en serio, hasta el punto que es ella quien manda, quien dice cuando y como se sube a producción, quien ordena al resto de personas y la tienen en cuenta desde el primero hasta el último.

    Esto es lo que ahora mismo estoy viendo, las empresas se toman en serio la calidad, la hacen caso, la miman, la aprenden y la potencian, tienen el valor suficiente para decir que algo no se pone en producción si tiene defectos abiertos y dicen no a negocio si no lo ven del todo claro. Eso es calidad de verdad, eso es a lo que el mercado está encaminado y eso es lo que he visto en todos los seminarios y charlas de VLCTesting.

    He visto como empresas que eran más reticentes, han confiado en colegas de profesión y han implantado métodos y controles transversales de calidad, que han mejorado su rendimiento de manera abismal y ponen en producción cosas que, de verdad, son correctas.

    Ahora mismo, no nos vale esa calidad de cartón piedra, donde se alardea de utilizar un proceso y después se tapan los defectos para que no se vean, se pone en producción con errores detectados y no hay capacidad para parar una subida a producción, donde, como se decía en Valencia, hay que ser pollo, antes de gallo, ya se pasó la moda de los gallos que piensan que saben y en realidad, les queda un mundo por aprender (y no es que lo diga yo, es que ha sido un tema que se ha tratado, seminario tras seminario).

    Cada vez quedan menos gallos, gallos antiguos y que viven en el pasado, con ideas anticuadas y que deben de mirar hacía fuera, aprender y volver como un pollito, al que le queda todo el mundo por recorrer. En serio, estoy muy orgulloso de este VLCTesting en el que esta idea ha sido una constante, que apareció en la primera ponencia y se siguió escuchando en todas, hilando de una manera espectacular a lo largo de dos días.

    La calidad está de moda y comienza una época dorada que se va potenciando año tras año. Si eres de esos gallos, párate, aprender, escucha y vuelve siendo un precioso pollo.
  • Estrategia de entornos y control de calidad

    Si se diseña una buena estrategia de calidad, de manera obligatoria, tiene que venir de la mano de unos entornos de pruebas.



    Estos entornos tienen que adecuarse a las especificaciones acordadas, ajustarse a lo que vamos a probar en cada uno y acoplarse a las personas que accederán a ellos. 

    Lo primero es saber cuantas etapas o fases de control de calidad podemos utilizar o podemos ser capaces de introducir en el proyecto y por lo tanto donde se situarán estas respecto a los entornos disponibles o diseñados para ellas.

    En principio, y de manera genérica para casi cualquier proyecto, acabaremos teniendo los siguientes entornos:

    • Entorno de desarrollo: habitualmente se situará en local, en el ordenador de cada profesional y, se alimentará de una rama o de un repositorio de código determinado. El desarrollador es el dueño y señor del mismo, pero, tiene la responsabilidad absoluta de que cuando suba el código a la rama principal o al repositorio, lo que ha realizado, funcionará adecuadamente. Se podrá apoyar en la ejecución de los casos de prueba o de criterios de aceptación. Podrán existir tantos entornos de desarrollo como se considere o sea necesario.
    • Entorno de PRE: este entorno será donde se haga el núcleo central de las pruebas. Un entorno estanco, controlado y que será revisado periódicamente para que no tengamos regresiones o defectos bloqueantes que hagan ruido. Debe de existir, al menos, uno. Y se podrán replicar, aunque ya tienen costes. Además, debe utilizar una réplica exacta y actualizada periodicamente de la BBDD de Producción, para que las pruebas se realicen con los datos más reales posibles. Tampoco es necesario que se replique la infraestructura de PRO.
    • Entorno de QA: este entorno es el de certificación, donde nos aseguramos que el cliente pueda entrar y certificar, realmente, que sus criterios de aceptación se cumplen y el desarrollo está para subir. Este entorno replicará PRO y BBDD de PRO.
    • Entorno de ST: este entorno se utiliza para certificar diferentes integraciones con terceros (si fuese necesario) y que simplemente, pueda solaparse con producción para desplegar una nueva versión de código.
    • Entorno de PRO: es el entorno principal, el más importante, el que utilizan los clientes y por lo tanto, el que tiene que tener la última versión de código estable, validado y certificado. La BBDD será la que mande y de la que se replicarán las demás.

    En la mayoría de los casos, esté es un esquema habitual en todos los proyectos y donde se deben de realizar diferentes validaciones, certificaciones y poner a punto los desarrollos nuevos que pondremos a disposición de los clientes.

    Sin una buena estrategia de entornos, la estrategia de control de calidad no tiene ningún sentido, tienen que ir de la mano y apoyarse entre ellas, siendo indispensable, sobre todo, que los entornos, a partir de desarrollo, sean estancos y con las integraciones y despliegues totalmente controlados y dando el visto bueno, únicamente, el responsable de los mismos.

  • Realizar un ejercicio de transparencia

    Antes de realizar cualquier entregable, debemos de realizar una serie de informes y estadísticas que nos permitan gestionar de cara al cliente, un ejercicio de total y abierta transparencia.


    Este informe o documento debe de contener la funcionalidad que se va a entregar, que número de defectos hemos ido abriendo a lo largo del sprint o iteración, y cual es la tasa de corrección aplicada.

    Este ejercicio de transparencia, tendrá dos funciones: 

    la primera será que no tenemos nada que ocultar al cliente, ajustando sus expectativas y siendo lo más claro que podemos ser: somos así y vamos a mejorar en un porcentaje determinado por sprint. 

    En segundo lugar, nos hará trabajar mucho más fino y de manera correcta, ya que vamos a enseñar lo que hacemos, a los clientes.

    Estos informes se pueden realizar en base a controles a lo largo de los sprint, basándose en hitos como la documentación, las historias de usuario, validaciones, pruebas unitarias...y una vez realizado eso, habría que determinar el número de defectos generados y detectados, y sacar gráficas de comparables con entregas anteriores.

    Si la gráfica es peor, no debemos de hacer saltar todas las alarmas si no que debemos de identificar que estamos haciendo no tan bien y consensuarlo con el cliente para que nos de feedback y podamos mejorar en el futuro.

    Si la gráfica sale mejor, debemos de realizar una buena documentación para poder consultarla de cara a otros proyectos, reutilizando las ideas y la forma de trabajar, que tan bien nos lleva a hacerlo todo.

    El verdadero valor de hacer este ejercicio, es inculcarnos una manera, obligatoria, de hacer las cosas bien, ya que las vamos a enseñar y además, aprender junto con los clientes a retroalimentarse, mejorando juntos.
  • Libros benéficos

    En 2016 publiqué, “Aseguramiento de la Calidad”, cuyo beneficio es destinado a la Fundación Aladina, después le siguió: “Seis en 75”, destinado a la Fundación Menudos Corazones y “Asegurar la Calidad en dispositivos móviles...y no morir en el intento”, a la fundación Soñar Despierto. También he publicado una recopilación íntegra de los tres libros anteriores, llamada "Fundamentos de la calidad del software".

    Merchandising benéfico

    Desde la tienda de Cultura de Calidad se pueden adquirir diferentes artículos cuyo beneficio es destinado íntegramente a las tres fundaciones con las que colaboro actualmente: Fundación Aladina, Fundación Menudos Corazones y Fundación Soñar Despierto.

    Acciones benéficas futuras

    Esto no va a parar aquí. Mi cabeza no se está quieta, tengo muchas ideas que dar forma y convertirlas en realidad. Desde aquí, hago un llamamiento a diferentes fundaciones y ONGs para poder colaborar juntos y poder hacer cosas grandes que ayuden a personas o animales en todo el mundo. Si te apetece, ponte en contacto conmigo y hablamos.

    0
    Publicaciones
    0
    Seguidores
    0
    Visitas únicas
    0
    Me gusta