Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies. Más Información. Aceptar

Agile Inception: Qué es y cómo ejecutarlo

Marvin López Mendoza
Agile Inception: Qué es y cómo ejecutarlo

Una afirmación que podríamos hacer para iniciar este artículo e introducir el tema central, es que muchos desarrollos de productos de software fracasan, incluso mucho antes de que puedan ser lanzados al mercado.

¿Por qué crees que sucede esto?

Para mí, una de las razones es que, para desarrollar un producto de software, es necesario un equipo de desarrollo alineado con las necesidades de los usuarios y del negocio.

¿Cuántas veces hemos visto que el equipo de desarrollo empieza a trabajar en desarrollar el producto, pero a mitad de camino, se dan cuenta de que lo que han desarrollado no tiene nada que ver con lo que los clientes y el negocio realmente necesitan o tenían como expectativas?

En un caso como este, es probable que las ideas de cómo el equipo debía trabajar, el propósito del proyecto, el decidir su alcance, lo que es y no es el producto, fue decidido por una persona o por un comité de personas que no forman parte del equipo que va a desarrollar el producto, y que toda esta información que definieron no fue compartida de forma efectiva con el equipo.

Además, me atrevo a asegurar que al inicio del desarrollo del producto se pidió al equipo una estimación casi certera sobre el desarrollo y se estableció un alcance fijo para asegurar la entrega del producto. Sin embargo, en la realidad, es en ese preciso momento donde existe menos conocimiento y más incertidumbre, dado que el equipo aún no cuenta con la experiencia necesaria sobre el mercado, la tecnología e incluso la manera de trabajar en el equipo. Lo anterior, causa que la estimación en vez de certera, sea irreal o absurda, y conlleva a la ejecución de un plan que es poco probable que logre cumplirse, pero que a la larga causa que se comprometa la calidad del producto por sobre cumplir el plan establecido.

Qué es Agile Inception

El Agile Inception es un conjunto de actividades que permiten a los equipos ágiles “comenzar” el desarrollo de un producto de forma coherente y efectiva. Este conjunto de prácticas, también conocido como el Agile Inception Deck, fue introducido por Jonathan Rasmusson en su libro The Agile Samurai, How Agile Masters Deliver Great Software en el año 2010.

Inception, una palabra que tiene su origen etimológico del latín “incipere”, que significa “comenzar”.

El Agile Inception deck consta de una serie de pasos, 10 para ser exactos, que ayudan al equipo a establecer un propósito y expectativas comunes, con respecto al equipo, a todos los interesados e involucrados en el producto y al producto en general. Una vez completado, el equipo estará alineado desde el inicio del proceso y arrancará el desarrollo con el mismo entendimiento, y mirando hacia la misma dirección.

El propio Rasmusson ha dejado a disposición un documento en formato Power Point que describe las dinámicas del Agile Inception deck y que puedes descargar de forma libre aquí.

Lograr un mismo pensamiento, visión del producto y de equipo, mucho antes de que se haya escrito la primera línea de código, son algunos de los objetivos del Agile Inception.

Características del Agile Inception

Según Rasmusson, un Agile Inception puede tardar desde un par de días hasta una o dos semanas en completarse, debido a la cantidad de actividades e información que se espera conseguir de ella. Por lo general, lo que se obtiene, sirve para contar con una planificación aproximada de un periodo entre 3 y 6 meses.

Para que realmente se logre el propósito, y que exista alineación entre las expectativas de negocio sobre el producto y el desarrollo, es necesario que todas las personas interesadas en el desarrollo del producto participen, de forma que puedan brindar su punto de vista y conocer el del resto del equipo. Además, de esa forma contribuirán a la generación de toda la información y documentación correspondiente al inicio del desarrollo del producto.

Podemos pensar que tener un evento donde esté tanto el equipo de desarrollo, como los patrocinadores e interesados en la creación del producto, será un evento costoso, sin embargo, si analizamos el beneficio de tenerlos a todos participando conjuntamente en el alineamiento de las expectativas, nos ahorrará el costo asociado a desarrollar algo que no cumple las expectativas y que simplemente no vale para el propósito esperado, aspecto del que nos damos cuenta muy adelantado el desarrollo.

