Manifiesto ágil.key

Anuncio
1.2 Manifiesto ágil
Tema 1: Fundamentos de las metodologías ágiles
Metodologías Ágiles de Desarrollo de Software
Domingo Gallardo, DCCIA, Univ. Alicante, 2014-15
Manifiesto ágil
Metodologías Ágiles de Desarrollo de Software
Domingo Gallardo, DCCIA, Univ. Alicante, 2014-15
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
•
Reunión previa en 2000 en un workshop organizado por Kent Beck para hablar de XP
•
En febrero de 2001 un grupo de 17 desarrolladores muy activos en estas nuevas metodologías
denominadas ligeras (lightweight) se reunieron en el resort de Snowbird (Utah), convocados por Bob
Martin, Martin Fowler y Alistair Cockburn
•
La idea inicial era entender mejor los enfoques de cada uno, pero Bob Martin preparó un borrador de
documento (manifiesto) que se discutió entre todos. Se acordó el apartado de los “valores” y se encontró
un nombre “paraguas” para este conjunto de técnicas: ágiles.
Metodologías Ágiles de Desarrollo de Software
Domingo Gallardo, DCCIA, Univ. Alicante, 2014-15
Manifiesto ágil
3
Autores
•
•
•
•
•
•
•
•
•
Kent Beck (Twitter, Web)
Mike Beedle
Arie van Bennekum
Alistair Cockburn (Twitter, Web)
Ward Cunningham (Twitter)
Martin Fowler (Twitter, Web)
James Grenning
Jim Highsmith
Andrew Hunt (Pragmatic Programmer)
•
•
•
•
•
•
•
•
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)
Metodologías Ágiles de Desarrollo de Software
Domingo Gallardo, DCCIA, Univ. Alicante, 2014-15
Manifiesto ágil
4
Valores, principios y prácticas (1)
•
•
•
•
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 principios y valores que son los que hay que tratar
de conseguir
Si se intenta copiar las prácticas sin aplicar los principios
subyacentes se caerá en la repetición vacía y en “rituales
ágiles” que son cualquier cosa menos ágiles
• Daily scrum zombies (Henrik Kniberg)
• Tableros de Kanban con tareas vacías que se eternizan
• Un principio fundamental de estas prácticas: mejorar
la transparencia (qué ha hecho quién)
Para que las prácticas sean efectivas, los principios y
valores deben ser compartidos por toda la organización,
no sólo por el equipo de desarrollo de software
Metodologías Ágiles de Desarrollo de Software
Domingo Gallardo, DCCIA, Univ. Alicante, 2014-15
Brodzinski - Values, Principles, Practices
Manifiesto ágil
5
Valores, principios y prácticas (2)
•
Los valores y principios son generales y se pueden aplicar a múltiples situaciones, las prácticas son
concretas y se aplican en contextos restringidos
• Valor: interacción y comunicación
• Prácticas: demostración del producto, reuniones diarias,
pair programming
•
Tan malo es prácticas sin valores como valores sin prácticas:
hay quienes hablan de Ágil (con mayúsculas) como si se
tratara de una religión, pero no terminan de aplicar ni definir
ninguna práctica
•
Para ser un buen jardinero hay que dominar las prácticas de
la jardinería (plantar, podar, regar, …) y entender el
funcionamiento profundo de un jardín (los valores)
Metodologías Ágiles de Desarrollo de Software
Domingo Gallardo, DCCIA, Univ. Alicante, 2014-15
Kent Beck - Extreme Programming Explained, 2004
Manifiesto ágil
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, 2014-15
Manifiesto ágil
7
Actividad (15 minutos)
•
Grupos de 4 personas: repartimos los valores de forma que cada grupo tenga un valor del
manifiesto (pueden estar repetidos). Cada grupo:
• Escribe 3 ejemplos de prácticas asociadas a cada uno de los valores
• Escribe alguna anécdota o ejemplo concreto del mundo del desarrollo de software en el
que no se haya cumplido el valore
•
Puesta en común
Metodologías Ágiles de Desarrollo de Software
Domingo Gallardo, DCCIA, Univ. Alicante, 2014-15
Manifiesto ágil
8
Los 12 principios del manifiesto ágil
•
Los leemos en voz alta, y explicamos lo que entendemos por ese principio, poniendo algún
ejemplo de alguna práctica basada en él
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, 2014-15
Manifiesto ágil
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, 2014-15
Manifiesto ágil
10
Los 12 principios del manifiesto ágil
11. The best architectures, requirements, and designs emerge from self-organizing 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
Domingo Gallardo, DCCIA, Univ. Alicante, 2014-15
Manifiesto ágil
11
Actividad
•
Grupos de 4 personas, cada persona vota en secreto a 4 principios, se suman los votos y se
eligen los 2 principios con más votos
•
El portavoz del grupo explica el resultado y las razones
Metodologías Ágiles de Desarrollo de Software
Domingo Gallardo, DCCIA, Univ. Alicante, 2014-15
Manifiesto ágil
12
Referencias y bibliografía avanzada
•
•
•
•
•
•
Varios autores - Manifesto for Agile Software Develpment
Martin Fowler - The new methodology
Martin Fowler - Writing the Agile Manifesto
Robert Martin - The Founding of the Agile Alliance
Kent Beck - Extreme Programming Explained Second Edition, cap. 3 y 4
Jeff Sutherland - Agile Principles and Values
Metodologías Ágiles de Desarrollo de Software
Domingo Gallardo, DCCIA, Univ. Alicante, 2014-15
Manifiesto ágil
13
Descargar