136
F O C U S Q U A L I T Y E X P E R I E N C E

Gestión basada en Metodologías Ágiles

  • Upload
    netmind

  • View
    806

  • Download
    3

Embed Size (px)

DESCRIPTION

Presentación elaborada por Miquel Rodríguez, nuestro director de Formación y Mentoring, para su conferencia en la Xunta de Galicia

Citation preview

Page 1: Gestión basada en Metodologías Ágiles

F O C U S Q U A L I T Y E X P E R I E N C E

Page 2: Gestión basada en Metodologías Ágiles

Presentación

Miquel RodríguezDirector de Formación y Mentoring en netmind

Master in IT Management

Executive MBA

Certified SAFe Program Consultant

Certified Scrum Master

Project Management Professional (PMP)

PRINCE2 Practitioner

[email protected]

es.linkedin.com/in/miquelrodriguezaranda

@miquelrodriguez

@netmindIT

blog.netmind.es

www.netmind.es

Page 3: Gestión basada en Metodologías Ágiles

En un mundo IDEAL...

Page 4: Gestión basada en Metodologías Ágiles

Requisitos

&

Plan de Proyecto

En un mundo IDEAL...

Análisis Diseño Construcción Validación Entrega

El cliente sabe lo que quiere

El equipo sabe como hacerlo

Se documentan y aprueban los

requisitos y el Plan de Proyecto

Page 5: Gestión basada en Metodologías Ágiles

Requisitos

&

Plan de Proyecto

En un mundo IDEAL...

Análisis Diseño Construcción Validación Entrega

Diseño

funcional

Avanzamos… todo va

bien….

Page 6: Gestión basada en Metodologías Ágiles

Requisitos

&

Plan de Proyecto

En un mundo IDEAL...

Análisis Diseño Construcción Validación Entrega

Y seguimos avanzando…

Diseño

funcional

Diseño

técnico

Page 7: Gestión basada en Metodologías Ágiles

Requisitos

&

Plan de Proyecto

En un mundo IDEAL...

Análisis Diseño Construcción Validación Entrega

Funciona a la primera…!

Diseño

funcional

Diseño

técnicoResultados

de las pruebas

Page 8: Gestión basada en Metodologías Ágiles

Requisitos

&

Plan de Proyecto

En un mundo IDEAL...

Análisis Diseño Construcción Validación Entrega

El cliente

obtiene lo

que pidió.(¡A tiempo y sin

sobrecostes!)Diseño

funcional

Diseño

técnicoResultados

de las pruebas

Page 9: Gestión basada en Metodologías Ágiles

Una causa habitual de desastre en proyectos

de desarrollo de software es que el producto

final es precisamente lo que el cliente solicitó.

The Economist. Agility counts

“”

http://www.economist.com/node/779429

Page 10: Gestión basada en Metodologías Ágiles

9

Andar sobre el agua y construir según

requisitos es sencillo.

Solo es necesario que estén congelados.

Edward V. Berard’s Law

Edward V. Berard (1993) Essays on object-oriented software engineering

“”

Page 11: Gestión basada en Metodologías Ágiles

Nada es veneno, todo es veneno:

la diferencia está en la dosis.

ParacelsusAlquimista y Médico Suizo

“”

Page 12: Gestión basada en Metodologías Ágiles

Las dosis del enfoque Ágil

Personas

ProcesosTecnología

Comunicación

Colaboración

Confianza

Empowerment

Foco en End to End

Priorizar por valor

Mejora Continua

Excelencia técnica

Automatización

Rapidez

Page 13: Gestión basada en Metodologías Ágiles

No sé porqué me dan

una cabeza cuando lo

que necesito son dos

brazos.

”Henry Ford

Padre de las cadenas de producción

Page 14: Gestión basada en Metodologías Ágiles

“Un gran poder conlleva una gran responsabilidad”

Ben Parker (tío de Peter Parker)

Page 15: Gestión basada en Metodologías Ágiles

Manifiesto por el Desarrollo Ágil de Software

Estamos descubriendo formas mejores de desarrollar software tanto por nuestra propia experiencia como ayudando a terceros.

Esto es, aunque valoramos los elementos de la derecha,valoramos más los de la izquierda.

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

Kent BeckMike Beedle

Arie van BennekumAlistair Cockburn

Ward CunninghamMartin Fowler

James GrenningJim HighsmithAndrew HuntRon Jeffries

Jon KernBrian Marick

Robert C. MartinSteve Mellor

Ken SchwaberJeff SutherlandDave Thomas

http://agilemanifesto.org/iso/es/ © 2001

A través de este trabajo hemos aprendido a valorar:

Page 16: Gestión basada en Metodologías Ágiles

http://agilemanifesto.org/iso/es/principles.html © 2001

Seguimos estos principios (1 de 2):

1.- Nuestra mayor prioridad es satisfacer al cliente mediante la entrega temprana y continua de software con valor.

2.- Aceptamos que los requisitos cambien, incluso en etapas tardías del desarrollo. Los procesos Ágiles aprovechan el cambio para proporcionar ventaja competitiva al cliente.

3.- Entregamos software funcional frecuentemente, entre dos semanas y dos meses, con preferencia al periodo de tiempo más corto posible.

4.- Los responsables de negocio y los desarrolladores trabajamos juntos de forma cotidiana durante todo el proyecto.

5.- Los proyectos se desarrollan en torno a individuos motivados. Hay que darles el entorno y el apoyo que necesitan, y confiarles la ejecución del trabajo.

6.- El método más eficiente y efectivo de comunicar información al equipo de desarrollo y entre sus miembros es la conversación cara a cara.

Principios del Manifiesto Ágil

Page 17: Gestión basada en Metodologías Ágiles

http://agilemanifesto.org/iso/es/principles.html © 2001

Seguimos estos principios (2 de 2):

7.- El software funcionando es la medida principal de progreso.

8.- Los procesos Ágiles promueven el desarrollo sostenible. Los promotores, desarrolladores y usuarios debemos ser capaces de mantener un ritmo constante de forma indefinida.

9.- La atención continua a la excelencia técnica y al buen diseño mejora la Agilidad.

10.- La simplicidad, o el arte de maximizar la cantidad de trabajo no realizado, es esencial.

11.- Las mejores arquitecturas, requisitos y diseños emergen de equipos auto-organizados.

12.- A intervalos regulares el equipo reflexiona sobre cómo ser más efectivo para a continuación ajustar y perfeccionar su comportamiento en consecuencia.

Principios del Manifiesto Ágil

Page 18: Gestión basada en Metodologías Ágiles

Bueno, rápido y barato. Elija dos.

Anónimo (pero con toda la razón)

“ ”

Page 19: Gestión basada en Metodologías Ágiles

Cambiando la orientación del Triangulo de Hierro

Constraints Requisitos Coste Tiempo

Estimación Coste Tiempo Funcionalidades

Predictivo

Waterfall

Adaptativo

Agile

Plan-Oriented

Value Oriented

Page 20: Gestión basada en Metodologías Ágiles

Ciclo de vida tradicional vs ágil

AN

ÁL

ISIS

DIS

O

CO

NS

TR

UC

CIÓ

N

PR

UE

BA

S

IMP

LA

NTA

CIÓ

N

tiempo

Supongamos un proyecto con

las clásicas fases en cascada

Page 21: Gestión basada en Metodologías Ágiles

Ciclo de vida tradicional vs ágil

AN

ÁL

ISIS

DIS

O

CO

NS

TR

UC

CIÓ

N

PR

UE

BA

S

IMP

LA

NTA

CIÓ

N Rompemos el proyecto en

pequeñas piezas que van de

inicio a fin de todo el

proceso….

tiempo

Page 22: Gestión basada en Metodologías Ágiles

Ciclo de vida tradicional vs ágil

AN

ÁL

ISIS

DIS

O

CO

NS

TR

UC

CIÓ

N

PR

UE

BA

S

IMP

LA

NTA

CIÓ

N

tiempo

Rompemos el proyecto en

pequeñas piezas que van de

inicio a fin de todo el

proceso….

… y las vamos ejecutando

secuencialmente, por

iteraciones.

Page 23: Gestión basada en Metodologías Ágiles

Ciclo de vida tradicional vs ágil

AN

ÁL

ISIS

DIS

O

CO

NS

TR

UC

CIÓ

N

PR

UE

BA

S

IMP

LA

NTA

CIÓ

N

Si por cualquier motivo nos desviamos un 10% en cada fase y tenemos comprometida la fecha de entrega,

normalmente intentamos recuperar el tiempo perdido corriendo más al final, a costa de las pruebas.

Como consecuencia, entregamos un producto incompleto, con errores y tarde.

+10% +10% +10%+10%tiempo

Page 24: Gestión basada en Metodologías Ágiles

Ciclo de vida tradicional vs ágil

AN

ÁL

ISIS

DIS

O

CO

NS

TR

UC

CIÓ

N

tiempo

Y si, además, nos desviamos o nos encallamos en las fases iniciales, al llegar la fecha

comprometida no tenemos más que documentos funcionales que no aportan ningún valor.

+20%Analysis paralysis!!

Page 25: Gestión basada en Metodologías Ágiles

Ciclo de vida tradicional vs ágil

tiempo

Si nos retrasamos un 10% en un enfoque incremental…

… tenemos el 90% de

nuestro producto.

Y si hemos priorizado bien,

tenemos el 90% que aporta

más valor.

Page 26: Gestión basada en Metodologías Ágiles

Ciclo de vida tradicional vs ágil

Y si somos realmente lentos y poco efectivos….

… como mínimo tendremos

un producto que aporta un

subconjunto del valor por el

que fue iniciado.

tiempo

Page 28: Gestión basada en Metodologías Ágiles

Agile = Iterative + Incremental

Henrik Kniberg

Don’t try to get it all rightfrom the beginning

Don’t build it all at once

cost

value

cost value

Page 29: Gestión basada en Metodologías Ágiles

Not ”horizontal” increments

Henrik Kniberg

DB

Server

Client

1

2

3

1 2 3 4

value

Page 30: Gestión basada en Metodologías Ágiles

”Vertical” increments!

Henrik Kniberg

DB

Server

Client 1

5

2 3

1 432

value

Page 31: Gestión basada en Metodologías Ágiles
Page 32: Gestión basada en Metodologías Ágiles

Keep iterations short(2-3 weeks)

Henrik Kniberg

Short iteration

Less likely to get interrupted

Less scope creep

Page 33: Gestión basada en Metodologías Ágiles

Planning is easier with frequent releases

Henrik Kniberg

Page 34: Gestión basada en Metodologías Ágiles

Priorización por valor y alcance

+ valor

- valor

nuevos elementos

en cualquier momento

re-priorización

continua

Seguro que podremos hacerlo

Quizás podremos incluirlo

Descartado, fuera del alcance

Page 35: Gestión basada en Metodologías Ágiles

El primer vuelo de los

hermanos Wright no

tenía cuarto de baño ni

carrito de bebidas.

Puedes añadir

funcionalidades más

adelante.

Paul MockapetrisInventor del Sistema de Nombres de Dominio DNS

valor

Page 36: Gestión basada en Metodologías Ágiles

Ignoramos el hecho de que muchos clientes no saben lo que quieren.

Ignoramos el hecho de que, incluso cuando saben lo que quieren, no saben cómo describirlo.

Ignoramos el hecho de que, incluso cuando puedendescribirlo, normalmente nos describen una propuesta desolución en lugar de describir sus necesidades reales.

Don ReinertsenAutor de “The Principles of Product Development Flow:

Second Generation Lean Product Development”

Detección y descripción del valor

Page 37: Gestión basada en Metodologías Ágiles

Mi maleta pesa demasiado, por tanto

necesito una maleta más ligera.

En realidad… ¡No me importa el peso!

¡Si tiene ruedas es fácil de transportar!

Detección y descripción del valor

Page 38: Gestión basada en Metodologías Ágiles

No me gustan los

estudios de mercado.

El cliente no sabe lo

que quiere hasta que

no lo tiene delante.

”Steve Jobs

Page 39: Gestión basada en Metodologías Ágiles

Priorización

29 de junio de 2007

Lanzamiento del primer iPhone

17 de junio de 2009

Envío de MMS, copiar & pegar

Priorizar funcionalidades es un aspecto clave para entregar valor lo antes posible

Page 40: Gestión basada en Metodologías Ágiles

El valor de una funcionalidad disminuye con el tiempo

Entr

ega d

e v

alo

r

Tiempo

Valor de mercado de

una funcionalidad

con el tiempoMargen acumulado

Margen acumulado

en Waterfall

Page 41: Gestión basada en Metodologías Ágiles

Features have different value(and value is independent of size)

Henrik Kniberg

2 minute standup discussion (pair/trio):

• Give a real-life example of a feature that issmall and very valuable

• Give a real-life example of a feature that islarge and not very valuable.

Weight: 1 gramValue: 100 000 kr

Weight: 2000 gramsValue: 5 kr

2:001:591:581:571:561:551:541:531:521:511:501:491:481:471:461:451:441:431:421:411:401:391:381:371:361:351:341:331:321:311:301:291:281:271:261:251:241:231:221:211:201:191:181:171:161:151:141:131:121:111:101:091:081:071:061:051:041:031:021:011:000:590:580:570:560:550:540:530:520:510:500:490:480:470:460:450:440:430:420:410:400:390:380:370:360:350:340:330:320:310:300:290:280:270:260:250:240:230:220:210:200:190:180:170:160:150:140:130:120:110:100:090:080:070:060:050:040:030:020:01Done

Page 42: Gestión basada en Metodologías Ágiles

Henrik Kniberg

Maximize Value, not Output

Page 43: Gestión basada en Metodologías Ágiles

Velocityto know the future, you need to know the past

Henrik Kniberg

When will we get there?

We are here

Our steps so far

Page 44: Gestión basada en Metodologías Ágiles

Velocity-based release planning

Henrik Kniberg

Backlog

Page 45: Gestión basada en Metodologías Ágiles

Velocity-based release planning

Henrik Kniberg

Done!Jan

Page 46: Gestión basada en Metodologías Ágiles

Velocity-based release planning

Henrik Kniberg

Done!Jan

Done!Feb

Page 47: Gestión basada en Metodologías Ágiles

Velocity-based release planning

Henrik Kniberg

Done!Jan

Done!Feb

Done!Mar

Q2 forecastAll ofthese

Some of these

None of these

Page 48: Gestión basada en Metodologías Ágiles

Release burnup chart

Henrik Kniberg

Delivered features

Date

Page 49: Gestión basada en Metodologías Ágiles

Fixed scope forecast

Henrik Kniberg

Delivered features

Date

When will all of this be done?

Around week 27-30

Page 50: Gestión basada en Metodologías Ágiles

Fixed time forecast

Henrik KnibergDate

What will be done by Christmas?

Some of these

All of these

Delivered features

Page 51: Gestión basada en Metodologías Ágiles

Fixed time & scope forecast

Henrik KnibergDate

Can we get all of THIS

done...

Delivered features

....by Christmas?

No. That is unrealistic.

Page 52: Gestión basada en Metodologías Ágiles

Fixed time & scope forecast

Henrik KnibergDate

Delivered features

We can get THIS much done by

Christmas

...and the rest done by February.

No. That is unrealistic.

Page 53: Gestión basada en Metodologías Ágiles

¿…por qué seguimos utilizando

el modelo tradicional?

Eh! Un momento…!…mmmm…. …entonces….

Page 54: Gestión basada en Metodologías Ágiles

Insanity: doing the same

thing over and over again

and expecting different

results.

Page 55: Gestión basada en Metodologías Ágiles
Page 56: Gestión basada en Metodologías Ágiles

La única persona que desea un cambio

es un bebé con el pañal mojado.

Anónimo(atribuido a Mark Twain)

“”

Page 57: Gestión basada en Metodologías Ágiles

http://upload.wikimedia.org/wikipedia/commons/f/f3/Uncle_Sam_(pointing_finger).jpg

¿Qué estás haciendo TÚ para cambiar?

Page 58: Gestión basada en Metodologías Ágiles

Un 83% de las empresas TIC usan metodologías ágiles para

el desarrollo de sus aplicaciones, ya que éstas les permiten

adaptarse mejor a los cambios del mercado.

Veamos qué están haciendo otros…

http://www.tecnologiapyme.com/movilidad/el-83-de-las-empresas-usan-metodologias-agiles-para-el-desarrollo-de-sus-aplicaciones

Metodologías ágiles

83%

17%

Page 59: Gestión basada en Metodologías Ágiles

The United States is going to

maintain our military superiority

with armed forces that are agile,

flexible and ready for the full range

of contingencies and threats.

Barack Obama

Page 60: Gestión basada en Metodologías Ágiles
Page 61: Gestión basada en Metodologías Ágiles
Page 62: Gestión basada en Metodologías Ágiles

Kanban

ScrumXP

Agile & LeanEnfoque

Product Management

Project Management

Team Management

Técnicas de desarrollo

Ingeniería

Service Management

Continuous Flow

Visual Management

El enfoque Agile

Page 63: Gestión basada en Metodologías Ágiles

Kanban

ScrumXP

Agile & LeanEnfoque

Product Management

Project Management

Team Management

Técnicas de desarrollo

Ingeniería

Service Management

Continuous Flow

Visual Management

El enfoque Agile

Page 64: Gestión basada en Metodologías Ágiles

¿Qué es Agile?

Agile es entrega temprana

de valor de negocio.“

”Henrik Kniberg

Consultor, Agile & Lean Coach

Page 65: Gestión basada en Metodologías Ágiles

Lean Thinking

Una manera de pensar que permite a las organizaciones

especificar el valor, alinear las actividades que añaden

valor en la mejor secuencia posible, desarrollar estas

actividades sin interrupción cuando alguien las solicita y

desempeñarlas más y más eficientemente.

Page 66: Gestión basada en Metodologías Ágiles

Craft Production Mass Production Toyota Production System

Proved the value of continual improvement at General Electric

Customization

Highly skilled workforce

High cost

Moving Production Line

Production Engineering

Low cost, inflexible model

Focus on quality

Just-in-time production

Continual Improvement

Taylor

Lean In Service

Services & Health

Professionals

Productivity improvement

Business process improvement

Deming

Momentos clave en la historia de Lean

1910 1920 19551887 2000

Scientific management, labour productivity

Jack Welch

Page 67: Gestión basada en Metodologías Ágiles

A consequence of Lean is a paradigm shift

Traditional Lean

Managers have all the answers

Manager should ask the right

questions, employees should

have the answers as a team

Managers do the thinking,

workers concentrate on doing

Managers facilitate the workers

to add value

Activities are done, because

they are asked to be done

Activities are only done if they

add value

A certain rate of defects is unavoidable

Defects can be eliminated

Constancy of Purpose

Respect for the people

Perfection

Lean Principles

Page 68: Gestión basada en Metodologías Ágiles

Contratos en proyectos ágiles

67

Colaboración con el cliente sobre negociación contractual

Más importante

Importante

Page 69: Gestión basada en Metodologías Ágiles

….¿Es esto un contrato ágil? :-)

Page 71: Gestión basada en Metodologías Ágiles

Kanban

ScrumXP

Agile & LeanEnfoque

Product Management

Project Management

Team Management

Técnicas de desarrollo

Ingeniería

Service Management

Continuous Flow

Visual Management

El enfoque Agile

Page 72: Gestión basada en Metodologías Ágiles

Stop Starting, Start Finishing

Pull vs Push

Page 73: Gestión basada en Metodologías Ágiles

Kanban

Kanban es un método para gestionar el trabajo basado en

Pull, Just in Time, y limitando el trabajo en curso (WIP)

Visualiza el flujo de trabajoRompe el trabajo en piezas, representa cada una de ellas en una tarjeta y pégalo en la pared.

Utiliza columnas con nombres para ilustrar donde está cada elemento dentro del flujo.

Limita el trabajo en curso (WIP)Asigna límites explícitos para ver cuantos elementos puede haber en curso para cada estado

del flujo.

Mide el tiempo de inicio a fin (Lead Time)Optimiza el proceso para conseguir que el tiempo de inicio a fin sea el mínimo possible.

Kanban and Scrum. Making the most of both. Henrik Kniberg & Mattias Skarin

Page 74: Gestión basada en Metodologías Ágiles

Pending Doing Done

Kanban Board

73

Page 75: Gestión basada en Metodologías Ágiles

Pending Developing Testing Done

Problems

Kanban Board

74

Page 76: Gestión basada en Metodologías Ágiles

Capacidad

75

Page 77: Gestión basada en Metodologías Ágiles

Pending Developing Testing Done

Problems

Kanban Board + WIP

WIP limit = 4

Céntrate en finalizar estos antes de

añadir otro elemento

WIP limit = 3

76

Page 78: Gestión basada en Metodologías Ágiles

Kanban kick-start example

http://www.crisp.se/file-uploads/kanban-example.pdf

Page 79: Gestión basada en Metodologías Ágiles

Visual Management

78http://www.flickr.com/photos/yveshanoulle/

Page 80: Gestión basada en Metodologías Ágiles

Low-tech, Multipurpose, Easy to Adapt & Understand

Page 81: Gestión basada en Metodologías Ágiles

¿Cómo empezamos a aplicar Kanban?

Empieza con lo que ya estás haciendo

Modifícalo ligeramente para poder aplicar Pull

Utiliza un método transparente para visualizer el trabajoy organizer el equipo

Limita el WIP y coge el trabajo cuando el equipo tienesuficiente capacidad para hacerlo

Evoluciona identificando cuellos de botella, eliminandotrabajo no necesario, ajustando el WIP y analizando

como esta variabilidad afecta al rendimiento

1

4

3

2

80

5

Kanban: Successful Evolutionary Change for Your Technology Business: David Anderson

Page 82: Gestión basada en Metodologías Ágiles

Kanban

ScrumXP

Agile & LeanEnfoque

Product Management

Project Management

Team Management

Técnicas de desarrollo

Ingeniería

Service Management

Continuous Flow

Visual Management

El enfoque Agile

Page 83: Gestión basada en Metodologías Ágiles

Scrum

82http://www.scrumalliance.org/

Roles

• Product Owner

• Development Team Member

• Scrum Master

Artefactos

• Product Backlog

• Sprint Backlog

• Product Increment

Actividades / Reuniones

•Product Backlog Refinement•Sprint Planning•Daily Scrum•Sprint Review•Sprint Retrospective

Scrum es un método iterativo e

incremental para construir un producto

Page 84: Gestión basada en Metodologías Ágiles

User Stories

83

User Stories Applied: For Agile Software

Development

Mike Cohn 2004

Page 85: Gestión basada en Metodologías Ágiles

User Story Pattern

As a <user role>

I can <activity>

so that <business value>

Page 86: Gestión basada en Metodologías Ágiles

Card, Conversation, Confirmation

85

Card

• Short statement, captured on a physical & small card

• Metaphor providing a tangible and kinaesthetic relation between the team and “this thing the user wants to do”.

• It also helps keep keeps the story lightweight and malleable

Conversation

• Conversation between the team, customer/user, the product owner, and other stakeholders.

• This is the discussion necessary to determine the more detailed behavior required to implement the intent.

• The conversation may spawn additional specificity in the form of attachments to the user story (mockup, spreadsheet, algorithm, timing diagram, etc)

Confirmation

• The stories acceptance criteria provides the precision necessary to assure that the story is implemented correctly and covers the relevant functional and non-functional requirements.

• Agile teams automate acceptance tests wherever possible, oftentimes in a business-readable, domain-specific language, thereby creating the “automatically executable specification and test” of the code

C C C

Page 87: Gestión basada en Metodologías Ágiles

INVEST

86

Independent (of all others, as much as possible)

Negotiable (not a specific contract for features)

Valuable (to the customer)

Estimable (to a good approximation)

Small (so it can be done by a few person-days work)

Testable (in principle, even if there isn’t a test for it yet)

Page 88: Gestión basada en Metodologías Ágiles

Estimating and Sizing with Story Points

87

A Story Point is a common name for sizing work

Arbitrary measure of relative unit of work used by teams.

It depends on the effort, the complexity and the uncertainty related to the User Story

Each team has his own “effort-translation” for a Story Point

For some teams means “1 day”

For some teams means “1 week”

For some teams means “1 ideal day”

For some teams means 4-hours

Page 89: Gestión basada en Metodologías Ágiles

Fibonacci Sequence and other sizing methods

88

As we’re interested in row order of magnitude, we can use

several approachs:

Fibonacci: 1, 2, 3, 5, 8, 13, 21, 34,…

Pseudo Fibonacci (most common): 0, ½, 1, 2, 3, 5, 8,

13, 20, 40, 100

T-Shirts: XL, L, M, S, XS

http://www.mathsisfun.com/numbers/images/fibonacci-

spiral.gif

Page 90: Gestión basada en Metodologías Ágiles

Planning Poker

89http://www.mountaingoatsoftware.com/agile/planning-poker

Page 91: Gestión basada en Metodologías Ágiles

Relative sizing

90½, 1, 2, 3, 5, 8, 13, 20, 40, 100

Page 92: Gestión basada en Metodologías Ágiles

Affinity Estimating

91

Page 93: Gestión basada en Metodologías Ágiles

Kanban

ScrumXP

Agile & LeanEnfoque

Product Management

Project Management

Team Management

Técnicas de desarrollo

Ingeniería

Service Management

Continuous Flow

Visual Management

El enfoque Agile

Page 94: Gestión basada en Metodologías Ágiles

eXtreme Programming Practices

Valores:

Simplicidad

Comunicación

Feedback

Corajehttp://xprogramming.com

93

Page 95: Gestión basada en Metodologías Ágiles

Releasing must be REALLY easy

Henrik Kniberg

Req Code Test

Release!

Release = Drama!

Release = Routine

Page 96: Gestión basada en Metodologías Ágiles

¿Por qué aplicar técnicas ágiles?

Porque funcionan… …. y es más divertido!

Page 97: Gestión basada en Metodologías Ágiles

The Fun Theory

Page 98: Gestión basada en Metodologías Ágiles
Page 99: Gestión basada en Metodologías Ágiles

Ops….

x 50?

x 500?

x 5.000?

Page 100: Gestión basada en Metodologías Ágiles

Challenges on Scaling Agile

Huge teamsDevelopment

process conflicts

Legacy systems

Different life cycles

Globally distributed

teams

Functional & technological

silos

<Please add your challenge here>

<Please add your challenge here>

<Please add your challenge here>

Page 101: Gestión basada en Metodologías Ágiles

Cross-functional teamsare vertical

Henrik Kniberg

Client team

C C C

Test team

T T T

DB team

D D D

Server team

S S S

Feature team 1

CC

S

D

TT

C

S

D

T

Feature team 2

D

S

DB

Server

Client

User

Communitiesof interest

Page 102: Gestión basada en Metodologías Ágiles

Spotify

Henrik Kniberg

Tribe Tribe Tribe

TribeTribe Tribe

Page 103: Gestión basada en Metodologías Ágiles

PO PO PO

Tribe

Tribe lead

PO PO PO PO

Tribe

Chapter

Chapter

Tribe lead

PO

Chapter

Chapter Guild

Spotify

Page 104: Gestión basada en Metodologías Ágiles

Scaled Agile Framework

Acerca de SAFe

Estructura de SAFe

Roles, ceremonias, trenes y escalabilidad

Casos de éxito y siguientes pasos

Page 105: Gestión basada en Metodologías Ágiles

The Scaled Agile Framework (SAFe®)

Sincronización, alineación,

colaboración, entrega de valor

Consultable en libros y en la

web oficial

Puede escalarse a un gran

número de personas / equipos

Core values:

1. Calidad del código

2. Ejecución de Programas

3. Alineación

4. Transparencia

http://ScaledAgileFramework.com

Scaled Agile Framework es un marco de trabajo para aplicar técnicas

Lean y Agile a nivel empresarial

Page 106: Gestión basada en Metodologías Ágiles

Estructura de SAFeScaled Agile Framework

Page 107: Gestión basada en Metodologías Ágiles
Page 108: Gestión basada en Metodologías Ágiles

Agile Teams

Empowered, self-organizing, self-managing cross-functional teams

Valuable, fully-tested software increments every two weeks

Scrum project management practices and XP-inspired technical

practices

Teams operate under program vision, system, architecture and user

experience guidance

Value description via User Stories

Page 109: Gestión basada en Metodologías Ágiles

Code Quality

Agile Architecture

Continuous Integration

Test-First

Refactoring

Pair Work

Collective Ownership

Code Quality Provides:

Higher quality products and

services, customer

satisfaction

Predictability and integrity of

software development

Development scalability

Higher development velocity,

system performance and

business agility

Ability to innovate

You can’t scale crappy code

Page 110: Gestión basada en Metodologías Ágiles

Iteraciones a nivel de equipo con ScrumXP

Page 111: Gestión basada en Metodologías Ágiles

Equipos ágiles con ScrumXP

Los equipos ágiles ScrumXP están basados en equipos Scrum, con

algunas variaciones que facilitan su escalabilidad

Page 112: Gestión basada en Metodologías Ágiles

Scale to the Program Level

Self-organizing, self-managing team-of-agile-teams

Continuous value delivery

Aligned to a common mission via a single backlog

Common sprint lengths and estimating

Face-to-face planning cadence for collaboration, alignment,

synchronization, and assessment

Value description via Features and Benefits

Page 113: Gestión basada en Metodologías Ágiles

Develop on Cadence. Deliver on Demand.

Deliver on Demand

Major

Release Customer

Upgrade

Customer

Preview

Major

Release New

Feature

Develop on Cadence

PSI PSI PSI PSI PSI

Development occurs on a fixed cadence.

The business decides when value is released.

Page 114: Gestión basada en Metodologías Ágiles

Program Execution

Driven by Vision and

Roadmap

Lean, economic

prioritization

Frequent, quality

deliveries

Fast customer feedback

Fixed, reliable cadence

Regular Inspect and

Adapt drives continuous

improvement

Agile Release Trains – self-organizing teams of agile teams – reliably

and frequently deliver enterprise value

Page 115: Gestión basada en Metodologías Ágiles

Scale to the Portfolio

Centralized strategy, decentralized execution

Investment themes provide operating budgets for trains

Kanban systems provide portfolio visibility and WIP limits

Objective metrics support governance and kaizen

Value description via Business and Architectural Epics

Page 116: Gestión basada en Metodologías Ágiles

Alignment

Clear content authority

Face-to-face planning

Aligned Team, Program

and Business Owner

objectives

Cross-team and cross-

program coordination

Architecture and UX

guidance

Match demand to

throughput

Alig

nm

en

t

Business Owners

Alignment from Portfolio to Program to Team

Page 117: Gestión basada en Metodologías Ágiles

Roles, ceremonias, trenesy escalabilidad

Page 118: Gestión basada en Metodologías Ágiles

Roles por cada nivel

Porfolio Level

Program Level

Team Level

Program Portfolio Management Team

Epic Owner

Enterprise Architect

Product Management

Release Management

Business Owner

System Team

DevOps

Architect

UX

Release Train Engineer

Product Owner

Developers & Testers

Scrum/Agile Master

En cada nivel encontramos un conjunto de roles, que pueden ser compartidos

en algunos casos

Page 119: Gestión basada en Metodologías Ágiles

Agile Release Train

Un Agile Release Train es un equipo-de-equipos auto-gestionado que entrega

valor en una cadencia específica de forma continua

Page 120: Gestión basada en Metodologías Ágiles

Agile Release Train

Un Agile Release Train es en realidad un fractal de los sprints de los equipos,

a nivel de Programa

Page 121: Gestión basada en Metodologías Ágiles

Agile Release Train

Compartir la misma cadencia no es suficiente…..

Page 122: Gestión basada en Metodologías Ágiles

Agile Release Train

… es necesaria una sincronización entre equipos de un mismo programa para

garantizar la entrega coordinada

Page 123: Gestión basada en Metodologías Ágiles

How Big Agile Release Trains can be?

Page 124: Gestión basada en Metodologías Ágiles

Release Planning Meeting

Page 125: Gestión basada en Metodologías Ágiles

Agenda para una Release PlanningMeeting

Page 126: Gestión basada en Metodologías Ágiles

Ubicación de la Release Planning Meeting dentro de la candencia - HIP

Page 127: Gestión basada en Metodologías Ágiles

Entregables del Release Planning Meeting

Cada equipo tiene sus objetivos, con el valor aportado al negocio, una temporalización por sprints

de las Historias a entregar, y un plan de respuesta a riesgos.

Page 128: Gestión basada en Metodologías Ágiles

Entregables del Release Planning Meeting

Un Program Plan con las fechas previstas de entrega y otros hitos relevantes, con dependencias

entre equipos, y una votación del nivel de confianza/compromiso de todo el programa

Votación conjunta

para poner en

común el nivel de

confianza del plan

y actualizar

objetivos

Page 129: Gestión basada en Metodologías Ágiles

Casos de éxito –Empezando a andar

Page 130: Gestión basada en Metodologías Ágiles
Page 131: Gestión basada en Metodologías Ágiles

Experiencias de netmind con SAFe

Page 132: Gestión basada en Metodologías Ágiles
Page 133: Gestión basada en Metodologías Ágiles

netmind Agile Training & Mentoring

Lean & Agile Development & Practices

JST 291 | Lean IT Foundation

JJM 188 | PMI Agile Certified Practitioner Exam Prep

JJM 120 | Desarrollo Ágil con Scrum

JJM 125 | Introducción al Desarrollo Ágil de Software

JJM 126 | Gestión Ágil de Proyectos de Software

JJM 130 | Estimación y Planificación Ágil de Proyectos de Software

JJM 131 | Historias de Usuario para la Gestión Ágil de Requerimientos

JJM 132 | Taller Práctico de Kanban. Gestión Visual del Desarrollo

JJM 134 | Testing en el desarrollo del Software

Scaled Agile Framework

JJM 150 | SAFe ScrumXP for Teams

JJM 151 | Leading the Lean-Agile Enterprise with Scaled Agile Framework

www.netmind.es

Coaching

Definición Metodológica

Herramientas

(en proceso)

Page 134: Gestión basada en Metodologías Ágiles

Y además….

Page 136: Gestión basada en Metodologías Ágiles

F O C U S Q U A L I T Y E X P E R I E N C E