Sensibilización en Metodologías Ágiles

Post on 06-May-2015

5.201 views 4 download

description

Explorando Scrum como herramienta de gestión

Transcript of Sensibilización en Metodologías Ágiles

Sorey GarcíaLíder de Investigación y Desarrollo en LineaDatascan

Líder en la comunidad Avanet – @avanet

contacto@soreygarcia.com | @soreygarcia | blog.soreygarcia.me

Sensibilización en Metodologías ÁgilesExplorando Scrum como herramienta de gestión

Una reflexión antes de iniciar

¿Cómo venimos trabajando?

La preocupación es menos los procesos y más

los valores humanos y personas

Las mejoras residen en un cambio cultural

de todos los participantes del proyecto,(de “todos” incluidos los directivos)

Además del entendimiento y un ejercicio claro y responsable

sobre el trabajo en equipo

Los valores y prácticas de un equipo de Rugby

son la base de Scrum

Un grupo en el que todos pueden estar y nadie se siente aislado; gordos, flacos, altos, petisos, rápidos, lentos... todos pueden jugar al rugby, no excluimos a nadie.

Para que esto suceda es necesario que haya una gran unión y lógicamente debe existir la amistad, dentro de un equipo de rugby somos todos amigos que compartimos los fríos de los entrenamientos, la felicidad de ganar, la amargura de perder y las jodas de los fines de semana después de jugar!

http://www.unirugby.net/categorie-11106857.html

Nadie es superior al otro, por eso es fundamental sentir el lazo de unión, que da la amistad y nos lleva a luchar unidos en el partido y en todo momento de la vida.

Equipos donde existe la amistad sincera, son realmente muy fuertes, por que esos 15, 20, 30 tipos son una sola cosa: Son amigos, están unidos, pelean por lo mismo.

http://www.unirugby.net/categorie-11106857.html

Otra cualidad fundamental es la lealtad, de alguien desleal se puede esperar cualquier cosa, dentro y fuera de la cancha; por eso tenemos que empezar por ser leal con nosotros mismos, saber que nos hemos incorporado a un grupo de personas que quieren ser nuestros amigos y debemos respetarlos.

Hay que trabajar para cumplir lealmente con ese compromiso y no solo serás un buen jugador de rugby, si no lo que todos deseamos, una buena persona.

http://www.unirugby.net/categorie-11106857.html

Cada jugador de Rugby tiene como meta ser

el mejor jugador y la mejor persona

Además cada uno de ellos tiene algo en mente

anotar la mayor cantidad de puntos, llevando el balón hasta la línea de meta

El rugby es un deporte en el que tradicionalmente se ha dado gran importancia a los valores morales.

Desde temprana edad a los jugadores de rugby se les enseñan una serie de cualidades positivas, como son el compañerismo, la honestidad, el respeto, la disciplina, la lealtad, el sacrificio y el altruismo.

A diferencia de otros deportes de equipo, en el rugby los jugadores no suelen discutir a los árbitros sus decisiones, ni tratan de engañarlos para sacar partido de sus decisiones. http://www.taringa.net/posts/deportes/11786129/El-Rugby-un-deporte-que-forja-valores.html

Los tantos son necesaria consecuencia del esfuerzo de todos, por lo que no se producen las celebraciones individuales tras la consecución de un try.

Al final del partido los jugadores de ambos equipos confraternizan juntos en el llamado «tercer tiempo», en el que beben y comen juntos por invitación del equipo local.

http://www.taringa.net/posts/deportes/11786129/El-Rugby-un-deporte-que-forja-valores.html

Motivación

Humildad

Amistad

Perseverancia

Compromiso

Amor al juego y al equipo que representan

http://www.taringa.net/posts/deportes/11786129/El-Rugby-un-deporte-que-forja-valores.html

Suena un poco romántico…

¿Qué tiene que ver esto con desarrollar software?

En febrero de 2001, tras una reunión celebrada en Utah-EEUU, nace el término “ágil” aplicado al desarrollo de software. En esta reunión participan un grupo de 17 expertos de la industria del software, incluyendo algunos de los creadores e impulsores de metodologías de software.

El punto de partida fue el Manifiesto Ágil, un documento que resume la filosofía “ágil” y que plantea algunos valores importantes.

Al individuo y las interacciones del equipo de desarrollo sobre el proceso y las herramientas

Es más importante construir un buen equipo, que usar las mejores herramientas y estrictos procesos.

Desarrollar software que funciona más que conseguir una buena documentaciónNo producir documentos a menos que sean necesarios de forma inmediata para tomar un decisión

importante.

La colaboración con el cliente más que la negociación de un contratoSe propone que exista una interacción constante entre el cliente y el equipo de desarrollo. Esta colaboración

entre ambos será la que marque la marcha del proyecto y asegure su éxito.

Responder a los cambios más que seguir estrictamente un planSe debe ser hábil en responder a los cambios y a los fracasos, la planificación no debe ser estricta sino

flexible y abierta.

Nuestra principal prioridad es satisfacer al cliente a través de la entrega temprana y continua de software de valor.

Son bienvenidos los requisitos cambiantes, incluso si llegan tarde al desarrollo. Los procesos ágiles se doblegan al cambio como ventaja competitiva para el cliente.

Entregar con frecuencia software que funcione, en periodos de un par de semanas hasta un par de meses, con preferencia en los periodos breves.

Las personas del negocio y los desarrolladores deben trabajar juntos de forma cotidiana a través del proyecto.