El Agile Inception, debe ser facilitado por una persona que tenga habilidades de facilitación y comunicación. Ese rol de facilitador es comúnmente asumido por un Scrum Master o un Agile Coach.

Preparación del Agile Inception

Como en toda actividad, y por la importancia que tiene de cara al desarrollo del producto, hay una serie de actividades que es necesario realizar como preparación y previo al inicio del Inception, a fin de contar con todo lo necesario para que se logren los objetivos de alineamiento:

  1. Identificar y seleccionar quién debe participar (grupos de interés y usuarios activos).

  2. Desarrollar y enviar la agenda de todas las actividades del Inception a todos los participantes con anticipación.

  3. Contar con un facilitador o facilitadores con experiencia, es decir que cuenten con las habilidades para facilitar un taller donde participarán profesionales de alto rango en la organización (stakeholders) y con personal técnico y operativo.

  4. Reservar el espacio físico o virtual que se convertirá en el “War Room” (asegurar que podemos contar con el mismo espacio durante todo el Inception, y garantizar que los materiales de trabajo no se muevan).

  5. De realizar el Inception de manera presencial, contar con material de oficina como rotafolios, tarjetas, sticky notes de distintos tamaños y colores, hojas de papel, lápices, marcadores, etc. Estime la cantidad suficiente para que cada participante pueda trabajar durante el Inception. Si realizamos el Inception de forma virtual, asegurar que contamos con las herramientas y las plantillas necesarias para facilitar las actividades.

  6. Por la intensidad que tienen las actividades, separar espacios para descanso o Coffee break. Nuevamente, si el Inception será facilitado de forma presencial, también sería oportuno preparar el Coffee break para aprovechar ese tiempo para el networking y que todo el equipo se conozca.

Imagen 0 en Agile Inception: Qué es y cómo ejecutarlo

Pasos del Agile Inception

La idea detrás del Agile Inception es que, si podemos tener a las personas correctas en una sala y hacerles las preguntas correctas, esto ayudará a establecer correctamente las expectativas técnicas y de negocio, aprovechando la inteligencia colectiva.

Una vez contamos con todas las personas interesadas, entre las que deben encontrarse los clientes (si es posible), patrocinadores (stakeholders), desarrolladores, testers, analistas, arquitectos, administradores de bases de datos, etc. o cualquiera otro que contribuirá de algún modo al desarrollo del producto, realizaremos una serie de pasos clasificados en 2 grandes grupos: Entendiendo el contexto general y Hagamos el producto una realidad.

Entendiendo el contexto general

En la primera etapa del Agile Inception queremos entender el por qué queremos desarrollar el producto, respondiendo a preguntas como:

  • ¿Por qué estamos aquí?
  • ¿Cómo describimos lo que hacemos en una frase corta e inspiradora?
  • ¿Cómo comercializamos nuestro producto?
  • ¿Qué es lo que no haremos o no debemos hacer?
  • ¿Quiénes son nuestros vecinos?

A continuación, describo cada uno de estos pasos:

  1. ¿Por qué estamos aquí?: Un recordatorio rápido de por qué estamos aquí, quiénes son nuestros clientes y por qué decidimos crear el producto.

  2. ¿Cuál es nuestro Elevator Pitch?: si tuviéramos 30 segundos (el tiempo aproximado que tardamos en un ascensor) y solo podemos describir nuestro proyecto en una frase corta, ¿cómo lo haríamos? Esta actividad es ideal para saber si todos los involucrados en el proyecto son capaces de crear un discurso para vender el producto a otros.

  3. ¿Cómo será la caja del producto?: Si en una revista, periódico o valla publicitaria, viéramos la publicidad del producto, ¿cómo sería?, si lo viéramos, ¿lo compraríamos?

  4. ¿Qué NO-ES el producto?: Es muy común tener claro lo que queremos desarrollar como producto. Tomemos un tiempo para establecer límites, pensemos y aclaremos lo que no queremos ser ni hacer.

  5. ¿Quiénes son nuestros vecinos?: Este ejercicio trata de conocer a todas las partes interesadas que rodean el desarrollo del producto, ya que muchas veces dependemos de personas, áreas o departamentos ajenos al equipo.

Hagamos el producto una realidad

En la segunda parte del Agile Inception, ya que hemos entendido el porqué del equipo y del producto, podemos aprovechar la inteligencia colectiva para definir el cómo. Es en esta etapa donde buscamos desarrollar aspectos más concretos de la solución, a través de las siguientes preguntas:

  • ¿Cómo debe ser la solución técnica?
  • ¿Qué nos mantiene despiertos de noche, cuáles son los riesgos a los que nos enfrentamos?
  • ¿Cuánto nos costará desarrollar el producto en tiempo? (estimación aproximada, no compromiso)
  • ¿Qué realmente podremos entregar y qué no?
  • ¿Qué necesitamos para desarrollar el producto, cuántas personas, cuánto dinero, etc.? (estimación aproximada, no compromiso)

A continuación, describo cada uno de estos pasos:

  1. Mostremos la solución: Pongamos en común las ideas que tenemos en la cabeza sobre la arquitectura, los procesos de implementación de la solución, etc. para asegurarnos que todos estamos pensando lo mismo y si no, ponerlo en común.

  2. Pregunta que nos puede quitar el sueño: Esta dinámica nos hace pensar en las peores cosas que podrían pasar. Es cuando identificamos los riesgos que cada uno considera que pueden afectar el desarrollo del producto.

  3. Establezcamos el tamaño: Estimemos lo que puede tomar el desarrollo del producto, ¿3, 6, 9 meses,1 año, cuánto?. El objetivo no es ser exactos y establecer compromisos falsos, es inferir la magnitud y ver si los recursos con los que contamos son suficientes para cumplir los objetivos que hemos trazado.

  4. Ser claros en lo que tenemos que entregar: En todo desarrollo de producto debemos ser flexibles en algunos aspectos, pero en otros no, establezcamos donde podemos ceder cuando se presente alguna situación y cuando no. ¿Es calidad, dinero, flexibilidad, simplicidad?

  5. Ser claros en lo que va a costar (como una estimación y para tomar decisiones, no como un compromiso): Puede ser que ya tengas un presupuesto establecido, si ese es el caso, es en este momento donde podemos entender si es factible o no adentrarnos en el desarrollo del producto, según las expectativas establecidas, el equipo, competencias con los que contamos y el presupuesto propuesto. Si no contamos con un presupuesto, aquí definimos esa idea inicial de lo que va a costar y de lo que necesitamos en cuanto a personas y recursos para poder desarrollar el producto.

Agile Inception vs. Lean Inception

El Lean Inception es una variante del Agile Inception propuesta por Paulo Caroli en 2017, que toma sus bases en la filosofía Lean, principalmente de reducción de desperdicios y en la definición de un MVP, aspecto fundamental de Lean Startup.

La principal similitud entre Agile Inception y Lean Inception es que ambos tienen el objetivo de reunir a todas las partes interesadas en el desarrollo un producto de software, para alinear sus expectativas y conseguir un producto final acorde a lo esperado.

Algunas de las diferencias a resaltar son:

  • El Lean Inception se enfoca en el producto para crear un MVP, es decir, en desarrollar una versión simple pero funcional del producto de software que pueda ser lanzado rápidamente al mercado para ser testeado por los usuarios y recibir feedback temprano, evitando el pasar demasiado tiempo desarrollando algo que no cumple las expectativas de lo que espera el negocio y los usuarios. Por su parte, el Agile Inception contempla además otros aspectos no relacionados con el producto, como por ejemplo: discusiones respecto a la arquitectura, a entender el big picture, es decir, la planificación a largo plazo y de gestión del proyecto.

  • El Lean Inception se realiza en un tiempo reducido, 5 días máximo, con respecto al Agile Inception.

  • El Lean Inception busca responder únicamente a dos preguntas principales: ¿Cómo establecemos lo que debería estar en el MVP y comenzamos el desarrollo del producto lo más rápido posible? y ¿cómo nos aseguramos de que el equipo comience a desarrollar el producto con un entendimiento compartido y un plan efectivo?

