agile fundamentals - campus party

Post on 19-Jan-2017

212 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Introducción a las metodologías ágiles

TASA DE ÉXITO DE PROYECTOS

Fuente: Standish Group. 2011 CHAOS report

AGENDA

La metodología Ágil

Historia

El Manifiesto

Agilismo y ThoughtWorks (TW)

Prácticas con relación al Producto

Prácticas con relación a la Ingeniería

Seguimiento, gestión y crecimiento

Un equipo típico de TW

La historia de ÁgilUn poco de historia, para alinear nuestro entendimiento de la filosofía Ágil antes de entrar en en el detalle.

LÍNEAS DE PRODUCCIÓN (FORD)

EL SOFTWARE ES UN TRABAJO CREATIVO!

¿TE SUENA CONOCIDO?

CADA CUAL CON SU PROPIA TEORÍA!

El ManifiestoY finalmente, el Manifiesto Ágil !

El Manifiesto Ágil

- 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

1. Individuos e interacciones sobre procesos y herramientas

Las herramientas deben ser seleccionadas para resolver el problema y no al revés

Los procesos deben adaptarse a la gente y los objetivos y no al revés

Procesos y herramientas son importantes

Individuos e interacciones cercanas lo son más

2. Software funcionando por sobre una documentación extensiva

Documento ValorDocumento Actualizado

$$ $$ $$ $$

$$

3. Colaboración con el cliente por sobre la negociación de contratos

Los contratos son para reforzar acuerdos

Solo son referenciados cuando alguien no cumple con sus compromisos

Las especificaciones representan contratos

Las especificaciones creadas tempranamente, son propensas a cambiar

4. Responder al cambio por sobre seguir un plan

“Visión sin acción es soñar despierto. Actuar sin una visión es una pesadilla.”(Proverbio Japonés)

“Ningún plan sobrevive al contacto con el enemigo.” (Colin Powell)

La forma Ágil:

❏Obtener una visión clara de los objetivos y las prioridades

❏Recolectar suficiente información para poder comenzar

❏Construir algo

❏Mostrárselo al cliente, probarlo con usuarios reales. Aprender

❏Responder a su retroalimentación

PRÁCTICAS DE PRODUCTOSAlgunas prácticas destinadas a ayudar en la concepción y gestión de productos

ENTREGA INCREMENTAL/CONTINUA

17

ENTREGA INCREMENTAL/CONTINUA

❏ Desarrollar un sistema a través de ciclos repetidos (iterativo) y en porciones más pequeñas a la vez (incremental)

❏ Permite al equipo aprovechar lo que se aprendió durante el

desarrollo de las partes o versiones anteriores

❏ Aprendizaje proviene del desarrollo y del uso del sistema

ENTREGA INCREMENTAL/CONTINUA

MVP

20

MVP Y MEJORA CONTINUA

MVP Y MEJORA CONTINUA

Funcionalidad 2

Funcionalidad 3

Objetivo 1 Objetivo 2 Objetivo 3

Objetivos

Sati

sfacc

ión

Funcionalidad 1

Funcionalidad 1+

Funcionalidad 1++

Funcionalidad 2+

(Lectura recomendada: Modelo Kano - http://en.wikipedia.org/wiki/Kano_model)

+ -

Funcionalidad 3++

PRÁCTICAS DE INGENIERÍAAlgunas de las prácticas del día a día para garantizar la calidad y la alineación con los objetivos

TDD

24

Las pruebas automatizadas se escriben antes que el código

❏ Pone a prueba los objetivos de la historia, no lo que se hizo

❏ Garantiza:

❏ Cobertura de pruebas

❏ Calidad y confianza en los cambios futuros

TDD (desarrollo orientado a pruebas)

PAIR PROGRAMMING

26

PROGRAMACIÓN EN PAREJAS

❏Dos programadores trabajan juntos en una estación de trabajo

❏Uno de ellos, el conductor, escribe código, mientras que el otro, el navegador, revisa cada línea de código

❏Los dos programadores cambian los papeles con frecuencia

STAND UPS

28

STANDUPS DIARIAS

HISTORIAS DE USUARIO

30

HISTORIAS

GESTIÓN Y SEGUIMIENTO

Algunas de las prácticas que ayudan a la gestión y el seguimiento del estado del proyecto

ESTIMACIONES

33

● Estimaciones demasiado precisas para cada tarea

● El orden de todas las tareas está predefinido sin siquiera haber empezado

● Muy difícil de adaptar para responder a los cambios externos

NIVEL DE CERTEZA PRECISIÓN y EXACTITUD

❏ La tarea g será terminada después de 5,17 días

❏ ...será un día nublado

❏ … y la temperatura será 25 C

❏ … no hay terremotos en este día

❏ … y esto puede o no ser verdad ;)

El enfoque está en la precisión que justifique las desviaciones del plan

NIVEL DE CERTEZA PRECISIÓN y EXACTITUD

❏ Un grupo de historias se llevará a cabo en una iteración

❏ El tiempo será refinado de acuerdo a la velocidad real y en tiempo real, permitiendo correcciones tempranas

❏ El orden de las historias puede cambiar

El enfoque está en el nivel de certeza y en la adaptación del plan a los datos reales

36 puntos

9 iteraciones

ESTIMACIONES ÁGILES

? 2 cotopaxis 4 cotopaxis

¿Cuál es el tamaño del cuadrado cuando se lo imprime con definición de 300dpi?

ESTIMACIONES ÁGILES

2 cotopaxis = 4 centímetros 4 cotopaxis = 8 centímetros

¿Qué pasa si después de un tiempo he impreso el más pequeño y medí?

4 cotopaxis = ? centímetros

GESTIÓN DE ALCANCE

38

GESTIÓN DE ALCANCE

Realidad: El alcance crece !!!

❏ Horizontalmente (nuevas funciones)

❏ Verticalmente (exceso de trabajo en funciones existentes)

Crecimiento invisible

❏ “Ir y venir” varias veces

GESTIÓN DE ALCANCE

Funcionalidad 2 Funcionalidad 3

Objetivo 1 Objetivo 2 Objetivo 3

objetivos

Sati

sfacc

ión

Funcionalidad 1

Funcionalidad 1+

Funcionalidad 1++

Funcionalidad 2+

Objetivo 4

Funcionalidad 4

Funcionalidad 3+

Funcionalidad 2++

CRECIMIENTO DE ALCANCE INVISIBLE

GESTIÓN DE ALCANCE❏Comunicación constante

❏Comunicación

❏Más Comunicación

❏Visión clara y alineada de las metas

❏Priorización

❏Negociación constante a medida que se detectan cambios

❏Herramientas: Burnups, backlog priorizado, story mapping

BURN UPS Charts

43

BURNUPS

Iteraciones

Pun

tos

de h

isto

ria

80 puntos

Iteración 10(Diciembre, 06)

BURNUPS

90 puntos

Iteración 10(Diciembre, 06)

Iteración 11(Diciembre, 20)

1. Fecha es negociabl

e

Pun

tos

de h

isto

ria

Iteraciones

BURNUPS

90 puntos

Iteración 10(Diciembre, 06)

82 puntos

2. Fecha no es negociable

Pun

tos

de h

isto

ria

Iteraciones

BURNUPS

90 puntos

Iteración 10(Diciembre, 06)

3. Presupuesto es

negociable

88 puntos

Pun

tos

de h

isto

ria

Iteraciones

Aumento de la velocidad no es ilimitado

4 ½ months

SHOWCASE

49

UN TÍPICO EQUIPO DE THOUGHTWORKSNo hay una composición de equipo obligatoria. Esto va a cambiar de un proyecto a otro, pero en general tenemos unas habilidades específicas en el equipo

ResumenAgile es una metodología de desarrollo de software centrado en mejorar la calidad, la velocidad y la adherencia a las necesidades de los clientes, mientras que minimiza el esfuerzo desperdiciado a través de abrazar y gestionar los cambios

GRACIAS“En la práctica de ser ágil es simplemente un compromiso óptimo con restricciones ambientales”(Abraham Kiggundu)

“El que es más capaz de adaptarse es el que va a sobrevivir”(Darwin)

Preguntas

Paola Jiménez ApoloBusiness Analystpjimenez@thoughtworks.com

Pamela ChávezBusiness Analystpchavez@thoughtworks.com

top related