Project Management

Eventos en Scrum II

Seguimos hablando de los eventos en Scrum. En el anterior post hablé sobre el Sprint y el Sprint Planning. A continuación seguiré con Daily, Sprint Review y Sprint Retrospective.

3. Daily Scrum

Es un evento que se celebra cada día, de duración de 15 minutos, en el que el Development Team sincroniza las actividades y crea un plan para las próximas 24 horas. Lo ideal es que se haga siempre a la misma hora y en el mismo lugar para que todo el mundo lo recuerde de forma fácil

La Daily Scrum sirve para inspeccionar el progreso hacia el Sprint Goal y cómo avanza el progreso. Para ello, se inspecciona el trabajo realizado en el último día y se comenta el trabajo que se va a realizar ese día.

¿Cómo se realiza?

Durante la reunión, los miembros del Equipo de Desarrollo explican:

  • ¿Qué hice ayer para ayudar al Developement Team a cumplir el Sprint Goal?
  • ¿Qué voy a hacer hoy para ayudar al Development Team a cumplir con el Sprint Goal?
  • ¿Veo algún impedimento que me impida a mí o al Developement Team a cumplir con el
    Sprint Goal?

La Daily Scrum es una reunión clave para inspeccionar y adaptar.

La Daily Scrum optimiza la probabilidad de que el Development Team cumpla con el Sprint Goal, cumpliendo las siguientes funciones:

  • Ayuda a que la comunicación sea más fluida entre los miembros del Team
  • Se identifiquen impedimentos y se proceda a realizar las acciones necesarias para su eliminación
  • Se detecten antes las desviaciones (si existen)
  • Mejora el nivel de conocimiento de los miembros del equipo de lo que sucede diariamente
  • Promueve la toma de decisiones de forma rápida

El Scrum Master se asegura de que el equipo de desarrollo tenga la reunión, pero es el Development Team el que es responsable de realizar la Daily.

Sprint Review

La Sprint Review (Revisión del Sprint) se lleva a cabo al final del Sprint con el objetivo de inspeccionar el incremento y adaptar el Product Backlog si es necesario. El Sprint Team y los stakeholders revisan lo que se ha hecho en el sprint y en función de eso y de cualquier cambio producido en el Product Backlog, se decide cuales son las siguientes acciones para optimizar el valor.

El objetivo es obtener retroalimentación y fomentar la colaboración.

Es una reunión de 4 horas de duración máxima para Sprint de un mes, asegurándose el Scrum Master de que tiene lugar y que los asistentes entiendan su propósito. Es el Product Owner el que inivita a los stakeholders que cree conveniente a participar.

Seguir leyendo «Eventos en Scrum II»

Eventos en Scrum I

Los eventos se usan en Scrum para crear un patrón constante y minimizar la necesidad de reuniones no definidas.

Todos los eventos son «time boxeados», es decir, tienen una duración máxima, pudiendo acabarse, siempre que se logre el objetivo del evento.

La idea es evitar el desperdicio de tiempo

El Sprint es un evento «contenedor«para todos los demás eventos, siendo cada uno de ellos una oportunidad formal para inspeccionar y adaptar algo. Y es que los creadores de Scrum,Jeff Sutherland y Ken Schwaber, diseñaron estos eventos para conseguir la máxima transparencia e inspección.

Scrum events

Existen 5 eventos diferentes:

  1. Sprint
  2. Sprint Planning, o Planificación del Sprint en castellano
  3. Daily Scrum, normalmente llamada Daily
  4. Sprint Review, o Revisión del Sprint
  5. Sprint Retrospective, o Retrospectiva del Sprint

He estado en algunas empresas que unifican Sprint Planning con Sprint Review, llamándo al evento «Syncro» o «Planificación» (adaptan Scrum a lo que han visto que mejor le funciona).

1. El Sprint

