Grupo 1 Programacion Agil

30
PROGRAMACION AGIL: “ SCRUM Y XP ” Profesor: Hernán Moraga Edición: Aline Guerrero ía De Software Santiago, 16 Diciembre 2005 1/3

Transcript of Grupo 1 Programacion Agil

Page 1: Grupo 1 Programacion Agil

PROGRAMACION AGIL:“ SCRUM Y XP ”

Profesor: Hernán Moraga

Edición: Aline Guerrero

Ingeniería De Software Santiago, 16 Diciembre 2005 1/30

Page 2: Grupo 1 Programacion Agil

SCRUM

Gestión Ágil de Proyectos

Colaborador:

Anónimo

Ingeniería De Software Santiago, 16 Diciembre 2005 2/30

Page 3: Grupo 1 Programacion Agil

¿Qué Es SCRUM? SCRUM es una metodología ágil de gestión de

proyectos cuyo objetivo primordial es elevar al máximo la productividad de un equipo.

Reduce al máximo la burocracia y actividades no orientadas a producir software que funcione y produce resultados en periodos muy breves de tiempo (cada 30 días), por medio de iteraciones o Sprints.

Ideal para proyectos con un rápido cambio de requerimientos.

Ingeniería De Software Santiago, 16 Diciembre 2005 3/30

Page 4: Grupo 1 Programacion Agil

Contexto SCRUM Sólo abarca prácticas de gestión sin entrar en las

prácticas de desarrollo como puede hacer XP. Delega completamente en el equipo la

responsabilidad de decidir la mejor manera de trabajar para ser lo más productivos posibles y, le da gran protagonismo a las reuniones que realicen a lo largo del proyecto.

Sus raíces teóricas están en las teorías de la auto-organización.

Ingeniería De Software Santiago, 16 Diciembre 2005 4/30

Page 5: Grupo 1 Programacion Agil

Actores SCRUMPropietario del producto

Representa a todos los interesados en el producto final.Sus áreas de responsabilidad son: Financiación del proyecto. Retorno de la inversión del proyecto. Lanzamiento del proyecto.

Ingeniería De Software Santiago, 16 Diciembre 2005 5/30

Page 6: Grupo 1 Programacion Agil

Actores SCRUMEquipo

Responsable de transformar el Backlog de la iteración en un incremento de la funcionalidad del software. Auto-gestionado. Auto-organizado. Multi-funcional.

Ingeniería De Software Santiago, 16 Diciembre 2005 6/30

Page 7: Grupo 1 Programacion Agil

Actores SCRUMScrum Master

Responsable del proceso Scrum. Formación y entrenamiento del proceso. Incorporación de Scrum en la cultura de la

empresa. Garantía de cumplimiento de roles y

responsabilidad.

Ingeniería De Software Santiago, 16 Diciembre 2005 7/30

Page 8: Grupo 1 Programacion Agil

Metodología De Trabajo Equipos de entre 6 y 10 personas revisan los

requisitos, la tecnología disponible y evalúan los conocimientos para colectivamente determinar como incrementar la funcionalidad.

Reuniones diarias, antes de empezar a trabajar, con una duración máxima de 4 hrs.

Se llevan a cabo hasta que el proyecto este listo para ser puesto en producción o ser lanzado al mercado.

Ingeniería De Software Santiago, 16 Diciembre 2005 8/30

Page 9: Grupo 1 Programacion Agil

Metodología De Trabajo En la primera reunión se explica al equipo la forma de

trabajo, especificando que son reuniones cortas para coordinar trabajo y no para solucionar problemas. Se establecen los criterios para arreglar los errores por prioridades (base del éxito del sistema).

Al inicio de cada iteración se revisa el trabajo pendiente en el proyecto y se selecciona la parte a la cual se le incrementara funcionalidad, para al final de la iteración incorporarla al SW y presentársela a las partes involucradas.

En cada reunión las preguntas claves a contestar son: ¿Qué es lo que se hizo desde la última reunión? ¿Qué es lo que se va a hacer hasta la siguiente reunión? ¿Cómo se va a llevar a cabo?

Ingeniería De Software Santiago, 16 Diciembre 2005 9/30

Page 10: Grupo 1 Programacion Agil

Artefactos SCRUMSprint

Es la base del desarrollo Scrum. Su duración máxima es de 30 días. Se llevan a cabo las tareas pre-establecidas y no se puede

modificar el trabajo acordado en el backlog. Sólo el ScrumMaster puede abortar un sprint si lo

considera no viable por alguna de las sgtes. razones: Las circunstancias del negocio han cambiado. La tecnología acordada no funciona. El equipo ha tenido interferencias.

Ingeniería De Software Santiago, 16 Diciembre 2005 10/30

Page 11: Grupo 1 Programacion Agil

Artefactos SCRUMProduct Backlog

Crea un listado con los requisitos de los usuarios o propietarios del sistema para planificar el proyecto.

No es una lista completa y definitiva. Es sólo una estimación inicial de los requisitos.

Es un documento dinámico que incorpora las constantes necesidades del sistema y se mantiene durante todo el ciclo de vida (hasta la retirada del Sist.).

Ingeniería De Software Santiago, 16 Diciembre 2005 11/30

Page 12: Grupo 1 Programacion Agil

Artefactos SCRUMSprint Backlog

Especifica la serie de tareas que se van a desarrollar según los requisitos señalados.

Estas tareas tienen una duración de entre 4 y 16 hrs. de trabajo.

Las de mayor duración intentar descomponerlas en Sub-Tareas dentro de ese rango de tiempo.

Al final del sprint se busca un incremento en la funcionalidad.

Ingeniería De Software Santiago, 16 Diciembre 2005 12/30

