SlideShare una empresa de Scribd logo
Fundamentos de las
metodologías ágiles
Sesión 3

Metodologías Ágiles de Desarrollo de Software

Domingo Gallardo, DCCIA, Univ. Alicante
Manifiesto ágil

Metodologías Ágiles de Desarrollo de Software

Domingo Gallardo, DCCIA, Univ. Alicante
Manifiesto ágil
Metodologías Ágiles de Desarrollo de Software

Domingo Gallardo, DCCIA, Univ. Alicante
Año: 2001
•

El manifesto ágil no representa la invención de las metologías ágiles, sino
su presentación en sociedad


•

Muchas propuestas previas alternativas al modelo de cascada


•
•
•
•
•

Desarrollo en espiral, 1984

Rapid Aplication Development (RAD), 1991

Rational Unified Process (UP), 1994

Scrum, 1995

Extreme Programming, 1996

Metodologías Ágiles de Desarrollo de Software

Domingo Gallardo, DCCIA, Univ. Alicante

4
Autores
•
•
•
•
•
•
•
•
•

Kent Beck (Twitter, Web)

Mike Beedle

Arie van Bennekum

Alistair Cockburn (Web)

Ward Cunningham

Martin Fowler (Twitter, Web,
ThoughtWorks)

James Grenning

Jim Highsmith


•
•
•
•
•
•
•
•

Ron Jeffries (Twitter, Web)

Jon Kern

Brian Marick 

Robert C. Martin (Twitter)

Steve Mellor

Ken Schwaber (Scrum.org)

Jeff Sutherland (Scrum.org)

Dave Thomas (Pragmatic
Programmer)

Andrew Hunt (Pragmatic
Programmer)


Metodologías Ágiles de Desarrollo de Software

Domingo Gallardo, DCCIA, Univ. Alicante

5
Valores, principios y prácticas
•

Las prácticas tienen sentido en el marco de un conjunto de valores y
principios


•

Las metodologías ágiles no son dogmáticas, responden a unos valores
que son los que hay que tratar de mantener

Kent Beck - Extreme Programming Explained, 2004

Metodologías Ágiles de Desarrollo de Software

Domingo Gallardo, DCCIA, Univ. Alicante

6
Los 4 valores del manifiesto ágil
Valoramos:


1. Individuos e interacciones sobre procesos y herramientas

2. Software que funciona sobre documentación exahustiva

3. Colaboración con el cliente frente a negociación del contrato

4. Responder al cambio frente a seguir un plan

Aunque los ítems de la derecha tienen valor, valoramos más los de la
izquierda.


Metodologías Ágiles de Desarrollo de Software

Domingo Gallardo, DCCIA, Univ. Alicante

7
Los 12 principios del manifiesto ágil
1. Our highest priority is to satisfy the customer through early and
continuous delivery of valuable software.

2. Welcome changing requirements, even late in development. Agile
processes harness change for the customer's competitive advantage.

3. Deliver working software frequently, from a couple of weeks to a couple
of months, with a preference to the shorter timescale.

4. Business people and developers must work together daily throughout
the project.

5. Build projects around motivated individuals. Give them the environment
and support they need, and trust them to get the job done.

Metodologías Ágiles de Desarrollo de Software

Domingo Gallardo, DCCIA, Univ. Alicante

8
Los 12 principios del manifiesto ágil
6. The most efficient and effective method of conveying information to and
within a development team is face-to-face conversation.

7. Working software is the primary measure of progress.

8. Agile processes promote sustainable development. The sponsors,
developers, and users should be able to maintain a constant pace
indefinitely.

9. Continuous attention to technical excellence and good design
enhances agility.

10. Simplicity--the art of maximizing the amount of work not done--is
essential.

Metodologías Ágiles de Desarrollo de Software

Domingo Gallardo, DCCIA, Univ. Alicante

9
Los 12 principios del manifiesto ágil
11. The best architectures, requirements, and designs emerge from selforganizing teams.

12. At regular intervals, the team reflects on how to become more
effective, then tunes and adjusts its behavior accordingly.

Metodologías Ágiles de Desarrollo de Software

10
Domingo Gallardo, DCCIA, Univ. Alicante
Principios Lean

Metodologías Ágiles de Desarrollo de Software

Domingo Gallardo, DCCIA, Univ. Alicante
¿En qué se parece una fábrica y un
proyecto software?

Mary Poppendieck - Lean Software Development, Tutorial 2007
Metodologías Ágiles de Desarrollo de Software

12
Domingo Gallardo, DCCIA, Univ. Alicante
El desarrollo de software como
construcción de un producto
•

Entradas


•
•

Salida


•
•

Nuevas características (features) en forma de casos de uso, historias
de usuario, etc.


Software funcionando al que se le ha añadido las nuevas
características


Proceso


•

Cada característica debe ser analizada, desarrollada, probada,
añadida y entregada

Metodologías Ágiles de Desarrollo de Software

13
Domingo Gallardo, DCCIA, Univ. Alicante
Sistema de producción de Toyota y
fabricación lean
•

TPS (Toyota Production System), Taichi Ohno

• Flujo de desarrollo just-in-time

• Cultura de “parar la línea”

• Mejora continua

• Pensar en el conjunto


•

Da origen a los denominados sistemas de fabricación lean (lean =
austero, flaco)

• La idea central es la continua búsqueda y eliminación de los
desperdicios (waste) generados por el proceso

• Cuando se eliminan los desperdicios la calidad mejora, y el tiempo de
producción y los costes se reducen y la producción se vuelve fluida
(flow)


•

El término lean se ha popularizado: lean startups
Metodologías Ágiles de Desarrollo de Software

14
Domingo Gallardo, DCCIA, Univ. Alicante
Dos metáforas del desarollo de
software
•

Dos metáforas poderosas que nos permiten entender mejor la actividad
del desarrollo


•
•

Desarrollo software como el proceso de fabricación de un producto

Desarrollo software como el diseño de un producto que soluciona un
problema


•

Es interesante tener siempre presente ambas metáforas


•

Los principios lean se pueden aplicar a ambos aspectos


•

Fabricación: optimizar el proceso identificando y eliminando lo
innecesario


•

Diseño: extender el conocimiento y eliminar el desperdicio de reaprender

Metodologías Ágiles de Desarrollo de Software

15
Domingo Gallardo, DCCIA, Univ. Alicante
Eliminar los desperdicios (waste)
•

Desperdicio: cualquier cosa que no se utiliza y que no añade valor al
producto final


•

Producir sólo lo necesario y en el momento en el que se necesita


•
•

Si algo no se utiliza, no podemos darnos cuenta de sus fallos


En el desarrollo de software hay mucha sobre-producción


•
•
•
•

Demasiados requisitos para un release

Demasiada arquitectura para las necesidades actuales

Demasiado código para poder ser probado adecuadamente

Demasiadas funcionalidades para el usuario final

Metodologías Ágiles de Desarrollo de Software

16
Domingo Gallardo, DCCIA, Univ. Alicante
¿Qué es valor?

Mary Poppendieck - Lean Software Development, Tutorial 2007
Metodologías Ágiles de Desarrollo de Software

17
Domingo Gallardo, DCCIA, Univ. Alicante
Los 7 principios del desarrollo de
software lean
•

Definidos por Mary Poppendieck ("Lean Software Development: An Agile
Toolkit", 2003 y “Implementing Lean Software Development”, 2006)

!

1. Eliminar los desperdicios (Eliminate Waste)

2. Fomentar la calidad (Build Quality In) 

3. Crear conocimiento (Create Knowledge)

4. Decidir lo más tarde posible (Defer Commitment)

5. Entregar rápido (Deliver Fast)

6. Respetar a la gente (Respect People)

7. Optimizar el conjunto (Optimize the Whole)

Metodologías Ágiles de Desarrollo de Software

18
Domingo Gallardo, DCCIA, Univ. Alicante
Sistemas de fabricación Pull
•

Uno de los pilares de la
metodología Kanban


•

El flujo de trabajo se regula
tirando (pull) de los
materiales a transformar con
una cadencia constante


•

Un sistema pull regula el
flujo de los recursos
mediante un proceso de
fabricación reemplazando
solo lo que ha sido
consumido y lo que es
inmediatamente entregable

Metodologías Ágiles de Desarrollo de Software

19
Domingo Gallardo, DCCIA, Univ. Alicante
Kanban
•

•

Una de las herramientas 

más importantes para 

organizar el proceso de 

producción son las

kanban (del japonés,

kan=visual y ban = tablero

o tarjeta)

Enfoque visual para el control de la
producción, usando herramientas
sencillas como contenedores
retornables, tarjetas o incluso espacios
vacíos para “tirar” de los productos
desde los centros de producción hacia
los centros de consumo o
transformación


!
!
!

•

Una kanban es una señal o ayuda visual
que indica que un centro de trabajo ha
finalizado un proceso, necesita trabajo o
necesita más materiales


•

Los tableros kanban permiten que los
centros de trabajo hagan un seguimiento
de las necesidades de los clientes o de
los proveedores y que respondan rápida
y adecuadamente

Metodologías Ágiles de Desarrollo de Software

20
Domingo Gallardo, DCCIA, Univ. Alicante
Kanban

Toyota Just-in-Time Kanban System
Metodologías Ágiles de Desarrollo de Software

21
Domingo Gallardo, DCCIA, Univ. Alicante
Tableros kanban en el desarrollo de
software

Henrik Kniberg - Lean from the Trenches
Metodologías Ágiles de Desarrollo de Software

22
Domingo Gallardo, DCCIA, Univ. Alicante
Lecturas
•
•
•

Manifiesto ágil, 2001

Ken Beck, Learning from Lean

Entrevista con Mary Poppendieck, An introduction to Lean Software
Development, 2004

Metodologías Ágiles de Desarrollo de Software

23
Domingo Gallardo, DCCIA, Univ. Alicante

Más contenido relacionado

La actualidad más candente

Metodologías para el desarrollo de aplicaciones móviles
Metodologías para el desarrollo de aplicaciones móvilesMetodologías para el desarrollo de aplicaciones móviles
Metodologías para el desarrollo de aplicaciones móvilesJaqueline Luna
 
Cuadro comparativo sistemas operativos
Cuadro comparativo sistemas operativosCuadro comparativo sistemas operativos
Cuadro comparativo sistemas operativosCARLOS BOTELLO
 
Cuadro comparativo sobre los tipos de sistemas operativos.
Cuadro comparativo sobre los tipos de sistemas operativos.Cuadro comparativo sobre los tipos de sistemas operativos.
Cuadro comparativo sobre los tipos de sistemas operativos.jorm1297
 
Metodologías de Desarrollo de Software Tradicionales y Emergentes
Metodologías de Desarrollo de Software Tradicionales y EmergentesMetodologías de Desarrollo de Software Tradicionales y Emergentes
Metodologías de Desarrollo de Software Tradicionales y EmergentesMiguel Rodríguez
 
Requerimiento funcional y no funcional
Requerimiento funcional y no funcional Requerimiento funcional y no funcional
Requerimiento funcional y no funcional CristobalFicaV
 
Paradigmas programacion
Paradigmas programacionParadigmas programacion
Paradigmas programacionLuis Peralta
 
Tipos de módems, estandares y protocolos
Tipos de módems, estandares y protocolosTipos de módems, estandares y protocolos
Tipos de módems, estandares y protocolosLucre Castillo Lorenzo
 
Cuadro comparativo
Cuadro comparativo Cuadro comparativo
Cuadro comparativo Seba Briones
 
Tipos de Requerimientos en Ingeniería de Software
Tipos de Requerimientos en Ingeniería de SoftwareTipos de Requerimientos en Ingeniería de Software
Tipos de Requerimientos en Ingeniería de SoftwareLeo Ruelas Rojas
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativojorge paez
 
PROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTEPROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTEgladysmamani
 

La actualidad más candente (20)

Metodologías para el desarrollo de aplicaciones móviles
Metodologías para el desarrollo de aplicaciones móvilesMetodologías para el desarrollo de aplicaciones móviles
Metodologías para el desarrollo de aplicaciones móviles
 
Rational rose
Rational roseRational rose
Rational rose
 
Cuadro comparativo sistemas operativos
Cuadro comparativo sistemas operativosCuadro comparativo sistemas operativos
Cuadro comparativo sistemas operativos
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
 
Segmentacion de memoria
Segmentacion de memoriaSegmentacion de memoria
Segmentacion de memoria
 
Clase 1. lógica de la programación
Clase 1. lógica de la programaciónClase 1. lógica de la programación
Clase 1. lógica de la programación
 
Metodologias para el desarrollo de aplicaciones web
Metodologias para el desarrollo de aplicaciones webMetodologias para el desarrollo de aplicaciones web
Metodologias para el desarrollo de aplicaciones web
 
Cuadro comparativo sobre los tipos de sistemas operativos.
Cuadro comparativo sobre los tipos de sistemas operativos.Cuadro comparativo sobre los tipos de sistemas operativos.
Cuadro comparativo sobre los tipos de sistemas operativos.
 
Metodologías de Desarrollo de Software Tradicionales y Emergentes
Metodologías de Desarrollo de Software Tradicionales y EmergentesMetodologías de Desarrollo de Software Tradicionales y Emergentes
Metodologías de Desarrollo de Software Tradicionales y Emergentes
 
Requerimiento funcional y no funcional
Requerimiento funcional y no funcional Requerimiento funcional y no funcional
Requerimiento funcional y no funcional
 
PAGINACION Y SEGMENTACION DE MEMORIA
PAGINACION Y SEGMENTACION DE MEMORIAPAGINACION Y SEGMENTACION DE MEMORIA
PAGINACION Y SEGMENTACION DE MEMORIA
 
Análisis estructurado
Análisis estructuradoAnálisis estructurado
Análisis estructurado
 
Paradigmas programacion
Paradigmas programacionParadigmas programacion
Paradigmas programacion
 
Tipos de módems, estandares y protocolos
Tipos de módems, estandares y protocolosTipos de módems, estandares y protocolos
Tipos de módems, estandares y protocolos
 
Cuadro comparativo
Cuadro comparativo Cuadro comparativo
Cuadro comparativo
 
Tipos de Requerimientos en Ingeniería de Software
Tipos de Requerimientos en Ingeniería de SoftwareTipos de Requerimientos en Ingeniería de Software
Tipos de Requerimientos en Ingeniería de Software
 
control de concurrencia
control de concurrenciacontrol de concurrencia
control de concurrencia
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativo
 
Tema 4: Procesamiento paralelo.
Tema 4: Procesamiento paralelo.Tema 4: Procesamiento paralelo.
Tema 4: Procesamiento paralelo.
 
PROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTEPROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTE
 

Destacado

Aprendé Scrum en 5 minutos
Aprendé Scrum en 5 minutosAprendé Scrum en 5 minutos
Aprendé Scrum en 5 minutosRebeka Sanabria
 
Principios de las metodologías agiles
Principios  de las metodologías agilesPrincipios  de las metodologías agiles
Principios de las metodologías agilesjoselynvaleria93
 
4. Desarrollo ágil de software
4. Desarrollo ágil de software4. Desarrollo ágil de software
4. Desarrollo ágil de softwareCoesi Consultoria
 
Metodologias de desarrollo
Metodologias de desarrolloMetodologias de desarrollo
Metodologias de desarrolloHermes Romero
 
01 el proceso-de_desarrollo_de_software
01 el proceso-de_desarrollo_de_software01 el proceso-de_desarrollo_de_software
01 el proceso-de_desarrollo_de_softwarePaola Galindo
 
7 principios Lean - charla relámpago Pablitux #AOC2016
7 principios Lean - charla relámpago Pablitux #AOC2016 7 principios Lean - charla relámpago Pablitux #AOC2016
7 principios Lean - charla relámpago Pablitux #AOC2016 Pablo Tortorella
 
Introducción a las Metodologías Ágiles
Introducción a las Metodologías ÁgilesIntroducción a las Metodologías Ágiles
Introducción a las Metodologías Ágilesmigami
 
Metodologías de desarrollo de software ucp
Metodologías de desarrollo de software   ucpMetodologías de desarrollo de software   ucp
Metodologías de desarrollo de software ucpAlonso Toro Lazo
 
1 ingeniería de software
1 ingeniería de software1 ingeniería de software
1 ingeniería de softwareUVM
 
Introducción a la metodologías ágiles y scrum
Introducción a la metodologías ágiles y scrumIntroducción a la metodologías ágiles y scrum
Introducción a la metodologías ágiles y scrumRicardo Miguel Palacin Anco
 
Unidad 1.2 B Metodos Agiles 1
Unidad 1.2 B Metodos Agiles  1Unidad 1.2 B Metodos Agiles  1
Unidad 1.2 B Metodos Agiles 1Sergio Sanchez
 
Scrum en 15 minutos
Scrum en 15 minutosScrum en 15 minutos
Scrum en 15 minutosrodrigoi
 
Presentacion Atmosferia 2011
Presentacion Atmosferia 2011Presentacion Atmosferia 2011
Presentacion Atmosferia 2011Atmosferia
 
Metodologías agiles de desarrollo de software
Metodologías agiles de desarrollo de softwareMetodologías agiles de desarrollo de software
Metodologías agiles de desarrollo de softwareDomingo Gallardo
 

Destacado (20)

Aprendé Scrum en 5 minutos
Aprendé Scrum en 5 minutosAprendé Scrum en 5 minutos
Aprendé Scrum en 5 minutos
 
Principios de las metodologías agiles
Principios  de las metodologías agilesPrincipios  de las metodologías agiles
Principios de las metodologías agiles
 
4. Desarrollo ágil de software
4. Desarrollo ágil de software4. Desarrollo ágil de software
4. Desarrollo ágil de software
 
Metodologias de desarrollo
Metodologias de desarrolloMetodologias de desarrollo
Metodologias de desarrollo
 
Metodologías ágiles
Metodologías ágilesMetodologías ágiles
Metodologías ágiles
 
01 el proceso-de_desarrollo_de_software
01 el proceso-de_desarrollo_de_software01 el proceso-de_desarrollo_de_software
01 el proceso-de_desarrollo_de_software
 
7 principios Lean - charla relámpago Pablitux #AOC2016
7 principios Lean - charla relámpago Pablitux #AOC2016 7 principios Lean - charla relámpago Pablitux #AOC2016
7 principios Lean - charla relámpago Pablitux #AOC2016
 
Introducción a las Metodologías Ágiles
Introducción a las Metodologías ÁgilesIntroducción a las Metodologías Ágiles
Introducción a las Metodologías Ágiles
 
Metodologías de desarrollo de software ucp
Metodologías de desarrollo de software   ucpMetodologías de desarrollo de software   ucp
Metodologías de desarrollo de software ucp
 
1 ingeniería de software
1 ingeniería de software1 ingeniería de software
1 ingeniería de software
 
Introducción a la metodologías ágiles y scrum
Introducción a la metodologías ágiles y scrumIntroducción a la metodologías ágiles y scrum
Introducción a la metodologías ágiles y scrum
 
Metodologías ágiles desarrollo de software
Metodologías ágiles   desarrollo de softwareMetodologías ágiles   desarrollo de software
Metodologías ágiles desarrollo de software
 
La educación & internet
La educación &  internetLa educación &  internet
La educación & internet
 
Kanban
KanbanKanban
Kanban
 
CORETIC - SCRUM
CORETIC - SCRUMCORETIC - SCRUM
CORETIC - SCRUM
 
Unidad 1.2 B Metodos Agiles 1
Unidad 1.2 B Metodos Agiles  1Unidad 1.2 B Metodos Agiles  1
Unidad 1.2 B Metodos Agiles 1
 
Scrum en 15 minutos
Scrum en 15 minutosScrum en 15 minutos
Scrum en 15 minutos
 
Desarrollo Agil
Desarrollo AgilDesarrollo Agil
Desarrollo Agil
 
Presentacion Atmosferia 2011
Presentacion Atmosferia 2011Presentacion Atmosferia 2011
Presentacion Atmosferia 2011
 
Metodologías agiles de desarrollo de software
Metodologías agiles de desarrollo de softwareMetodologías agiles de desarrollo de software
Metodologías agiles de desarrollo de software
 

Similar a Fundamentos de las metodologías ágiles

Metodologiasagilesdegestionydesarrollodeproyectosdeti
MetodologiasagilesdegestionydesarrollodeproyectosdetiMetodologiasagilesdegestionydesarrollodeproyectosdeti
MetodologiasagilesdegestionydesarrollodeproyectosdetiClaudio Garrido
 
Qué metodología será más adecuada para mi proyecto software
Qué metodología será más adecuada para mi proyecto softwareQué metodología será más adecuada para mi proyecto software
Qué metodología será más adecuada para mi proyecto softwareLeanSight Consulting
 
Gestión de proyectos informáticos
Gestión de proyectos informáticosGestión de proyectos informáticos
Gestión de proyectos informáticosbastian becerra
 
Pmi tour santa cruz tradicional vs agiles cb
Pmi tour santa cruz   tradicional vs agiles cbPmi tour santa cruz   tradicional vs agiles cb
Pmi tour santa cruz tradicional vs agiles cbCeciliaboggi
 
Metodologias ágiles
Metodologias ágilesMetodologias ágiles
Metodologias ágilesAngel Rochy
 
Modelos de proceso del software
Modelos de proceso del softwareModelos de proceso del software
Modelos de proceso del softwareDiego Llusco
 
Gestión de proyectos informáticos
Gestión de proyectos informáticos Gestión de proyectos informáticos
Gestión de proyectos informáticos bastian becerra
 
Metodos agiles de software
Metodos agiles de softwareMetodos agiles de software
Metodos agiles de softwareGeovani AG
 
Ingeniería de Calidad -Apunte calidad en las metodologias agiles
Ingeniería de Calidad -Apunte  calidad en las metodologias agilesIngeniería de Calidad -Apunte  calidad en las metodologias agiles
Ingeniería de Calidad -Apunte calidad en las metodologias agilesDaniel Remondegui
 
Práctica SRUM - (Introducción) v1.pptx
Práctica SRUM - (Introducción) v1.pptxPráctica SRUM - (Introducción) v1.pptx
Práctica SRUM - (Introducción) v1.pptxEverCGonzalesRodrigo1
 
Presentacion agil
Presentacion agilPresentacion agil
Presentacion agiljj021
 

Similar a Fundamentos de las metodologías ágiles (20)

Metodologiasagilesdegestionydesarrollodeproyectosdeti
MetodologiasagilesdegestionydesarrollodeproyectosdetiMetodologiasagilesdegestionydesarrollodeproyectosdeti
Metodologiasagilesdegestionydesarrollodeproyectosdeti
 
Qué metodología será más adecuada para mi proyecto software
Qué metodología será más adecuada para mi proyecto softwareQué metodología será más adecuada para mi proyecto software
Qué metodología será más adecuada para mi proyecto software
 
Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
 
Gestión de proyectos informáticos
Gestión de proyectos informáticosGestión de proyectos informáticos
Gestión de proyectos informáticos
 
Kanban
KanbanKanban
Kanban
 
Pmi tour santa cruz tradicional vs agiles cb
Pmi tour santa cruz   tradicional vs agiles cbPmi tour santa cruz   tradicional vs agiles cb
Pmi tour santa cruz tradicional vs agiles cb
 
Metodologias ágiles
Metodologias ágilesMetodologias ágiles
Metodologias ágiles
 
Modelos de proceso del software
Modelos de proceso del softwareModelos de proceso del software
Modelos de proceso del software
 
Gestión de proyectos informáticos
Gestión de proyectos informáticos Gestión de proyectos informáticos
Gestión de proyectos informáticos
 
Metodos agiles de software
Metodos agiles de softwareMetodos agiles de software
Metodos agiles de software
 
Ingeniería de Calidad -Apunte calidad en las metodologias agiles
Ingeniería de Calidad -Apunte  calidad en las metodologias agilesIngeniería de Calidad -Apunte  calidad en las metodologias agiles
Ingeniería de Calidad -Apunte calidad en las metodologias agiles
 
S15-DAW-2022S1.pptx
S15-DAW-2022S1.pptxS15-DAW-2022S1.pptx
S15-DAW-2022S1.pptx
 
Rup
RupRup
Rup
 
Rup
RupRup
Rup
 
Práctica SRUM - (Introducción) v1.pptx
Práctica SRUM - (Introducción) v1.pptxPráctica SRUM - (Introducción) v1.pptx
Práctica SRUM - (Introducción) v1.pptx
 
UNIDAD_I.ppt
UNIDAD_I.pptUNIDAD_I.ppt
UNIDAD_I.ppt
 
Softagile
SoftagileSoftagile
Softagile
 
Presentacion agil
Presentacion agilPresentacion agil
Presentacion agil
 
01 Presentacion curso ingeniería de software
01 Presentacion curso ingeniería de software01 Presentacion curso ingeniería de software
01 Presentacion curso ingeniería de software
 
Hacia una filosofia ágil
Hacia una filosofia ágilHacia una filosofia ágil
Hacia una filosofia ágil
 

Último

leidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptxleidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptxLeidyfuentes19
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfEmilio Casbas
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informáticavazquezgarciajesusma
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfAlejandraCasallas7
 
Licencias para el Uso y el Desarrollo de Software
Licencias para el Uso y el Desarrollo de SoftwareLicencias para el Uso y el Desarrollo de Software
Licencias para el Uso y el Desarrollo de SoftwareAndres Avila
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Telefónica
 
Gestión de concurrencia y bloqueos en SQL Server
Gestión de concurrencia y bloqueos en SQL ServerGestión de concurrencia y bloqueos en SQL Server
Gestión de concurrencia y bloqueos en SQL ServerRobertoCarrancioFern
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.AlejandraCasallas7
 
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024DanielErazoMedina
 
¡Mira mi nuevo diseño hecho en Canva!.pdf
¡Mira mi nuevo diseño hecho en Canva!.pdf¡Mira mi nuevo diseño hecho en Canva!.pdf
¡Mira mi nuevo diseño hecho en Canva!.pdf7adelosriosarangojua
 
Estudio de la geometría analitica. Pptx.
Estudio de la geometría analitica. Pptx.Estudio de la geometría analitica. Pptx.
Estudio de la geometría analitica. Pptx.sofiasonder
 
Alan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentaciónAlan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentaciónJuanPrez962115
 
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...Kevin Serna
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informáticavazquezgarciajesusma
 
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docxwerito139410
 
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docxPRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docxencinasm992
 
proyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusproyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusraquelariza02
 
Diagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestreDiagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestreDiegoCampos433849
 
Sistemas distribuidos de redes de computadores en un entorno virtual de apren...
Sistemas distribuidos de redes de computadores en un entorno virtual de apren...Sistemas distribuidos de redes de computadores en un entorno virtual de apren...
Sistemas distribuidos de redes de computadores en un entorno virtual de apren...Luis Fernando Uribe Villamil
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesPABLOCESARGARZONBENI
 

Último (20)

leidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptxleidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdf
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
 
Licencias para el Uso y el Desarrollo de Software
Licencias para el Uso y el Desarrollo de SoftwareLicencias para el Uso y el Desarrollo de Software
Licencias para el Uso y el Desarrollo de Software
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
 
Gestión de concurrencia y bloqueos en SQL Server
Gestión de concurrencia y bloqueos en SQL ServerGestión de concurrencia y bloqueos en SQL Server
Gestión de concurrencia y bloqueos en SQL Server
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
 
¡Mira mi nuevo diseño hecho en Canva!.pdf
¡Mira mi nuevo diseño hecho en Canva!.pdf¡Mira mi nuevo diseño hecho en Canva!.pdf
¡Mira mi nuevo diseño hecho en Canva!.pdf
 
Estudio de la geometría analitica. Pptx.
Estudio de la geometría analitica. Pptx.Estudio de la geometría analitica. Pptx.
Estudio de la geometría analitica. Pptx.
 
Alan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentaciónAlan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentación
 
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx
 
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docxPRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
 
proyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusproyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmus
 
Diagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestreDiagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestre
 
Sistemas distribuidos de redes de computadores en un entorno virtual de apren...
Sistemas distribuidos de redes de computadores en un entorno virtual de apren...Sistemas distribuidos de redes de computadores en un entorno virtual de apren...
Sistemas distribuidos de redes de computadores en un entorno virtual de apren...
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
 

Fundamentos de las metodologías ágiles

  • 1. Fundamentos de las metodologías ágiles Sesión 3 Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante
  • 2. Manifiesto ágil Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante
  • 3. Manifiesto ágil Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante
  • 4. Año: 2001 • El manifesto ágil no representa la invención de las metologías ágiles, sino su presentación en sociedad • Muchas propuestas previas alternativas al modelo de cascada • • • • • Desarrollo en espiral, 1984 Rapid Aplication Development (RAD), 1991 Rational Unified Process (UP), 1994 Scrum, 1995 Extreme Programming, 1996 Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante 4
  • 5. Autores • • • • • • • • • Kent Beck (Twitter, Web) Mike Beedle Arie van Bennekum Alistair Cockburn (Web) Ward Cunningham Martin Fowler (Twitter, Web, ThoughtWorks) James Grenning Jim Highsmith • • • • • • • • Ron Jeffries (Twitter, Web) Jon Kern Brian Marick Robert C. Martin (Twitter) Steve Mellor Ken Schwaber (Scrum.org) Jeff Sutherland (Scrum.org) Dave Thomas (Pragmatic Programmer) Andrew Hunt (Pragmatic Programmer)
 Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante 5
  • 6. Valores, principios y prácticas • Las prácticas tienen sentido en el marco de un conjunto de valores y principios • Las metodologías ágiles no son dogmáticas, responden a unos valores que son los que hay que tratar de mantener Kent Beck - Extreme Programming Explained, 2004 Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante 6
  • 7. Los 4 valores del manifiesto ágil Valoramos: 1. Individuos e interacciones sobre procesos y herramientas 2. Software que funciona sobre documentación exahustiva 3. Colaboración con el cliente frente a negociación del contrato 4. Responder al cambio frente a seguir un plan Aunque los ítems de la derecha tienen valor, valoramos más los de la izquierda.
 Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante 7
  • 8. Los 12 principios del manifiesto ágil 1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. 2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. 3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. 4. Business people and developers must work together daily throughout the project. 5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante 8
  • 9. Los 12 principios del manifiesto ágil 6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. 7. Working software is the primary measure of progress. 8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. 9. Continuous attention to technical excellence and good design enhances agility. 10. Simplicity--the art of maximizing the amount of work not done--is essential. Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante 9
  • 10. Los 12 principios del manifiesto ágil 11. The best architectures, requirements, and designs emerge from selforganizing teams. 12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. Metodologías Ágiles de Desarrollo de Software
 10 Domingo Gallardo, DCCIA, Univ. Alicante
  • 11. Principios Lean Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante
  • 12. ¿En qué se parece una fábrica y un proyecto software? Mary Poppendieck - Lean Software Development, Tutorial 2007 Metodologías Ágiles de Desarrollo de Software
 12 Domingo Gallardo, DCCIA, Univ. Alicante
  • 13. El desarrollo de software como construcción de un producto • Entradas • • Salida • • Nuevas características (features) en forma de casos de uso, historias de usuario, etc. Software funcionando al que se le ha añadido las nuevas características Proceso • Cada característica debe ser analizada, desarrollada, probada, añadida y entregada Metodologías Ágiles de Desarrollo de Software
 13 Domingo Gallardo, DCCIA, Univ. Alicante
  • 14. Sistema de producción de Toyota y fabricación lean • TPS (Toyota Production System), Taichi Ohno • Flujo de desarrollo just-in-time • Cultura de “parar la línea” • Mejora continua • Pensar en el conjunto • Da origen a los denominados sistemas de fabricación lean (lean = austero, flaco) • La idea central es la continua búsqueda y eliminación de los desperdicios (waste) generados por el proceso • Cuando se eliminan los desperdicios la calidad mejora, y el tiempo de producción y los costes se reducen y la producción se vuelve fluida (flow) • El término lean se ha popularizado: lean startups Metodologías Ágiles de Desarrollo de Software
 14 Domingo Gallardo, DCCIA, Univ. Alicante
  • 15. Dos metáforas del desarollo de software • Dos metáforas poderosas que nos permiten entender mejor la actividad del desarrollo • • Desarrollo software como el proceso de fabricación de un producto Desarrollo software como el diseño de un producto que soluciona un problema • Es interesante tener siempre presente ambas metáforas • Los principios lean se pueden aplicar a ambos aspectos • Fabricación: optimizar el proceso identificando y eliminando lo innecesario • Diseño: extender el conocimiento y eliminar el desperdicio de reaprender Metodologías Ágiles de Desarrollo de Software
 15 Domingo Gallardo, DCCIA, Univ. Alicante
  • 16. Eliminar los desperdicios (waste) • Desperdicio: cualquier cosa que no se utiliza y que no añade valor al producto final • Producir sólo lo necesario y en el momento en el que se necesita • • Si algo no se utiliza, no podemos darnos cuenta de sus fallos En el desarrollo de software hay mucha sobre-producción • • • • Demasiados requisitos para un release Demasiada arquitectura para las necesidades actuales Demasiado código para poder ser probado adecuadamente Demasiadas funcionalidades para el usuario final Metodologías Ágiles de Desarrollo de Software
 16 Domingo Gallardo, DCCIA, Univ. Alicante
  • 17. ¿Qué es valor? Mary Poppendieck - Lean Software Development, Tutorial 2007 Metodologías Ágiles de Desarrollo de Software
 17 Domingo Gallardo, DCCIA, Univ. Alicante
  • 18. Los 7 principios del desarrollo de software lean • Definidos por Mary Poppendieck ("Lean Software Development: An Agile Toolkit", 2003 y “Implementing Lean Software Development”, 2006) ! 1. Eliminar los desperdicios (Eliminate Waste) 2. Fomentar la calidad (Build Quality In) 3. Crear conocimiento (Create Knowledge) 4. Decidir lo más tarde posible (Defer Commitment) 5. Entregar rápido (Deliver Fast) 6. Respetar a la gente (Respect People) 7. Optimizar el conjunto (Optimize the Whole) Metodologías Ágiles de Desarrollo de Software
 18 Domingo Gallardo, DCCIA, Univ. Alicante
  • 19. Sistemas de fabricación Pull • Uno de los pilares de la metodología Kanban • El flujo de trabajo se regula tirando (pull) de los materiales a transformar con una cadencia constante • Un sistema pull regula el flujo de los recursos mediante un proceso de fabricación reemplazando solo lo que ha sido consumido y lo que es inmediatamente entregable Metodologías Ágiles de Desarrollo de Software
 19 Domingo Gallardo, DCCIA, Univ. Alicante
  • 20. Kanban • • Una de las herramientas 
 más importantes para 
 organizar el proceso de 
 producción son las
 kanban (del japonés,
 kan=visual y ban = tablero
 o tarjeta) Enfoque visual para el control de la producción, usando herramientas sencillas como contenedores retornables, tarjetas o incluso espacios vacíos para “tirar” de los productos desde los centros de producción hacia los centros de consumo o transformación
 ! ! ! • Una kanban es una señal o ayuda visual que indica que un centro de trabajo ha finalizado un proceso, necesita trabajo o necesita más materiales • Los tableros kanban permiten que los centros de trabajo hagan un seguimiento de las necesidades de los clientes o de los proveedores y que respondan rápida y adecuadamente Metodologías Ágiles de Desarrollo de Software
 20 Domingo Gallardo, DCCIA, Univ. Alicante
  • 21. Kanban Toyota Just-in-Time Kanban System Metodologías Ágiles de Desarrollo de Software
 21 Domingo Gallardo, DCCIA, Univ. Alicante
  • 22. Tableros kanban en el desarrollo de software Henrik Kniberg - Lean from the Trenches Metodologías Ágiles de Desarrollo de Software
 22 Domingo Gallardo, DCCIA, Univ. Alicante
  • 23. Lecturas • • • Manifiesto ágil, 2001 Ken Beck, Learning from Lean Entrevista con Mary Poppendieck, An introduction to Lean Software Development, 2004 Metodologías Ágiles de Desarrollo de Software
 23 Domingo Gallardo, DCCIA, Univ. Alicante