El Sprint es la base del Scrum. Es un periodo de tiempo de 1 mes, 3 o 2 semanas, durante el cual se crea un incremento de producto, utilizable y potencialmente liberable. Lo ideal es que siempre tengan la misma duración.

Para entender el párrafo anterior, debemos ver cada Sprint como un proyecto con un horizonte no mayor a un mes. Y al igual que un proyecto, el Sprint se utiliza para lograr algo. Cada Sprint tiene una definición de lo que se va a desarrollar, un diseño y un plan flexible que guiará su construcción, el trabajo y el producto resultante.

Un nuevo Sprint comienza inmediatamente después de la conclusión del Sprint anterior.

Un sprint está formado por el Sprint Planning, las Daily Scrums, el trabajo de desarrollo, Sprint Review y Sprint Retrospective.

Consideraciones a tener en cuenta durante el Sprint

  • No se realizan modificaciones que pongan en peligro el Sprint Goal.
  • Los objetivos de calidad no disminuyen.
  • El alcance (scope) puede ser clarificado y renegociado entre el Product Owner y el Developmente Team a medida que se descubren las cosas.

La limitación máxima de un mes es para minimizar riesgo y desperdicio. Si es más tiempo, en el mundo tan cambiante en el que estamos, la definición de lo que se está construyendo puede quedarse obsoleta, aumentando además la complejidad de lo creado.

Seguir leyendo «Eventos en Scrum I»

Product Manager

He estado trabajando bastante tiempo con empresas tecnológicas. En cada una tenía un nombre diferente, pero con el tiempo y hablando con la gente me he dado cuenta que se pueden aglutinar bajo uno solo: Product Manager.

Y es que uno de mis principios desde que realicé la carrera de Diseño, ha sido crear productos que la gente adore: bonitos, funcionales y usables, y sean sostenibles para la empresa.

Porque para construir un buen producto o servicio digital, el equipo o persona encargado de su Road Map, debe tener un conocimiento mixto de negocio, tecnología y experiencia del usuario (UX).

product_manager

Aunque como es imposible saber de todo, debe ser experto en al menos uno (en mi caso UX), ser apasionado por los 3 y haber trabajado en los 3 en general.

  • Negocio: no hay que olvidar que alguien tiene que pagar la fiesta. El Product Manager se centra en la optimización de un producto para alcanzar los objetivos comerciales mientras se maximiza el retorno de la inversión.
  • Tecnología: es muy complicado definir qué construir si se desconoce como se va a hacer y más importante, los recursos requeridos.
  • Experiencia del usuario: el Product Manager es la voz del usuario dentro de la empresa: debe hablar constantemente con los usuarios, testear el producto, analizar datos, detectar y priorizar los problemas a solucionar…. .

Funciones del Product Manager

Se debe establecer una visión del producto, investigando constantemente el mercado (informes de investigación, tendencias…), los usuarios (comentarios, atención al cliente, investigación etnográfica…) y el problema a resolver (mapas de empatía, customer journeys, análisis cuantitativo y cualitativo…).

Esa visión debe ser conocida por todo el equipo.

Si se realiza bien, cada miembro del equipo, desde ventas hasta desarrolladores, debe ayudar a crearla y sentirse parte de ella. Todos deben remar en la misma dirección.

Una parte importante es el establecimiento de las prioridades a desarrollar, el Road Map, el cual no es un documento definitivo, sino que puede variar dependiendo de la investigación que se vaya haciendo (recuerda que estamos en un mundo de constante cambio y es imposible predecir nada a futuro).

Seguir leyendo «Product Manager»

Ley de Little

La ley de Little (por la primera persona que la enunció John Little, 1954), conocida como Teoría de colas o Líneas de espera, usada para calcular el rendimiento de los sistemas ofrece múltiples aplicaciones.

La ley enuncia lo siguiente: el número medio de usuarios «N» que hay en un sistema (durante un tiempo determinado) es igual a la velocidad media «V» a la que entran en el sistema multiplicada por el tiempo medio «T» que están dentro.

 N = V × T.