Page 13: Grupo 1 Programacion Agil

El Flujo De SCRUM

Ingeniería De Software Santiago, 16 Diciembre 2005 13/30

Page 14: Grupo 1 Programacion Agil

Bibliografía http://www.ingenierosoftware.com/equipos/estabilizar-aplicacion.php

http://www.agile-spain.com/agilev2/donde_aprender_mas_sobre_scrum

http://blogs.msdn.com/josemurl/archive/2005/09/15/467898.aspx

http://www.exa.unicen.edu.ar/catedras/ingsoft/informeagiles.doc

Ingeniería De Software Santiago, 16 Diciembre 2005 14/30

Page 15: Grupo 1 Programacion Agil

XP

Programación Extrema

Colaboradores: Felipe Lobos

Wilder Escobedo

Ingeniería De Software Santiago, 16 Diciembre 2005 15/30

Page 16: Grupo 1 Programacion Agil

¿Qué Es XP? Es un proceso ligero, ágil, de bajo riesgo, flexible,

predecible, científico y divertido de desarrollar software.

Esta orientado hacia quien produce y usa el software ( retroalimentación continua cliente y desarrollador).

Reduce el costo del cambio en todas las etapas del ciclo de vida del sistema.

Combina las que han demostrado ser las mejores practicas para desarrollar software, y las lleva al extremo.

Ingeniería De Software Santiago, 16 Diciembre 2005 16/30

Page 17: Grupo 1 Programacion Agil

Contexto XP Cliente bien definido y en colaboración constante. Los requisitos pueden y van a cambiar (volátiles). Reduce los tiempos de desarrollo manteniendo la

calidad. Desarrollo incremental y continuo para responder a

los cambios. Grupo pequeño y muy integrado.

Ingeniería De Software Santiago, 16 Diciembre 2005 17/30

Page 18: Grupo 1 Programacion Agil

Características XP Metodología creada a base de prueba y error. Énfasis en el desarrollo del software mas que una

buena documentación. Empieza en pequeño y añade funcionalidad con

retroalimentación continua. No introduce funcionalidades antes de que sean

necesarias. El cliente o el usuario se convierte en miembro del

mismo equipo.Ingeniería De Software Santiago, 16 Diciembre 2005 18/30

Page 19: Grupo 1 Programacion Agil

Características XP Su utilidad es medida con cuatro valores:

Simplicidad en las soluciones implementadas.

Comunicación. Retroalimentación. Coraje (si funciona … mejóralo).

Ingeniería De Software Santiago, 16 Diciembre 2005 19/30

Page 20: Grupo 1 Programacion Agil

Roles De XP Programador. Cliente. Encargado de pruebas (Tester). Encargado de seguimiento (Tracker). Entrenador (Coach). Consultor. Gestor (Big boss).

Ingeniería De Software Santiago, 16 Diciembre 2005 20/30

Page 21: Grupo 1 Programacion Agil

Prácticas De XP Desarrollo guiado por pruebas. Cliente presente. Integración continua. Refabricación sin piedad. Diseño simple. Propiedad colectiva del código y convenciones del

mismo. Cubrir una semana de 40 horas, pues los

programadores cansados son menos productivos y mas propensos a errores.

Ingeniería De Software Santiago, 16 Diciembre 2005 21/30

Page 22: Grupo 1 Programacion Agil

Prácticas De XP

Ingeniería De Software Santiago, 16 Diciembre 2005 22/30

Page 23: Grupo 1 Programacion Agil

Ciclo De Vida XP El ciclo de vida ideal de XP consta de seis

fases: Exploración. Planificación de la Entrega (Release). Iteraciones. Producción. Mantenimiento. Muerte del Proyecto.

Ingeniería De Software Santiago, 16 Diciembre 2005 23/30

Page 24: Grupo 1 Programacion Agil

Costo Del Cambio En El Ciclo De Vida Del Proyecto

Tradicionalmente, entre mas tarde aparezca la necesidad de un cambio, el costo de implementación de este se elevara exponencialmente.

La programación extrema mantiene dicho costo en un nivel prácticamente independiente con respecto a la etapa del ciclo de vida.

Ingeniería De Software Santiago, 16 Diciembre 2005 24/30

Page 25: Grupo 1 Programacion Agil

Flujo De Un Proyecto XP

Ingeniería De Software Santiago, 16 Diciembre 2005 25/30

Page 26: Grupo 1 Programacion Agil

Iteración XP

Ingeniería De Software Santiago, 16 Diciembre 2005 26/30

Page 27: Grupo 1 Programacion Agil

Bibliografía http://www.willydev.net/descargas/prev/TodoAgil.Pdf

http://www.programacionextrema.org

http://es.wikipedia.org/wiki/Programaci%C3%B3n_extrema

http://ultimaorbita.com/raciel/x-ezine/x2/2x010-XP.html

http://www.marquetti-asociados.com.ar/xp.htm

http://www.avemundi.com/archivos/XP.ppt+programacion+extrema&hl=es

Ingeniería De Software Santiago, 16 Diciembre 2005 27/30

Page 28: Grupo 1 Programacion Agil

Otras Metodologías Ágiles

Ingeniería De Software Santiago, 16 Diciembre 2005 28/30

Page 29: Grupo 1 Programacion Agil

Crystal Methodologies. Dynamic Systems Development Method

(DSDM). Adaptive Software Development (ASD). Feature - Driven Development (FDD). Lean Development (LD).

Ingeniería De Software Santiago, 16 Diciembre 2005 29/30

Page 30: Grupo 1 Programacion Agil

FIN

Ingeniería De Software Santiago, 16 Diciembre 2005 30/30