Pages Menu
Categories Menu

Posted by on Mar 24, 2016 in General | 3 comments

Entendiendo las diferentes escuelas de Testing, imprescindible para entender las diferentes (a veces enfrentadas) visiones del Testing hoy (2/2)

Continuamos con el post de ayer, vamos con la segunda y última parte de “Entendiendo las diferentes escuelas de Testing, imprescindible para entender las diferentes (a veces enfrentadas) visiones del Testing hoy”

3 – Escuela del Testing Factoría

El objetivo es la externalización, lograr organizaciones centradas sólo en Testing, buscando el abaratamiento para los “clientes”, bajando el coste de mano de obra por la deslocalización del Testing, a áreas geográficas más economicas y/o por reducir el papel humano en pro de la formalización, procesos o automatización, haciendo el Testing lo más rutinario posible,

Esta Escuela busca para los clientes la visión “caja negra” del Testing, para desarrollo, o empresas clientes, el Testing lo hace una “caja negra”.

Escuela claramente orientada a la especialización, muy alejada del Testing Ágil (escuela que veremos más adelante) que propugna más la “multifuncionalidad” y el equipo, el cual contiene dentro de sí todas las competencias (Testing entre ellas), sin depender de organizaciones externas que hacen lento al proceso.

Aquí entran las Testing Factories, entran los SLAs, el “Outsourcing”, etc. Y, en cierto modo, el Crowd Testing es una evolución de esta Escuela.

4 – Escuela Context-Dirven

La visión “humanista”, el software, y el Testing, lo hacen personas. No todo se puede automatizar, una cosa es “chequear” y otra “Testear” y siempre habrá un importante papel humano. También defiende que las prácticas dependen del contexto, que no hay “mejores prácticas”.

Aquí no me extiendo mucho, porque ya te dejé un post sobre El Testing guiado por el contexto o Context-Driven Testing.

El Testing Exploratorio es una de sus prácticas clave.

Los que defienden esta escuela, argumentan que lo que hoy se conoce como Context-Driven es incluso más antiguo que lo que propugna la escuela Formal o Analítica, que comienza en 1972. Ya que el famosos Jerry Weinberg escribió en 1961, en su libro “Computer Programming Fundamentals” la importancia del papel humano del Testing.

5 – Escuela del Testing Ágil o Test-Driven

Visión también “humanista” del Testing, que coincide mucho con la anterior, si bien se asume que no son exactamente lo mismo, aquí también hay debate. Y también hay debate en separar el Testing Ágil del Test Driven, yo creo que los tres, Context-Driven, Agil y Test-Driven tienen sus diferencias, como para tener entidad propia, si bien aquí, para no complicar más el tema, he dejado juntos al Ágil y el Test-Driven.

En este caso la Escuela Test-Driven está centrada en que el Testing guía la programación y comienza lo más pronto posible, y de ahí que el Testing comience en el usuario, o el Product Owner como representante del mismo. Aquí en esta escuela se propugna mucho la automatización del Testing. Prácticas típicas aquí son el TDD, ATDD, BDD.

La Escuela Ágil suele tomar las ideas anteriores pero, además, lincluye obligatoriamente las de la importancia del equipo, la del equipo multifuncional que incluye al Testing y no lo deja fuera (opuesto a la Escuela Factoría) y, cómo no, las del Manifiesto Ágil.

Coincidencias, encuentros y desencuentros

Seguro que según leías los anteriores o te sentías identificados con algunos y/o recordabas a alguien claramente centrado en alguno de ellos.

De entre las anteriores 5 escuelas hay algunas más coincidentes y otras más divergentes. Vamos con algunos casos…

¿Especificaciones de casos de Test y documentación?

Un ejemplo para diferenciarlas son las especificaciones y la documentación. La Escuela Ágil y la Context-Driven son muy de documentar lo justo y sólo lo que sea útil y necesario. La Ágil, concretamente, habla de la interacción por encima de la documentación.