Aunque parece intuitivamente fácil, hay que destacar que la relación no está influenciada por la distribución del orden de llegada, cómo se atiende a los usuarios o prácticamente cualquier otra cosa.

Gestión trabajo

Visualización de tareas en un sistema mediante Jira

Por ello se puede aplicar a cualquier sistema que procese cosas, y ​​a sistemas dentro de otros sistemas. Los únicos requisitos son que el sistema sea estable y no preventivo.

Es usada en sistemas informáticos, para calcular plazos de entrega de trabajos o pedidos, para saber cuanto tiempo un cliente tiene que esperar a ser atendido en una caja de un supermercado…

Ley de little en la gestión del trabajo

Yo descubrí esta ley oyendo un vídeo sobre Kanban de Jerónimo Palacios en la Coferencia Agile Spain 2016 hablando sobre la relacion directa entre nuestro lifetime, el trabajo existente en curso y la capacidad de entrega. De ahi me puse a aprender un poco más sus aplicaciones.

Seguir leyendo «Ley de Little»

¿Cómo nos ayuda el método Kanban?

Kanban es un método de gestión de trabajo ideado para mejorar el proceso de fabricación de Toyota, basado en señales visuales (Kanban significa en japonés “señal visual” o “tarjeta”.)

Y es que una imagen vale más que mil palabras, ya que se ha descubierto que el cerebro procesa información visual 60.000 veces más rápido que texto.

La información visual comprende el 90% de los datos que llegan a nuestro cerebro, estando el 40% de todas las fibras nerviosas conectadas al cerebro relacionadas con la retina.

Visualiza el trabajo

Kanban ayuda a aprovechar el poder de la información visual para crear un modelo visual del trabajo y su flujo por los estados que atraviesa.

Ver los diferentes estados por los que atraviesa el trabajo dentro del proceso de un equipo, como fluyen las diferentes tareas, permite, no solo comunicar el estado, sino también dar y recibir contexto para el trabajo.

Kanban

Imagen extraida de www.leankit.com

Kanban ayuda a trasladar la información que normalmente se comunicaría a través de palabras a un formato más visual, permitiendo focalizarte además sobre los datos importantes.

Mirando el tablero, una persona conoce rápidamente como funciona el sistema y en que estado se encuentra.

Al observar visualmente el flujo de trabajo moviéndose en el sistema Kanban, es fácil detectar tareas que bloquean, cuellos de botella, colas, permitiendo servir como punto de partida para generar una conversación lo que lleva a una mejor comunicación y colaboración.

Limita el trabajo en proceso

Limitando la cantidad de trabajo pendiente en proceso, se puede reducir el tiempo que le toma a un elemento fluir a través de los estados.

En las empresas se cree que trabajar sobre varias tareas en paralelo aumenta la productividad, asignándose varias tareas a una misma persona. Pero eso no es verdad, las multi-tareas retrasan en lugarde acelerar la terminación de trabajo. Seguir leyendo «¿Cómo nos ayuda el método Kanban?»

Kanban

Kanban es un método que muestra como el trabajo se desarrolla.

Kanban es un método de gestión del trabajo, no de personas.

Permite que se tenga un entendimiento compartido del trabajo realizado, incluyendo las reglas por las cuales se efectúa el trabajo, cuántas tareas se pueden manejar en un determinado periodo de tiempo y como regularmente se entrega algo acabado a los clientes ya sean internos o externos.

El objetivo es que una vez que se llega a este entendimiento se pueda empezar a mejorar.

Sabremos predecir mejor como funciona el equipo (o nosotros mismos) y trabajar a un ritmo más sostenible. Se incrementa la colaboración y la comunicación, lo que consigue productos de mayor calidad. La empresa entera se alinea, consiguiendo realizar objetivos estratégicos.

Kanban

Imagen de Jira, programa de Atlassian usado para visualizar el estado del trabajo

