Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 1 3 Clase Clase 6 Scrum (Parte 2)

Slides:



Advertisements
Presentaciones similares
¿De qué vamos a hablar hoy? Estrategia ágil vs. estrategia tradicional Scrum: ciclo de proyecto, roles Planificación ágil Seguimiento de un proyecto.
Advertisements

El Proyecto Tecnológico
Scrum Juan Palacio Bañeres.
Administrado y desarrollado utilizando Scrum
Proyecto Call Center Taller de desarrollo de proyectos II
CICLO DE VIDA DE LOS SISTEMAS DE INFORMACIÓN
Desarrollo de software innovador con métodos ágiles
Los Principios del Sistema de Gestión de la Calidad
Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles.
Scrum Juan Palacio.
Plan de Negocios Julio Vela.
CAPITULO 4 GIIDO GRUPO 9 KATHERINE VALENCIA OSCAR J. VELEZ V.
METRICAS DE PROCESO Y PROYECTO
Gestión de proyectos Es la primera etapa de Ingeniería del Software.
Metodología de Trabajo Aperio: SCRUM Aperio Inducción
METODOLOGIAS AGILES DE CONSTRUCCION DE SOFWARE
“8 Principios de la Gestión Administrativa”
Alexis Masson Nicolás Fetter
PROCESO O REUNIONES EN SCRUM BENEFICIOS DE UTILIZAR SCRUM
Manual de Funciones.
Ciclos de vida ágiles.  Es una metodología ágil que plantea: ◦ Iteraciones cortas ◦ Entregables periódicos ◦ Colaboración con el cliente full time ◦
Universidad Rey Juan Carlos
Por: Niels Amador Cerda
Fase Inicial Grupo 6 – PIS – 2013.
Scrum Images goes here …y prácticas ágiles para desarrollo de software.
Entornos de Desarrollo
Procedimiento para el establecimiento de indicadores de gestión
La distribución Ing. Enrique Meneses.
Ingeniería de Software
Ingeniería de Proyectos M.C. Juan Carlos Olivares Rojas Agosto, 2009.
Ingeniería del Software
Metodologías de Desarrollo de Software SCRUM Vs. TSP
Practica 2 “Mejoras en un producto”
Ximena Romano – Doris Correa
Implementando Scrum ALM Sessions ’12 #almsessions12
Se ha vuelto un factor decisivo en el éxito de los negocios
Medición y Métricas del Software
Taller de Desarrollo de Proyectos II (75.47) Grupo 2 Taller de Desarrollo de Proyectos II (75.47) Presentación Final ERNESTO GIMENO PABLO BESADA.
Ingeniería de Software
Colegio Alemán de Barranquilla
Diseño E Implementación En Delphi Del Caso De Posicionamiento 2D
UNIVERSITARIO: DAVID MAMANI EL ALTO – LA PAZ – BOLIVIA 2009 CARRERA: ING. DE SISTEMAS MATERIA: INGENIERIA DE SOFTWARE.
Gestión Ágil de Proyectos Colaborador: Anónimo
Roles de Open UP.
Scrum Una Alternativa Ágil para el desarrollo de Software
LA MEJORA DE LOS PROCESOS
Clase 5 Scrum (Parte 1).
Republica Bolivariana De Venezuela Ministerio Del Poder Popular Para La Educación Universidad Gran Mariscal De Ayacucho Cátedra: Dirección De Operaciones.
PROCESOS DE DESARROLLO DE SOFTWARE
Microsoft Office Project INTRODUCCIÓN A LA GESTIÓN DE PROYECTOS Microsoft Office Project 2010.
problemas de la calidad del software
Estructurar tus ideas para hacerlas realidad
NOTIFICANDOTE Fernando Figueroa Daniel Labra. INTRODUCCIÓN La comunicación no sería posible si no se tuvieran las herramientas para comunicarse, en donde.
Daniel Labra Fernando Figueroa
Taller de desarrollo de proyectos II Presentación Inicial.
Scrum Ciclo Profesor: Ing. José Díaz
CURSO DE SCRUM Y METODOS AGILES 13 y 14 de octubre, 2015 Sala Mercado Hotel Four Points – Sheraton Montevideo, Uruguay Docentes:Fernando Guigou Gabriel.
GUÍA PARA IMPLEMENTAR EL SISTEMA DE GESTIÓN DE CALIDAD EN LAS UGEL
Arquitectura de una aplicación Arquitectur a: desarrolla un plan general del sistema, asegurando que las necesidades de los usuarios sean atendidas. Ingeniería.
ANALISIS SEGURO DE TRABAJO (AST)
CONCEPTO DE CICLO DE VIDA 1 En los departamentos de Sistemas se debe definir un marco de referencia común que debe ser:  Pueda ser empleado por todos.
Fundamentos de Computación
Ingeniería de Software Facultad de Ingeniería Septiembre 2010 Fernando Alsuyet Ariel Illio Matias Baldini.
Planificación de Sistemas de Información
Clase 7 Kanban y Scrumban.
Integrantes: Mejía Zúñiga Yoselin Taco Apaza Pamela Ychuta Torres John.
UNIDAD III. PSP Objetivo: El alumno identificará el Proceso Personal de Software, para medir su desempeño.
Sistemas de calidad en el desarrollo de software.
GESTIÓN DE PROYECTOS.
GUIA DIDACTICA: TRABAJO EN EQUIPO Jugando en Equipo Introducción: Poner en practica la participación decidida, organizada y coordinada de las persona.
Transcripción de la presentación:

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 1 3 Clase Clase 6 Scrum (Parte 2)

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 2 3 Clase 6.1. Roles La metodología Scrum no tiene jefe de proyecto. Las responsabilidades del tradicional jefe de proyecto se distribuyen entre los siguientes roles de Scrum: - Cliente (“Product Owner”) - Facilitador (“Scrum Master”) - Equipo (“Team”)

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 3 3 Clase 6.1. Roles

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 4 3 Clase 6.1. Roles Cliente o Product Owner a) Representa a todas las personas interesadas en los resultados del proyecto, internas o externas a la organización, promotores del proyecto y usuarios finales.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 5 3 Clase 6.1. Roles Cliente o Product Owner b) Actúa como interlocutor único ante el equipo, con autoridad para tomar decisiones. c) Define los objetivos del producto o proyecto. d) Es el propietario de la planificación del proyecto: crea y mantiene la lista priorizada con los requisitos necesarios para cubrir los objetivos del proyecto, y conoce el valor que aportará cada uno.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 6 3 Clase 6.1. Roles Cliente o Product Owner e) Divide la lista de requisitos estableciendo un calendario de entregas. f) Antes de iniciar cada iteración replanifica el proyecto en función de los requisitos que aportan más valor en ese momento, de los requisitos completados en la iteración anterior y del contexto del proyecto.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 7 3 Clase 6.1. Roles Cliente o Product Owner g) Participa de la reunión de planificación de la iteración, proponiendo los requisitos más prioritarios a desarrollar, respondiendo las dudas del equipo y detallando los requisitos que el equipo se compromete a hacer.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 8 3 Clase 6.1. Roles Cliente o Product Owner h) Está disponible durante el curso de la iteración para responder a las preguntas que puedan aparecer. i) No puede cambiar los requisitos que se están desarrollando en una iteración, una vez que esté iniciada. j) Participa de la reunión de demostración de la iteración, revisando los requisitos completados.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 9 3 Clase 6.1. Roles Facilitador o Scrum Master a) Lidera al equipo. b) Asegura que todos los participantes del proyecto sigan las reglas y el proceso de Scrum, ajustándolos a la cultura particular de la organización.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 10 3 Clase 6.1. Roles Facilitador o Scrum Master c) Guía al equipo en su colaboración con el cliente para maximizar la sinergia. d) Asegura que la lista de requisitos priorizada esté preparada antes de la siguiente iteración. e) Facilita las reuniones de planificación de la iteración, de sincronización del equipo, de demostración y de retrospectiva, de manera que sean productivas y consigan sus objetivos.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 11 3 Clase 6.1. Roles Facilitador o Scrum Master f) Quita los impedimentos que el equipo encuentra en su camino para conseguir el objetivo de cada iteración. Estos obstáculos se identifican en las reuniones de sincronización y de retrospectiva.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 12 3 Clase 6.1. Roles Facilitador o Scrum Master g) Protege y aísla al equipo de interrupciones externas durante la ejecución de la iteración, como introducción de nuevos requisitos, "secuestro" no previsto de un miembro del equipo, etc. De esta manera el equipo puede mantener su productividad y el compromiso que adquirió para terminar los requisitos de la iteración.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 13 3 Clase 6.1. Roles Facilitador o Scrum Master h) Asegura la calidad de los desarrollos. i) Enseña al equipo a autogestionarse. No da respuestas, sino que guía al equipo con preguntas para que descubra por sí mismo una solución.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 14 3 Clase 6.1. Roles Equipo o Team Grupo de personas que de manera conjunta desarrollan el producto del proyecto. Comparten la responsabilidad del trabajo que realizan y su calidad, en cada iteración.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 15 3 Clase 6.1. Roles Equipo o Team Está estudiado que el tamaño ideal de un equipo Scrum debe estar entre 5 y 9 personas.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 16 3 Clase 6.1. Roles Equipo o Team Por encima de 9, la comunicación y colaboración entre los integrantes se hace difícil y se forman subgrupos

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 17 3 Clase 6.1. Roles Equipo o Team Por debajo de 5, cualquier imprevisto o interrupción sobre un miembro del equipo compromete seriamente el compromiso adquirido.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 18 3 Clase 6.1. Roles Equipo o Team a) Es un equipo auto gestionado. b) Selecciona los requisitos que se compromete a completar en una iteración, de manera que estén preparados para ser entregados al cliente. c) Estima la complejidad de cada uno de los requisitos priorizados en la lista.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 19 3 Clase 6.1. Roles Equipo o Team d) En la reunión de planificación de la iteración, decide cómo va a realizar su trabajo. e) Selecciona los requisitos que pueden completar en cada iteración, realizando al cliente las preguntas necesarias. f) Identifica todas las tareas necesarias para completar cada requisito.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 20 3 Clase 6.1. Roles Equipo o Team g) Durante la iteración, trabaja de manera conjunta para conseguir los objetivos fijados.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 21 3 Clase 6.1. Roles Equipo o Team h) Al finalizar la iteración debe mostrarle al cliente los requisitos completados, y hacer una retrospectiva final para mejorar de forma continua su manera de trabajar.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 22 3 Clase 6.1. Roles Equipo o Team i) El equipo es multidisciplinario: los miembros tienen las habilidades necesarias para poder identificar y ejecutar todas las tareas que permiten proporcionar al cliente los requisitos comprometidos en la iteración.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 23 3 Clase 6.1. Roles Equipo o Team j) Colaboración creativa: se crea una sinergia que permite que el resultado sea más rico al nutrirse de las diferentes experiencias, conocimientos y habilidades de todos.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 24 3 Clase 6.1. Roles Equipo o Team k) Los miembros del equipo deben dedicarse al proyecto a tiempo completo para evitar: -dañar su productividad por cambios de tareas en diferentes proyectos; -interrupciones externas; y así poder mantener el compromiso que adquieren en cada iteración.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 25 3 Clase 6.1. Roles Equipo o Team l) Todos los miembros del equipo trabajan en la misma localización física, para poder maximizar la comunicación. Así se minimizan otros canales de comunicación menos eficientes que hacen que las tareas se transformen en “pasar la pelota” o que hacen perder el tiempo en el establecimiento de la comunicación.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 26 3 Clase 6.1. Roles Equipo o Team m) El equipo debe ser estable durante el proyecto: sus miembros deben cambiar lo mínimo posible para poder aprovechar lo que les costó construir su organización para el trabajo y sus relaciones interpersonales.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 27 3 Clase 6.2. Herramientas Principales herramientas que propone Scrum: -Lista de requisitos priorizada (Product Backlog) -Lista de tareas de la iteración (Sprint Backlog) -Gráfico de trabajo pendiente (Burndown)

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 28 3 Clase 6.2. Herramientas Gráfico de Trabajo pendiente

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 29 3 Clase 6.2. Herramientas Product Backlog Representa las expectativas del cliente respecto a los objetivos y entregas del proyecto. El cliente es el responsable de crear y gestionar esta lista con la ayuda del facilitador y del equipo, quien proporciona el costo estimado de completar cada requisito.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 30 3 Clase 6.2. Herramientas Product Backlog Para cada requisito se indica el valor que aporta al cliente y el costo estimado de completarlo. La lista está priorizada balanceando ambos valores. VALOR COSTO

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 31 3 Clase 6.2. Herramientas Product Backlog Se indican los puntos en los cuales el cliente desea que se le entreguen los requisitos completados hasta ese momento. Se planifica en función de la velocidad de desarrollo de los equipos. Se consideran los riesgos del proyecto y se incluyen las tareas necesarias para mitigarlos.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 32 3 Clase 6.2. Herramientas Product Backlog Antes de iniciar la primera iteración, el cliente debe tener definida la meta del proyecto y creada la lista de requisitos.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 33 3 Clase 6.2. Herramientas Product Backlog No es necesario que la lista esté completa ni que todos los requisitos tengan gran detalle. Basta con que los más prioritarios estén identificados y con suficiente detalle como para que el equipo comience a trabajar. Los requisitos de iteraciones futuras pueden ser mucho más amplios y generales.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 34 3 Clase 6.2. Herramientas Product Backlog La incertidumbre y complejidad propias de un proyecto hacen conveniente no detallar todos los requisitos hasta que esté por comenzar su desarrollo. Así el esfuerzo de recoger, detallar y desarrollar los requisitos menos prioritarios se reparte en el período de ejecución del proyecto.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 35 3 Clase 6.2. Herramientas Product Backlog Esto produce varias ventajas: a) Se evita caer en una parálisis al inicio del proyecto, de manera que se pueda iniciar antes el desarrollo y el cliente pueda empezar a obtener resultados útiles más rápido.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 36 3 Clase 6.2. Herramientas Product Backlog b) Se evita analizar en detalle requisitos no prioritarios que podrían cambiar durante el transcurso del proyecto, dado que se conocerá mejor cuál ha de ser el resultado a conseguir, o bien porque podrían ser reemplazados por otros.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 37 3 Clase 6.2. Herramientas Product Backlog c) Se puede llegar a un punto del proyecto en el que no valga la pena analizar ni desarrollar los requisitos restantes.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 38 3 Clase 6.2. Herramientas Product Backlog El cliente y el equipo tienen que acordar bajo qué condiciones un requisito se considerará “completado” Es decir, qué tiene que hacer el equipo para que el cliente considere que el producto está preparado para ser entregado al finalizar cada iteración.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 39 3 Clase 6.2. Herramientas Sprint Backlog Lista de tareas que el equipo elabora como plan para completar los requisitos seleccionados para la iteración y que se compromete a demostrar al cliente al finalizar la iteración, en forma de incremento de producto preparado para ser entregado.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 40 3 Clase 6.2. Herramientas Sprint Backlog Permite identificar las tareas donde el equipo está teniendo problemas y no avanza, para poder tomar decisiones al respecto.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 41 3 Clase 6.2. Herramientas Sprint Backlog Contiene las tareas, el esfuerzo pendiente para finalizarlas y la auto-asignación que han hecho los miembros del equipo. El progreso de la iteración y su velocidad con respecto a tareas y horas pendientes se muestra mediante un gráfico de trabajo pendiente llamado “burndown”.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 42 3 Clase 6.2. Herramientas Gráfico Burndown Muestra la velocidad a la que se están completando los requisitos. Permite predecir si el equipo podrá completar el trabajo en el tiempo estimado o no.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 43 3 Clase 6.2. Herramientas Gráfico Burndown

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 44 3 Clase 6.2. Herramientas Gráfico Burndown

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 45 3 Clase 6.2. Herramientas Gráfico Burndown

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 46 3 Clase 6.2. Herramientas Gráfico Burndown En un simple vistazo muestra la evolución del equipo con respecto a los requisitos del usuario: -Cuanto trabajo ya se hizo; -Cuanto trabajo queda por hacer; -Velocidad del equipo; -Fecha de finalización esperada.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 47 3 Clase 6.2. Herramientas Gráfico Burndown Permite realizar diversas simulaciones, por ejemplo: -Ver qué ocurriría con las fechas de entrega si se agregan requisitos; -Ver cómo se avanzaría si se quitaran requisitos o si se agregaran equipos.

Metodologías de Programación II UNAJ - Instituto de Ingeniería y Agronomía - Ingeniería en Informática 48 3 Clase Bibliografía -Cohn, M. (2010) "Succeeding with agile: software development using Scrum". -Pichler, R. (2010) "Agile product management with Scrum: creating products that customers love". -Rubin, K. (2012) "Essential Scrum: A Practical Guide to the Most Popular Agile Process". -Schwaber, K. / Beedle, M. (2002) "Agile Software Development with Scrum". -Schwaber, K. (2004) "Agile Project Management with Scrum". -Sutherland, J. (2004) "Agile Development: Lessons learned from the first Scrum". -Takeuchi, H. y Nonaka, I. (1986) "The New Product Development Game".