Construcción de proyectos en torno a individuos motivados, dándoles la oportunidad y el respaldo que necesitan y procurándoles confianza para que realicen la tarea.

La forma más eficiente y efectiva de comunicar información de ida y vuelta dentro de un equipo de desarrollo es mediante la conversación cara a cara.

El software que funciona es la principal medida del progreso.

Los procesos ágiles promueven el desarrollo sostenido. Los patrocinadores, desarrolladores y usuarios deben mantener un ritmo constante de forma indefinida.

La atención continua a la excelencia técnica enaltece la agilidad.

La simplicidad como arte de maximizar la cantidad de trabajo que no se hace, es esencial.

Las mejores arquitecturas, requisitos y diseños emergen de equipos que se auto-organizan.

En intervalos regulares, el equipo reflexiona sobre la forma de ser más efectivo y ajusta su conducta en consecuencia.

En el Rugby, el Scrum o Melé es una posición de juego

Todos los jugadores ponen todo su esfuerzo en lograr liberar el balón y poder tomarlo para anotar

En los proyectos de software ágiles

se espera que todos los participantes den sus capacidades al máximo para cumplir las metas del negocio

Confianza Colaboración Compromiso Retroalimentación Transparencia Coraje Priorización

Auto-organización Comunicación Respeto Simplicidad Control del Tiempo Empoderamiento

Nos encontramos actualmente en una cultura diferente

clientes y equipos tendrán que ser consientes del cambio cultural propuesto

Cada integrante del equipo debe entender los cambios y

comprometerse fuertemente con las nuevas estrategias

Aplicar metodologías ágiles, en este caso Scrum

no evita que se comentan errores

Tampoco significa abandonar la documentación

La mantenibilidad del software es tan importante como el generar valor

Con respecto a documentar, es necesario llegar a un acuerdo

que consolide un equilibrio entre las expectativas y el futuro de los productos

Clientes y proveedores deben asumir compromisos

El cambio compromete a las partes en un proceso de aprendizaje y adaptación

Los contratos de equipos ágiles son diferentes a los tradicionales

Se sugiere una revisión de los acuerdos existentes, con el fin de promover la colaboración

Aunque siempre haya sido así, es necesario recordar de forma más enfática que

las relaciones entre las partes son un ganar-ganar

Para que los equipos se comprometan de manera justa con la visión de negocio

también es necesario que el negocio se comprometa con el bienestar de las personas

Las metodologías ágiles plantean

Horarios controlados de 8 horas, reuniones cortas, ambientes de trabajo adecuados, entre otros

Sin embargo sería más adecuado decir que

Es un framework o conjunto de herramientas que apoyan la gestión y consecusión de objetivos de un proyecto

Scrum no propone, ni pretende volver a iniciar la definición de procesos

“Scrum es un framework con el que puedes emplear varios procesos y técnicas (para el desarrollo de un proyecto software)”

Scrum Guide de Ken Schwaber y Jeff Sutherland . Febrero 2010.

http://thecriticalpath.info/2011/02/19/free-intro-to-scrum-wallpaper/

Backlog / User Stories User Story Mapping Sprint Planning Sprint Backlog Sprint Stand up Meeting/

Daily Meeting Review Retrospective Burndown Chart

Plan

DoCheck

Act

1

http://kanemar.com/downloads/

El dueño de la visión

Product Owner

El facilitador

Scrum Master

Los hacedores del producto

Scrum Team

Foto de: http://www.agileproductdesign.com/blog/the_new_backlog.html

http://www.idi.ntnu.no/emner/tdt4242/foiler/11-1-User%20stories.ppt

time

Bajo cada historia larga se ubicanlas historias de usuario que la conforman o llevan a cabo

http://www.idi.ntnu.no/emner/tdt4242/foiler/11-1-User%20stories.ppt

59

optionality

necessary

less

optional

more

optional

http://www.idi.ntnu.no/emner/tdt4242/foiler/11-1-User%20stories.ppt

Independiente

Negociable

Valiosa

Estimable

Pequeña

Verificable

Simple Especifica Medible Alcanzable Realista Centrada en el

usuario

La imaginación es el límite

La meta es la simplicidadFoto tomada de

http://controlinventarios.wordpress.com/2013/01/19/kanban-el-sistema-de-senales-de-toyota/

http://bobsleanlearning.wordpress.com/2011/10/04/scotland-on-kanban-flow-cadence/

El uso de herramientas de software para ágil es opcional, equipos que trabajan de forma

presencial pueden usar materiales tradicionales, post-it, marcadores, tableros y

fichas de papel.

Existe una propuesta conocida como

Scrum Orgánico de Hiroshi Hiromoto

La propuesta un buen enfoque

Para equipos que aun no tienen la madurez requerida por las metodologías ágiles

“El Scrum no es una meta, es un camino”Hiroshi Hiromoto

Una propuesta básica

“Aprender Scrum, ejecutando Scrum”

Crecer conforme se retroalimente el equipo

Incorporar prácticas y elementos ágilesprogresivamente

De alguien que recién aprende

No esperar hasta aprender, comenzar a hacerlo.

Decidir si usar prácticas ágiles es correcto para tu equipo

Entender la realidad de los proyectos y expectativas

Hacer cambios en el modo de trabajar en equipo y llegar a acuerdos básicos

Iniciar con las reuniones diarias de pie y las retrospectivas

Aplicar progresivamente las prácticas ágiles individual y grupalmente

Imágenes de http://thecriticalpath.info/

Sorey Garcíacontacto@soreygarcia.com | @soreygarcia | blog.soreygarcia.me