Sin embargo, las otras tres Escuelas (Formal, Factoría y Estándares), en mayor o menor medida, requieren documentación, la fuerzan y la ven necesaria.

¿Certificaciones?

De nuevo, cada uno lo ve a su manera. La más clara “pro” certificaciones es la Escuela de Control, Estándares o Procesos. También la de “factoría” va de la mano de demostrar su valía a los clientes con las certificaciones.

En contra de las certificaciones tenemos a la Escuela Analítica, que suele defender que es suficiente con el título universitario que corresponda y a la Escuela del Context-Driven, que rechaza la certificación, ya que estas son más un “adoctrinamiento” que realmente algo que asegure las habilidades necesarias para Testear.

¿Testing separado del mundo?

Aquí, sin duda, la separación más clara está entre el Testing Ágil, con Testing muy integrado en desarrollo y la visión del Testing Estándar y la de Factoría, que, claramente, ven al Testing como algo separado.

Javier Garzás

Javier Garzás

Ph.D. en informática, Postdoctorado en la Carnegie Mellon (EE.UU) e Ingeniero en Informática.

Primera vez que me tocó hacer una gestión Ágil en una empresa... año 2001. Desde entonces he trabajado en, o para, más de 90. Y he formado a más de 2000 alumnos.

También soy profe de la Universidad Rey Juan Carlos.
Javier Garzás

3 Comments

  1. Buena descripción, con respecto al de factoria hay que añadir que se opta por este esquema en el intento de:
    1) No concentrar todo el pliego dado a concurso a una única empresa (y así favorecer la competencia entre postores)
    2) Que haya total independencia entre quien va a probar algo y el que lo desarrollo, lo cual tiene base en la costumbre usual de los desarrolladores de ir por la “happy path”.

    Que no es lo optimo, claro… pero esa es la lógica para ir detrás de ese modelo.

  2. El tema de las escuelas de testing está muy bien. Al menos a mi me ha servido para entender que cuando estoy hablando de testing con alguien que trabaja en otra empresa o con otros valores, el problema no es que uno de los dos debe estar equivocado, simplemente es que seguimos a escuelas distintas.

    Otra cosa es que el concepto es del 2007, cuando Brett Petticord, James Bach y Cem Kaner todavía se hablaban, y el desarrollo ágil no había cogido la tracción que tiene hoy en día.

    Y es que en 2016 todo el mundo es ágil. Algunos en nombre (AOIN) y otros más o menos.

    Entonces, las 5 escuelas hoy en día hay que verlas con este prisma.
    La escuela Analítica, no creo que haya cambiado mucho, pero no tengo contacto con nadie que la siga, así que no sé que testing se enseña en las universidades.
    La escuela de proceso, esta ha cambiado el waterfall por el agilismo, pero todo sigue siendo proceso, y scrum y reuniones sin sillas.
    La escuela de factoria, aquí han aparecido dos vertienes, la barata que no ha cambiado mucho, solo se ha relocalizado a Filipinas y a Nigeria cuando India se ha vuelto muy cara y han aparecido contratas que externalizan testing de calidad, a precios más exclusivos, House of Test y Moolya son ejemplos.
    La escuela de context driven… esta tiene una crisis interna, y se tiene que decidir si necesita a James Bach o si puede existir sin el.
    Y la escuela de testing ágil, pues como todo el mundo ahora es ágil, ya te puedes encontrar de todo. Desde los que no quieren tener testers dedicados a los que los han integrado en sus equipos como una especialidad más.

    Total, que a ver en 5 años como queda la cosa.

    • Interesante la reflexión que haces sobre la evolución de las 5 “tradicionales” escuelas. Ciertamente, la context driven depende mucho de unas pocas personas y es de futuro incierto, aunque siempre quedará su labor de haber reivindicado con fuerza el papel humano del Testing.

      Saludos

Post a Reply

Tu dirección de correo electrónico no será publicada.

Share This