Mostrando las entradas con la etiqueta valores ágiles. Mostrar todas las entradas
Mostrando las entradas con la etiqueta valores ágiles. Mostrar todas las entradas

domingo, enero 18, 2015

[scrum] Un buen Team Member

Existen muchos post sobre Product Owner  y el Scrum Master, y es bueno reflexionar sobre ellos pues son roles que estamos comprendiendo y haciendo parte de nuestra cultura TI que tanto tiempo ha estado  RUP-pizada o Waterfall-izada.

Pero sobre los Team Member en scrum, solo sabemos dos elementos claves, el equipo debe ser:
  • multidisciplinario
  • autoorganizado o autogestionado
De igual forma sabemos que los valores del Equipo Scrum ( Team Developer, Scrum Master, Product Owner (1) ) son:
  • Enfoque
  • Coraje
  • Apertura
  • Compromiso
  • Respeto (ver más valores en este post anterior sobre valores ágiles (2)  )
Yo he notado que en la medida que el equipo comienza a tomar vida (pues no es un acto mágico que se convierta en autoorganizado) comienzan a emerger reglas éxplicitas e implícitas sobre los team members que son quienes perciben el latir y son el propósito de scrum (darles el entorno para que ellos produzcan el mejor producto)

Entre esas reglas, he observado varias:
  • En el Planning
    • Hacer preguntas para entender lo que se va a construir
    • No permitir que el equipo se comprometa con cosas que no conoce
    • Poner a disposición de todos mi experiencia para construir correctamente lo que se esta comprometiendo
    • Dar mi estimación responsable.
  • En la Ejecución del Sprint
    • Llegar puntual al daily
    • No dejar tirado a mi equipo con el compromiso (pues estuve en el Planning y junto con todos acepte el sprint backlog)
    • No tener tiempos de ocio "irresponsables*" cuando todo mi equipo esta trabajando por bajar puntos
    • Ayudar a mis compañeros
    • Escribir buen código
    • Realizar buenas pruebas
    • Construir el producto con la calidad inmersa (no postergar la calidad esperando que otros encuentren defectos)
    • Trabajar empleando la mayor cantidad de prácticas ágiles de desarrollo posibles (TDD, ATDD, Integración Continua, etc)
    • Si se identifica algún sobreesfuerzo oculto, levantar la mano y dar visiblidad al equipo y al Scrum Master
    • Preguntar dudas sobre el producto al Product Owner
    • Dar visibilidad y alerta sobre los Impedimentos al equipo y al Scrum Master
    • Dar feedback asertivo a compañeros que perdieron el "foco" y andan muy ocupados en no apoyar al equipo o haciendo nada.
    • Reconocer cuando se esta fallando y corregir camino
    • Ser honesto con el equipo y consigo mismo
    • Mostrar el coraje y foco durante el sprint.
    • Dar visibilidad de la deuda técnica
    • Trabajar por reducir al  máximo la deuda técnica
    • Mejorar las habilidades en el área de fortaleza técnica y trabajar con otros para aprender nuevas tecnologías de manera que se elimine en lo posible el riesgo de dependencias de compañeros de trabajo.
    • Continuar la autoformación técnica
    • Trabajar con coraje para lograr el DONE lo antes posible de cada funcionalidad comprometida
    • Trabajar en lo que está priorizado y no en lo que "me parece"
  • En el Review
    • Tener el review preparado 
    • Dar respuesta asertivas a lo que se requiera
    • Apoyar a que el equipo se luzca en la sesión
  • En la Retrrospectiva
    • Dar y recibir retroalimentación
    • Usar comunicación asertiva con todos los miembros del equipo
    • Reconocer cuando se falla
    • Aportar evidencias para la retrospectiva
    • Decir todo aquello que sienta que debe ser compartido y aporta a la sesión (tanto del punto de vista técnico como humano)
    • Ser honesto con el equipo y con sigo mismo.



Nota:
Este post seguirá en construcción pues este aprendizaje no termina.

---
* Ocio irresponsable (vale la pena aclararlo): no me refiero a los tintos o momentos de pausa que requerimos para seguir avanzando, me refiero - y creo que todos entendemos - a laaaargas y descaradas sesiones en cualquier cosa que no sea una pausa sincera.


Referencias 

Valores Ágiles - Charla de Ágiles 2014 (Parte 2)

Diagrama de Espina de Pescado -  Problemas de Equipos Ágiles


Técnicas para minimizar los problemas: cómo lograr el equilibrio entre los valores ágiles para minimizar los problemas 

Manifiesto ágil: 
  • Individuos e interacciones sobre procesos y herramientas 
    • Entrene en coaching a los gerentes
    • Genere un ambiente agradable para el trabajo
      • Defina políticas de horarios flexibles
      • Establezca programas en los que se tenga en cuenta las ideas de las personas para mejorar el ambiente laboral 
    • Capacitaciones en comunicación asertiva para todos los empleados
  • Software funcionando sobre documentación extensiva:
    • Pídale al cliente que le ponga un “peso” de valor generado a los artefactos
    • Ayúdele al cliente a que priorice por valor
  • Colaboración con el cliente sobre negociación contractual  
    • Permitir escenarios de contratación donde prime la confianza 
  • Respuesta ante el cambio sobre seguir un plan 
    • Trabaje con su equipo en la importancia del cliente y su negocio, de manera que  no vean el cambio como algo que ARRUINA  el entregable hecho, sino que le permite al cliente generar valor y obtener una ventaja competitiva 
Pilares scrum: 

  • Transparencia
    • gestión visual ­ tableros Kanban, Burndown chart  
    • comunicación clara y asertiva
  • Inspección ­ Adaptación 
    • Daily 
    • Review 
    • Retrospectiva 

Valores scrum

  • Compromiso
    • Planning y el review (ver la cara del Cliente)  
    • Defina métricas grupales, no individuales 
    • Permita que las personas elijan en qué van a trabajar  
    • No cree recompensas por desempeños individuales, sino por  
    • desempeños grupales 
    • Logre la verbalización de las metas (decir a que se comprometen)
  • Enfoque
    • Una cosa a la vez 
    • Primero lo más importante y priorizado 
    • Procure que se incluya pago de deuda técnica en cada ciclo de desarrollo 
    • Evite al máximo el sobre esfuerzo
  • Respeto
    • Dar ejemplo 
    • Coach del scrum master al equipo 
    • Comunicación asertiva  y correcta retroalimentación 
    • Comunicación verbal y no verbal  
    • Establezca un proceso de selección con ponderación alta para 
    • las competencias humanas
  • Coraje 
    • Rete al equipo, pídales ir un poco más allá 
    • Cree conexiones entre los diferentes equipos con el fin de que se apoyen técnicamente 
    • Invierta en un sistema de gestión del conocimiento 
    • Conforme los equipos con todas las competencias que requieren para llevar a cabo el trabajo 
  • Apertura
    • Promueva, capacite y habilite la comunicación asertiva 
    • Incentive la comunicación directa para decir las cosas que están pasando, basándose en hechos y conservando el respeto 
    • Permitir las opiniones de todos 
    • Promueva que incluyan propuestas ante los problemas encontrados 
    • Dirija las retroalimentaciones hacia el trabajo en equipo y no al nivel personal 

Un mejor Scrum
  • Confianza
    • Entregue el mando y el control al equipo 
    • Permita que el equipo resuelva sus problemas por sí mismo. 
    • Permita que el equipo se equivoque, aprenderá a conocerse y a tenerse más confianza 
    • Las estimaciones y compromisos los debe realizar el equipo 



Extremme Programming
  • Simplicidad 
    • Fomente el uso de TDD, refactorización y documentación del  código 
  • Comunicación 
    • Procure que los equipos estén ubicados cerca 
    • Enseñe la ccomunicación asertiva (basada en hecho
    • Enseñe los cuatro acuerdos 
      • Sea impecable en sus palabras 
      • No tome nada en forma personal  
      • No adivine ni suponga 
      • Haga siempre lo máximo y lo mejor que pueda 
    • Cambiar los mensajes TU.. por los mensajes YO:
      • Sugerencia para mensajes Yo:  
        • Cuanto tu      (establezca el comportamiento)    
        • Me siento        (establezca el sentimiento)   
        • Entiendo lo que sientes    (empatice con el otro) 
        • Porque     (establezca consecuencia) 
        • Te pido el favor de     (establezca la petición, negocie el cambio)
  • Retroalimentación
    • Retrospectivas 
    • Review







---

Saludos ágiles

Jorge Abad



Valores Ágiles - Charla de Ágiles 2014 (Parte 1)

En el pasado ágiles 2014, tuve la oportunidad de facilitar junto con Leonardo Agudelo - @sweepnoise la sesión de Valores Ágiles - Engranaje clave para equipos autogestionados. Comparto los conceptos tratados en la sesión.


-----------
Definición de valores

Los valores son todas aquellas cosas que creemos importantes para nuestras vidas, en el momento de compartir, trabajar,  estudiar, convivir, etc. Estos valores determinan nuestras prioridades y en el fondo son, probablemente, las medidas que se usan para conocer si nuestra vida está en camino que deseamos.
Fuentes ;http://www.valoresmorales.net/ | http://comofuncionaque.com/que-es-el-valor/


----------
Valores del manifiesto por el desarrollo ágil de software 

Individuos e interacciones sobre procesos y herramientas
Software funcionando sobre documentación extensiva
Colaboración con el cliente sobre negociación contractual
Respuesta ante el cambio sobre seguir un plan

Fuente: http://agilemanifesto.org/iso/es/

------------
Pilares que soportan toda la implementación del control de procesos empírico

Transparencia 
Los aspectos significativos del proceso deben ser visibles para aquellos que son responsables del resultado. La transparencia requiere que dichos aspectos sean definidos por un estándar común, de tal modo que los observadores compartan un  entendimiento común de lo que se está viendo.

Inspección 
Los usuarios de Scrum deben inspeccionar frecuentemente los artefactos de Scrum y el progreso hacia un objetivo, para detectar variaciones. Su inspección no debe ser tan frecuente como para que interfiera en el trabajo. Las inspecciones son más beneficiosas cuando se realizan de forma diligente por inspectores expertos, en el mismo lugar de trabajo.

Adaptación 
Si un inspector determina que uno o más aspectos de un proceso se desvían de límites aceptables, y que el producto resultante no será aceptable, el proceso o el material que está siendo procesado deben ser ajustados. Dicho ajuste debe realizarse cuanto antes para minimizar desviaciones mayores.

Fuente: Scrum Guide -http://www.scrumguides.org/

----------
Valores de Scrum por Scrum Alliance

Enfoque. Porque nos enfocamos en sólo unas pocas cosas a la vez, trabajamos bien juntos y producimos un resultado excelente. De este modo logramos entregar ítems valiosos antes.

Coraje. Porque no estamos solos, nos sentimos apoyados y tenemos más recursos a nuestra disposición. Esto nos da el coraje para enfrentar desafíos más grandes.

Apertura. Durante el trabajo en conjunto expresamos cotidianamente cómo nos va y qué problemas encontramos. Aprendemos que es bueno manifestar las preocupaciones, para que éstas puedan ser tomadas en cuenta.

Compromiso. Porque tenemos gran control sobre nuestro destino, nos comprometemos más al éxito.

Respeto. A medida que trabajamos juntos, compartiendo éxitos y fracasos, llegamos a respetarnos los unos a los otros y a ayudarnos mutuamente a convertirnos en merecedores de respeto


Fuente: Scrum Alliance - Core Scrum


----------
Valores según el libro: UN MEJOR SCRUM


  • Respeto 
    • por uno mismo
    • por los otros
  • Coraje
  • Confianza : Base fundamental para el trabajo en Scrum. Un alto grado de confianza y compromiso es un resultado que se obtiene siempre que se forme un equipo verdaderamente auto­organizado.




Fuente: Un Mejor Scrum


---------

Valores de eXtreme Programming (XP) 

Simplicidad. Hacemos lo que se requiere y es solicitado, pero no más. Esto maximizará el valor creado para la inversión realizada. Daremos pequeños y simples pasos hacia nuestra meta y se mitigarán las fallas a medida que ocurran. Crearemos algo de lo que estaremos orgullosos y lo mantendremos a largo plazo por costos razonables.

Comunicación. Todos somos parte del equipo y nos comunicamos cara a cara diariamente. Trabajaremos juntos en todo, desde los requerimientos hasta la codificación. Crearemos unidos la mejor solución que podamos para nuestro problema.

Retroalimentación. Tomaremos cada compromiso de iteración seriamente entregando software funcional. Demostramos nuestro software de manera temprana y seguida, luego escuchamos atentamente y hacemos los cambios requeridos.Hablaremos acerca del proyecto y adaptaremos nuestro proceso al mismo y no de otras maneras.

Respeto: Todos dan y sienten el respeto que se merecen como un miembros valiosos del equipo. Todos aportan valor, incluso si es simplemente con entusiasmo. Los desarrolladores respetan la experticia de los clientes y viceversa. La gerencia respeta nuestro derecho de aceptar la responsabilidad y de dirigir nuestro propio trabajo.

Coraje. Diremos la verdad acerca de nuestro progreso y estimaciones. No documentamos excusas para el fracaso porque tenemos la intención de tener éxito. No le tememos a nada porque nadie está trabajando solo. Nos adaptaremos a los cambios cuando sea que ocurran.


Fuente: http://www.extremeprogramming.org/values.html

-------

Relación entre los valores:

Mapa Conceptual: Relación entre valores ágiles (elaboración propia - Jorge Abad y Leonardo Agudelo)



Ver parte 2: Valores Ágiles - Charla de Ágiles 2014 (Parte 2)