Las personas llegan a ser más independientes porque desarrollan una comprensión innata del riesgo que conlleva la gestión. Kanban consigue que la gente adquiera compromiso y un conocimiento del flujo de trabajo, lo que lleva a aumentar la agilidad.

Seguir leyendo «Kanban»

Conferencia Agile Spain

Este año voy a asistir a la CAS 2017 en Sevilla como voluntaria.

Me apatece un montón porque aunque he ido a muchos eventos nunca he participado con ese rol, y ahora que dispongo de tiempo me parece una forma genial de aprender y conocer a gente.

CAS 2017

Para los que no lo sepan la Conferencia Agile Spain (@confagilespain) es un evento que se celebra cada año en una ciudad diferente, generado por personas que viven el desarrollo de software de una manera diferente.

Profesionales del sector comparten conocimientos y experiencias en torno a las metodologías ágiles y como personalmente creo en ellas para desarrollar productos y servicios, es una oportunidad única de compartir conocimientos con empresas y personas de España que piensan igual.

¡Nos vemos allí el 7!

Y el sábado a primera hora a coger el AVE directa a Zaragoza a la Women TechMakers! Moriré de cansancio???? Nooo, I can!!!

Funciones del Scrum Master

Seguimos con los post sobre Scrum (ver anterior post sobre los Roles de Scrum) en este caso explicando las funciones del Scrum Master, dentro de su dualidad sirviente-líder que ocupa para el Scrum Team y para la organización.

Scrum Master

Imagen obtenida www.scrumalliance.org

Cuando una organización cambia su modo de trabajo a Scrum todos deben aprender como integrarlo, que nuevas funciones tienen y cual va a ser la forma de desarrollar los productos.

El Scrum Master es la persona encargada de servir de apoyo a todos los integrantes en ese nuevo cambio.

Y es que por muchas ganas que tenga todos los integrantes de cambiar la forma de trabajar (no hablemos si alguien es reticente) la misión no es sencilla, por lo que el Scrum Master igual el que Product Owner deben ser personas empáticas, colaboradoras, pacientes, y con el coraje de defender los roles y funciones de Scrum.

Funciones del Scrum Master para el Product Owner

La persona que adquiere el rol de Scrum Master sirve al Product Owner de varias maneras, que incluyen:

  • Encontrar técnicas para una gestión eficaz del Product Backlog.
  • Ayudar al Scrum Team a entender la necesidad de elementos claros, concisos y bien definidos en el Product Backlog.
  • Comprender la planificación del desarrollo de productos en un entorno empírico.
  • Asegurar que el Product Owner sepa cómo organizar el Product Backlog para maximizar el valor.
  • Comprender y practicar la agilidad.
  • Facilitar eventos de Scrum según se solicite o necesite.

Funciones del Scrum Master para el Development Team

El Scrum Master sirve al Equipo de Desarrollo de varias maneras,  siendo para mi la más importante la de ayudarle a eliminar impedimentos. Y es que muchas veces el trabajo no sale porque las personas no saben como proseguir o si pueden hacer algo o no.

Seguir leyendo «Funciones del Scrum Master»

Roles en Scrum

A continuación voy a hablar de los roles que existen dentro del Scrum Team y que funciones y deberes tiene cada uno.

Scrum no tiene un rol llamado «Project Manager».

Scrum Team

Scrum Team

El Scrum Team se compone de 3 perfiles:

  1. Product Owner (1 persona)
  2. Development Team (Varias personas)
  3. Scrum Master (1 persona)

El Scrum Team debe ser auto-organizado y multifuncional. Lo primero para saber elegir cual es la mejor manera de hacer el trabajo, mejor que siendo dirigidos por otros externos. Multifuncionales porque el equipo debe tener las comptencias necesarias para realizar el trabajo sin depender de otras personas que no formen parte del equipo.

El equipo perfecto en Scrum está diseñado para optimizar flexibilidad, creatividad y productividad.

