La separación entre el equipo de desarrollo y testing (o calidad del software)

Que haya especialistas en testing o que haya personas que hagan verificaciones sobre la calidad del software no me parece mal, al contrario. Sé también que hay muchas personas que no están de acuerdo con la necesidad de estos equipos de trabajo.

Lo que suele provocar rechazo es el hecho de que alguien ajeno al proyecto, a su contexto y sensibilidades, que no ha sufrido lo que has sufrido tu para sacar el trabajo adelante, se ponga a hacer revisiones que obstaculicen el paso a producción de una versión de un producto o el propio proceso de desarrollo.

Precisamente el problema está (y en eso estoy totalmente de acuerdo con los críticos) en la palabra ajeno y en lo que eso representa realmente: no conocen la realidad del proyecto y las revisiones que realizan están basadas en procesos y reglas predefinidos que no tienen en cuenta esa realidad, persiguen objetivos distintos y se termina cayendo, además, en el antipatrón “arrojar al otro lado del muro“.

Yo estoy de acuerdo en que esos equipos o especialistas colaboren con el proyecto pero sintiéndose parte de él, de su contexto y de sus objetivos y trabajando a favor del proyecto por encima (que no ignorando gratuitamente) de los procesos, normas y reglas. Todos agradecemos la ayuda de personas y el valor que nos puedan aportar, por lo que el problema no es que participe más gente sino la manera en que se efectúa esa colaboración.

No debe haber barra libre pero tampoco reglas inflexibles. ¿Cómo se llega a eso? Para empezar con unas normas de mínimos basándose en aspectos de los que la organización no puede renunciar (salvo excepciones debidamente justificadas), como por ejemplo, el entorno tecnológico, una arquitectura de desarrollo a alto nivel, el control sobre el código fuente y sobre las librerías dependientes, control de la deuda técnica, elementos documentales, etc… y que no de partida no deben ser impuestos sino consensuados y negociados con las personas que están en el día a día de los proyectos y algunos de ellos interpretados en función del contexto del proyecto como por ejemplo el control de la deuda técnica o incluso algunos tipos de documentos.

También es importante que todo el mundo sea consciente que estos equipos pueden aportar valor (si se dan las circunstancias que he comentado) y que ese valor puede influir en la calidad del producto final, ahora bien, estas colaboraciones por el simple hecho de existir no van a garantizar la calidad del sistema de información, es decir, no es una inversión que va a garantizar eso porque entre otras cosas en el proyecto hay tantas variables que influyen en su resultado final que escapan a su alcance, por eso, soy de la opinión que llamar a estos equipos y a sus tareas utilizando la palabra certificación hace un flaco favor tanto a esos equipos como a sus funciones.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: