martes, octubre 20, 2015

Cálculo del SPI en un Proyecto Ágil

Una de las preguntas más frecuentes que se hacen quienes comienzan a trabajar en el mundo de la agilidad es, ¿cómo calculo el avance de la construcción de mi producto?, en este post quiero compartir como es posible hacerlo.

Vamos a comenzar con poner los equivalentes del método del valor ganado (1)(2) en un proyecto agil:

  • Valor :
    • funcionalidad puesta a disposición del cliente que le reemplaza una existente o le mejora su negocio,
    • Generalmente medida en puntos en proyectos ágiles, 
    • Las funcionalidades inicialmente construidas tienen mayor valor de negocio que las construidas al final debido a la priorización del backlog  (3). El valor de negocio es subjetivo y es dado por el Cliente y/o Product Owner en Scrum (3)
  • Punto: 
    • Percepción (debido a la incertidumbre) del esfuerzo requerido para construir una funcionalidad
    • Por lo general se usa la serie de fibonacci alterada para "tallar" (poner talla), estimar una funcionalidad (historia de usuario, caso de uso) a ser construida, La serie usada es 1,2,3,5,8,10,20
  • BAC 
    • Presupuesto a la terminación del proyecto. Budget at Completion
    • En ágil emplearemos como BAC la cantidad de puntos estimados del release
  • EV
    • Valor ganado del proyecto
    • En ágil emplearemos la cantidad de puntos en DONE (5) al momento de hacer la medición
  • PV
    • Valor planeado
    • En ágil emplearemos la cantidad de puntos  planeados en DONE al momento de hacer la medición.
    • El insumo de los puntos planeados en Done es proporcionado por la gráfica del Burn Up Release
  • Release Burn Up
    • Gráfica empleada en proyectos ágiles en la cual en el eje "x" se encuentran los Sprints, en el eje "y" los puntos acumulados. De igual forma se gráfica la cantidad de puntos estimados que tendrá el release (como techo del mismo) y en el tiempo se presentan los puntos acumulados sprint tras sprint, en aras de buscar una tendencia y un estimado para lograr el posible despliegue de una versión liberable.
  • SPI
    • Indice de desempeño del cronograma
    • Indica la proporción en la que se cumple el planeado a la fecha 
    • si es mayor que 1 se encuentra el proyecto adelantado vs el planeado
    • si es menor que 1 se encuentra el proyecto atrasado vs el planeado


Dado estos insumos los cálculos de los índices son:


  • Avance = EV / BAC = Puntos en Done al momento de la medición/ Puntos totales del  Release

  • SPI = EV / PV = Puntos en Done al momento de la medición / Puntos proyectados


Condiciones, Restricciones y Aclaraciones
Es importante aclarar que en un proyecto ágil pueden darse las siguientes condiciones:

  • Si se alcanza valor de negocio más temprano se puede parar la construcción de este release y comenzar el siguiente
  • Si existe una fecha límite se le puede ofrecer al cliente:
    • dado que el equipo tiene una velocidad (tasa a la cual produce software sprint tras sprint) que funcionalidades desea sacar del product backlog para cumplir la fecha impuesta
    • cuales funcionalidades cumplen el objetivo de negocio que quiere resolver con la solución
  • Dada la incertidumbre inherente al desarrollo de software (clic aquí), muchas veces se puede contestar:
    • esa capacidad de negocio la logramos aproximadamente entre el sprint 7 y 10, en función de la priorización del backlog





Espero haber aportado/ayudado a la solución de esta inquietud frecuente.



Saludos Ágiles


Jorge Abad






Post relacionados:

  1. EVM, CPI, SPI en AGILE / SCRUM - clic aquí -.
  2. Diferencia entre Valor de Negocio (Ágil) y Valor según el PMI - clic aquí -.
  3. Mi versión de : SCRUM EN POCAS PALABRAS / SCRUM RESUMIDO - clic aquí -.
  4. Planning poker  - clic aqui -.
  5. Una versión inicial de Definition of Done (Definición de Hecho / Terminado / Realizado) - clic aquí -.





domingo, octubre 11, 2015

El tinto * / café (o té) del Scrum Master



Lograr un entendimiento profundo del rol de Scrum Master es algo que me ha costado tiempo, fallas, y experiencia.

Me gusta mucho el modelo de Angel Medinilla (@angel_m)
1. Scrum Dude
2. Scrum Mom
3. Scrum Master
4. Scrum Master Sensei
Ver más aquí - clic aquí - 


Esta es la hora que no se si estoy en el nivel 3 o si llegaré al cuarto nivel, pero mas allá de eso, he notado dentro de las grandes herramientas del Scrum Master en su papel de Coach del Product Owner y Coach del Scrum master:  Es el tinto* (o café - como le dicen en otras zonas- )

Como lo tuitie (o lancé un twit – no sé como rayos se escribe - ) hace unos días


Para qué:

  • Para ver y sentir las interacciones de su equipo
  • Para notar como se teje el equipo
  • Escuchar como se va construyendo o destruyendo la auto-organización en función de los eventos y conductas de los miembros. entorno, o de la organización
  • Para dar feedback y feedforward, respetuoso y oportuno
  • Gestionar y palpar los impedimentos
  • Para evitar interrupciones al equipo

Y en ese sentir su equipo, el/la Scrum Master tiene una herramienta de valor incalculable, las “CONVERSACIONES” y esas conversaciones acompañadas de un tinto o un té son geniales y de gran aporte para el equipo..

A veces invito a cualquiera del equipo : “ven, vamos a tomarnos un tinto*”, y con la excusa del tinto, conversamos de:

  • La familia
  • El proyecto
  • De mi
  • Conciliamos puntos de vista
  • Hablamos de puntos de vista diferentes
  • Nos damos mutuo feedback acerca de cualquier circunstancia, o solo feedback unidireccional
  • De todo

Y es allí donde – desde mi experiencia– siento que puedo influenciar al equipo hacia la mejora continua, de la misma manera que sucede en la retrospectiva (a veces talvez más), pues muchas veces se logran entendimiento profundo de ciertos eventos y logramos decifrarlos/desamarrarlos a la aroma de dos buenos tintos..

Aclaro, cualquiera de mi equipo se siente en la libertad de invitarme a tinto y conversar.


 –  Vení, nos tomamos un tinto*....


Saludos ágiles

Jorge Abad


---

Notas:

  • Esta "revolucionaria técnica" : )    puede ser usada con té, y por gerentes de proyecto, líderes, team members y cualquiera que esté interesado en mejorar el resultado de su equipo de trabajo.
  • * Tinto: Así se le dice a un pocillo de café negro en Colombia.