Es decir, debe ser capaz de poder entregar y publicar (si ha sido pasada a Done) esa nueva release lanzada.

No puede depender de otros equipos para subir a producción algo definido como «Done».

El equipo entrega productos cíclica e incrementalmenre, maximizando las oportunidades para obtener feedback. Entregas incrementales de productos con la etiqueta «Done» (Hecho) aseguran potenciales versiones usables del producto están siempre en activo.

Product Owner

El Product Owner , PO es el responsable de maximizar el valor del producto y el trabajo del Development Team (Equipo de desarrollo). Como se realiza esto, puede variar dependiendo de la empresa, los Scrum Teams y los inddividuos.

El Product Owner es la única persona responsable para gestionar el Product Backlog.

Entre las tareas que se realizan en esa gestión se encuentran:

  • Nombrar claramente los ítems del Product Backlog.
  • Ordenar los items en el Product Backlog priorizándolos para lograr los mejores objetivos y resultados.
  • Optimizar el valor del trabajo que realiza el Development Team.
  • Asegurarse de que el  Product Backlog sea visible, transparente y claro para todos, y que muestra en que va a trabajar el Scrum Team.
  • Asegurarse de que el Development Team comprende perfectamente los elementos del Product Backlog.

El PO puede hacer el trabajo anterior o hacer que lo haga el equipo de desarrollo, pero en ambos casos será el Product Owner responsable.

Seguir leyendo «Roles en Scrum»

Aprendiendo Scrum

Scrum es un framework (marco de trabajo) dentro del cual las personas pueden abordar problemas complejos, a la vez que ofrecen productos de manera eficiente y creativa del más alto valor posible.

Scrum

Web de scrum.org

Scrum proviene del trabajo de Ikujiro Nonaka e Hirotaka Takeuchi cuando publicaron «The New New Product Development Game» en Harvard Business Review (HBR) en 1986.

Su forma final proviene de “Scrum Development Process” presentado por Ken Schwaber en OOPSLA 95. Tanto Ken Schwaber como Jeff Sutherland son considerados sus creadores oficiales.

Aunque para Takeuchi y Nonaka, Scrum está relacionado indirectamente con el software. Tiene que tiene más que ver con el liderazgo y el funcionamiento de las principales compañías del mundo, tal y como aparece su artículo en HBR llamado «The Big Idea: The Wise Leader».

En sí mismo, no es un proceso o una técnica, sino que como marco de trabajo, para desarrollar complejos productos de software, pudiendose emplear varias procesos y técnicas. Presenta varios componentes, roles, eventos, artefactos y reglas, que tienen un propósito muy claro y son esenciales para el éxito de Scrum.

Sirve especialmente para ver de forma clara la eficacia relativa de las prácticas de desarrollo y gestión de producto para que se pueda mejorar.

Si de verdad se quiere lograr un cambio en la forma de trabajar, éste debe contar con el apoyo de «los de arriba».

Los stakeholders deben respaldar al Product Owner con conocimientos e información de los productos o servicios a desarrollar y apoyar al Scrum Master para provocar un cambio organizacional que fomente el empirismo, la autoorganización, la inteligencia y el poder decidir de forma inteligente cuando el producto está listo para ser lanzado.

Los 3 pilares de Scrum

Dentro de los principios Agile, vivimos en un mundo de constante cambio e incertidumbre por lo que es imposible predecir a futuro cual va a ser la siguiente innovación.

Scrum se basa en la teoría empírica de control de procesos. El empirismo afirma que el conocimiento proviene de la experiencia y toma decisiones basadas en lo que se conoce.

Scrum emplea un enfoque iterativo e incremental para optimizar la predictibilidad del mundo en el que vivimos y controlar el riesgo.

Tres pilares sostienen la implementación del control del proceso empírico:

Seguir leyendo «Aprendiendo Scrum»

Scroll hacia arriba