Voy a describir brevemente las dinámicas que se realizan en un Lean Inception, como he comentado antes, todas enfocadas en entender el producto y definir el MVP. En resumen:

  1. Escribir la visión del producto: Aquí podemos utilizar una plantilla muy parecida a la que utilizamos en el Elevator Pitch del Agile Inception, siempre con un enfoque de producto.

  2. El producto Es-No es, Hace-No hace: La idea principal es pensar en conjunto lo que no debemos hacer y así establecer nuestros límites.

  3. Definir los objetivos del producto: Entender los objetivos de negocio que cumplirá el producto desde la perspectiva de los participantes e identificar lo que es realmente importante.

  4. Describe las Personas (usuarios): Esto nos ayudará a entender a nuestros usuarios, sus roles y características, de modo que podamos desarrollar el producto que mejor se acople a sus necesidades.

  5. Describir las características y funcionalidades: A través de una sesión de tormenta de ideas, describamos ¿Cómo esperamos que el usuario interactúe con el producto?, siempre enfocados con los objetivos de negocio previamente definidos y acordados.

  6. Revisión técnica, comercial y de experiencia de usuarios (UX): Identificamos cómo el equipo se siente con respecto a las expectativas comerciales, los aspectos técnicos y el entendimiento acerca de la experiencia que se quiere ofrecer a los usuarios.

  7. Definir los viajes del usuario y sus características: Establecemos la serie de pasos (interacciones) que ejecutarán los usuarios cuando utilicen el producto en busca de cumplir sus objetivos.

  8. Secuenciar las características: Con una herramienta como el User story Map, podemos secuenciar las funcionalidades del producto y establecer un plan de entregas.

  9. Construye el MVP Canvas: Ponemos en común en una herramienta visual, la definición del MVP para el entendimiento común.

  10. Mostrar los resultados obtenidos: Es el momento de demostrar al resto de la organización el plan de desarrollo del MVP del producto.

Inception en remoto

Ya hemos visto que, el Agile Inception fue creado con la intención de que todas las personas interesadas en el desarrollo de un producto se reúnan en un mismo lugar, muchas veces llamado War Room, para crear alineación de expectativas y alcance con respecto al producto en cuestión, sin embargo, en la actualidad en la que estamos viviendo y debido al teletrabajo, ese escenario ya no es del todo posible.

Afortunadamente, esta situación no ha sido impedimento para que nuevos productos se desarrollen, que continúe la innovación en las empresas y que los equipos detrás del desarrollo del producto se alinean para crear el mejor producto que pueda ser lanzado al mercado, en el menor tiempo posible.

Esto ha sido posible gracias a la disponibilidad de herramientas online que nos permiten obtener esa alineación y crear nuestra War Room virtual, tales como Miro o Mural que nos proveen de un espacio virtual donde podemos trabajar en equipo para definir esas expectativas, objetivos y planes.

He querido terminar este artículo compartiendo tableros que han sido creados y que están disponibles de forma gratuita para que si necesitas facilitar un Agile Inception o un Lean Inception puedas explorar estas herramientas y alinear a tu equipo cuando se proponen desarrollar un nuevo producto:

Por supuesto que puedes tomar las ideas presentadas en estos tableros y crear tu propio tablero para facilitar tu Inception, según las necesidades de tu equipo y del producto que están por desarrollar.

Recuerda,

El Inception busca que todas las personas correctas tengan la mirada posicionada en la misma dirección.

Relacionado

Te dejamos una selección de cursos, carreras y artículos

Curso de Scrum: Fundamentos y buenas prácticas

Curso de Scrum: Fundamentos y buenas prácticas

curso

Con este curso aprenderás:

  • Tendrás claro qué es y qué no es Scrum.
  • Aprenderás roles, ceremonias y artefactos de Scrum.
  • Aprenderás diferentes técnicas y herramientas que te ayudarán en el día a día.

Duración: 2 horas y 11 minutos

Qué es la Metodología Agile

Qué es la Metodología Agile

Metodologías y Herramientas

17 de Mayo de 2016

Te explicamos a fondo en qué consiste la metodología Agile para mejorar tu productividad, descubre qué es Scrum.

Qué es Agile Management

Qué es Agile Management

Gestión de Proyectos

12 de Marzo de 2020

En esta ocasión vamos a tratar el tema del Agile management, todo desde el punto de vista de Jurgen Appelo, un famoso escritor que creó el Management 3.0 como evolución para la gestión de equipos.

Más de 300 empresas confían en nosotros

Oesia
Vass
Everis
Ayesa
Altran
Ibermatica
Atmira
GFI
Accenture
GMV
Concatel
Telefonica
Caser
Banco de España
kpmg
Mapfre
Randstad