Mostrando entradas con la etiqueta Mind Mapping. Mostrar todas las entradas
Mostrando entradas con la etiqueta Mind Mapping. Mostrar todas las entradas

Mapas de Impacto

Estoy leyendo el libro de Gojko Adzic"Impact Mapping: Making a big impact with software product and projects". Me tiene bastante entretenido. Es un tema que está haciendo mucho ruido.

Personalmente, estoy intentando trabajar con mapas mentales desde hace un tiempito. Creo que es una herramienta potente que puede aplicarse a diversos dominios, tareas y/o problemas que tengamos que resolver. Sobre una aplicación puntual ya he escrito aquí.

Un mapa de impacto es un mapa mental que permite a los equipos y a las organizaciones visualizar alcance y asunciones relacionadas a algún objetivo que se intente lograr. Supongamos que, en nuestro contexto, es construir un producto software. Estos mapas son creados de manera colaborativa por todos los involucrados e interesados en lograr la meta que los convoca (obviamente, esto es una situación ideal). La gran ventaja de estos mapas: permiten tener controlada la big picture de nuestro proyecto, tener en claro a dónde queremos ir, cómo llegar y a quiénes debemos involucrar.

Durante la creación de una mapa es necesario responder a las siguientes preguntas:

  • WHY? Es el centro del mapa.  Es la meta que se está tratando de lograr. Una buena meta debería ser SMART (Specific, Measurable, Action-oriented, Realistic and Timely) y presentar el problema ha ser resuelto.
  • WHO? Este nivel indica quienes son los actores que pueden influenciar el resultado. Quién puede producir el efecto deseado, quién puede obstruirlo y quién será impactado. Debe ser lo más específico posible.
  • HOW? Explicita el impacto que se trata de crear. Cómo debe cambiar la conducta de los actores y cómo pueden ayudar a lograrlo. Especificar estos impactos permite priorizar e identificar riesgos. 
  • WHAT? El último nivel del mapa es el nivel de los entregables. Qué puede hacer el equipo o la organización para dar soporte al impacto. Puede contener varios niveles más y no necesariamente deben completarse desde el inicio. Puede ser refinado de manera iterativa.

A modo de ilustración, hice el siguiente mapa de impacto usando la herramienta MindMup. Espero que se animen a aplicarlo y a compartir la experiencia :) Voy a seguir escribiendo sobre el tema a medida que avance con el libro.


Tener +500 visitas en una entrada sobre Mapas de Impacto on MindMup

Mind Mapping en Testing

En este último tiempo, en mi trabajo, hemos comenzado a usar mind maps para plantear estrategias y derivar pruebas funcionales. Nos parece una herramienta muy potente para tratar la complejidad del testing y del software.

Un mind map (o mapa mental) es una técnica gráfica que permite representar y relacionar ideas alrededor de una idea central. La característica principal, por la cuál son muy utilizados, es que organizan la información de la misma manera que funciona nuestro cerebro, trabajando sobre sus hemisferios y creando diagramas que son fácilmente recordables.

Para hacer un mapa mental, hay que tener en cuenta lo siguiente:

1. Escribir la idea principal en el centro del diagrama.
2. Los temas importantes debe ser graficados como branches (o ramas), asociados a la idea principal. Cada nueva rama es agregada en el sentido de las agujas del reloj.
3. A cada rama debe asociarse una imagen o una palabra clave.
4. Los temas/conceptos de menor relevancia son incluídos en el mapa como subramas de las ramas principales.

Mind maps para estrategias y diseño de tests


Como ya he comentado, generar un buen plan de pruebas es complejo debido a que no sólo debemos tener en cuenta la funcionalidad a testear sino también cómo ésta se relaciona con otras y su impacto en el software. Aquí, la explosión de combinaciones y escenarios puede ser aún mayor.

Un mapa mental nos permitirá abordar todas estas cuestiones de una manera rápida y simple. Para esto, es esencial que el mind map sea desarrollado, cómo mínimo, de a pares. En caso de ser necesario se puede incluir en el grupo, a algún analista funcional o developer pero sólo para evacuar dudas funcionales puntuales y así mantener a salvo la objetividad de la estrategia.

Pasos:

1. Reunir al equipo.
2. Elegir un moderador.
3. Utilizar una pizarra o alguna herramienta software. Esto último es preferible para mantener la documentación. También es deseable tener un template para no tener que comenzar el mapa desde el scratch.
4. Escribir la funcionalidad a testear en el centro del mapa.
5. Agregar como ramas principales, las categorías para dividir y priorizar la funcionalidad (ej, ABM, seguridad, performance, datos, funcionalidades relacionadas, etc)
6. Empezando por la rama prioritaria, agregar las condiciones de cada prueba como ramas secundarias.
7. Marcar branches prioritarios con colores, números, imágenes.

Algunos beneficios que se obtienen cuando se utiliza esta técnica:

1. Inducción para todos los testers participantes y otros testers.
2. Mayor visibilidad sobre la funcionalidad, su relación con otras y sobre el software en general.
3. Flexibilidad ante cambios en requerimientos.
4. Incremento del coverage.
5. Identificación y priorización de escenarios importantes.
6. Soporte al ciclo de ejecución de pruebas.
7. Documentación.
8. Aumento de la creatividad del equipo.

En resumen, los mapas mentales son muy poderosos, flexibles y bondadosos, no sólo para testing, sino también para tomar notas, hacer presentaciones, tomar decisiones y hasta gestionar tareas.

Fuentes: