Barra Sup Mobile


La oficina de proyectos de informática
pmoinformatica.com

Páginas

lunes, 8 de junio de 2015

Pruebas de software Agile: Planificar con los 4 cuadrantes del Agile Testing (2da parte)

Imagen obtenida de: LogiGear

Presentamos la segunda parte de nuestra serie sobre como planificar las pruebas de software usando los 4 cuadrantes del Agile Testing.

En la primera parte de nuestra serie sobre como planificar con los 4 cuadrantes del Agile Testing, nos enfocamos en describir las herramientas y tipos de pruebas de software que describe cada cuadrante, como instrumento para la planificación de las prueba en metodologías ágiles.

En esta segunda parte, veremos algunos consejos y recomendaciones sobre cómo usar los 4 cuadrantes para definir el enfoque y plan de pruebas de software agile.

PMOInformatica presenta: Planificar con los 4 cuadrantes del Agile Testing (2da parte)

¿Cómo usar los cuadrantes para planificar el Agile Testing?

A continuación compartimos algunos comentarios sobre Lisa Crispin, coautora del libro “Agile Tester” sobre cómo usar los 4 cuadrantes para planificar las pruebas. Aquí el enlace al post completo de Lisa Crispin

Crispin, L. Using the Agile Testing Quadrants. Blog Agile Testing with Lisa Crispin

Uso de los 4 cuadrantes

  • Los 4 cuadrantes son una taxonomía para ayudar en la planificación del Agile Testing.
  • La idea de usarlos es asegurar que se tomen en cuenta todos los recursos y métodos necesarios para logar la producción de software de calidad. 
  • Los 4 cuadrantes no son reglas rígidas ni en su contenido ni orden. Cada equipo de desarrollo de software debe adaptarlos a su situación particular con amplia libertad.
  • La numeración de los cuadrantes es arbitraria y es para que, por ejemplo, un interlocutor pueda referirse al “cuadrante 1” en lugar de “pruebas de tecnología de cara a cliente”.

Más Información sobre Software Testing

Visita nuestra página de Recursos en Pruebas de Software

Por cual cuadrante comenzar

  • La mayoría de los proyectos comenzarían por el cuadrante 2 que contempla ejemplos de comportamiento, puebas de las historias de usuario y prototipos.
  • Sin embargo, no es descartable que un proyecto comience por ejemplo con pruebas de desempeño (cuadrante 4) si es el aspecto más crítico del proyecto.
  • Si existe incertidumbre sobre algunos requerimientos, que no están del todo definidos cuando comienzas, podrías comenzar con testing exploratorio (cuadrante 3). El Testing explortatorio es para obtener información sobre el comportamiento y no para probar si esta correcto o no.

Desarrollar y probar software en pequeños incrementos

Para comenzar con las pruebas especificadas en los cuadrantes 3 y 4, se requiera que exista alguna funcionalidad desarrollada e instalada en ambiente de desarrollo.

Por esta razón lo más probable es que termines iterando rápidamente entre los 4 cuadrantes trabajando en pequeños incrementos. Esto se alinea con enfoques de desarrollo como Behaviour Drive Development (BDD) y Test Driven Development (TDD).

Aquí un ejemplo de cómo trabaja este proceso:

  • Primero escribes código de una prueba para un pequeño fragmento de una funcionalidad.
  • Luego escribes el código para esa funcionalidad.
  • Una vez que la prueba pasa puedes considerar automatizar la prueba (escrita anteriormente).
  • Luego puedes realizar testing exploratorio, de seguridad o de carga (desempeño).
  • Por último, añades otro pequeño fragmento de funcionalidad y repites el proceso nuevamente.

Como puedes ver, con esta metodología sigues el proceso BDD y TDD, agregando pequeños incrementos de código.

Recomendaciones y consejos

Aquí te dejamos algunas recomendaciones y consejos para sacar el máximo provecho de tu estrategia de software testing Agile.

  • Realiza las pruebas lo antes posible en el proyecto y con mucha frecuencia:
    • Integrar pruebas unitarias, funcionales y de carga en la planificación desde el principio.
    • La intención es identificar y rectificar problemas de forma temprana, antes que se conviertan en cuellos de botella que puedan comprometer el proyecto.
  • Incorpora a analistas de pruebas en el equipo de desarrollo:
    • Los testers tienen el conocimiento para asegurar que se entregue software de calidad y que cumpla los requerimientos del usuario.
    • Al integrar a los testers al equipo de desarrollo logramos que se comparta el conocimiento. 
    • De esta forma el equipo puede realizar sus propias pruebas.
  • Que los Testers revisen las pruebas unitarias:
    • Los desarrolladores tienen a pensar de forma diferente que los testers, por ejemplo, considerando solamente el escenario de éxito.
    • Para mejorar las pruebas unitarias, permite que los analistas de pruebas revisen las pruebas unitarias y realicen sugerencias.
    • De esta forma los Testers pueden ayudar a identificar escenarios de alto riesgo que se le pasaron por alto al equipo de desarrollo.
  • Ejecuta las pruebas de carga (estrés) diariamente:
    • Las pruebas de estrés son cada vez son más críticas para el éxito, considerando ique el software de hoy se diseña para implementaciones masivas que pueda escalarse.
    • Deben incorporarse pruebas de estrés en todas las construcciones de software a diario.
    • De esta forma podrás identificar de forma temprana posibles problemas de desempeño de tu aplicación.
  • Automatiza tus pruebas de software:
    • Probar manualmente puede ser tedioso, consumir mucho tiempo y ser ineficiente.
    • También probar manualmente te expone más a los errores.
    • La automatización de pruebas también te permitirá ejecutar con mayor eficiencia las pruebas de regresión cada vez que incorpores modificaciones.

¿Buscas más información?

En el siguiente artículo te mostramos más información:

8 diferencias de las pruebas ágiles de software

¿Y qué opinas tú?

¿Has aplicado metodologías ágiles o el Agile Testing?, ¿Cuéntanos tu experiencia?, ¿Cuáles son los factores críticos para el éxito?, expresa tu opinión en la sección de comentarios.

<< Artículo anterior: Planificar con los 4 cuadrantes del Agile Testing (1era parte)

¿Buscas más información de metodologías ágiles?

¿Quieres obtener completamente gratis y directamente en tu correo electrónico plantillas, artículos y otros recursos de gerencia de proyectos y metodologías ágiles?, entonces presiona "suscríbete" a continuación.

Suscríbete a la lista de correo electrónico:


Vía FeedBurner, se abrirá una nueva ventana

También puedes seguirnos vía Twitter, Facebook o Linkedin:

  

Artículos similares

Que es el Agile Testing y cuáles son sus principios y estrategias

1 comentario :

  1. algunos aspectos difíciles de gestionar es "comenzar lo más pronto posible" y "extraer casos de prueba" de las historias de usuario para convertirlos en pequeños scripts.

    ResponderEliminar