Ingeniería de Software II Segundo Cuatrimestre de 2008

Documentos relacionados
Ingeniería de Software II Primer Cuatrimestre de 2008

4.1.1_Reunión de Planificación de Sprint (Sprint Planning Meeting) 4.1.2_Objetivo del Sprint (Sprint Goal) 4.1.4_Revisión de Sprint (Sprint Review)

SCRUM. Gestión ágil de proyectos

Qué es Scrum? Basado en el texto Explicando Scrum a mi abuela de Jorge Serrano - MVP Visual Developer - Visual Basic

Roles y Responsabilidades en la gestión de proyectos Scrum

Karen Giraldo Escobar Graciela Catalina Soto PROYECTO DE GRADO I

PDSM: PROCESO DE DESARROLLO DE SOFTWARE MIXTO COMBINANDO RUP Y SCRUM. Mariani, María Florencia Okabe, Evangelina

PROYECTO METODOLOGÍA DE TRABAJO. Fecha Autor Versión Cambio. 14/11/2008 Vanesa Dell Acqua 1.0 Documento inicial.

Certified Scrum Developer (CSD), Módulo 3 y Track Completo

Juan Carlos Sanchez Galvis

Universidad ORT Uruguay

Gestión de Equipos de Desarrollo. Max Déboli Director de Desarrollo Lagash MVP Azure

Qué es scrum? scrumshortcuts.com

SCRUM Metodología de trabajo ágil

4 a 8 semanas. Equipos pequeños 5 a 9 miembros. Informal. Cara a cara. En cada entrega el cliente dará su aportación. Sólo documentación básica

BLU Concept PROPUESTA PÚBLICA NACIONAL SCRUM Mexico First

Cómo las metodologías ágiles ayudan a los proyectos de Inteligencia de Negocios

Aplicación de metodologías Ágiles en TI. Elsa Mangione, PMP, PMI-ACP, CSM II Reunión de Miembros Abierta. Mendoza, 2013.

Prototipado Ágil. Mateu Batle Sastre

La Autoridad de Certificación Global para Profesionales de Scrum y Ágil

1 de junio de Andrés Simón Bujaidar Director Alianzas Nacionales MEXICO FIRST Presente. Estimado Andrés:

La Guía de Scrum. La Guía Definitiva de Scrum: Las Reglas del Juego. Octubre de Desarrollado y soportado por Ken Schwaber y Jeff Sutherland

Desarrollo Ágil con SCRUM. Itzcoalt Alvarez M. Joiz.Net

Entrenamos. CSD: Certified Scrum Developer Program

SCRUM. Cómo aumentar la productividad en las mismas horas de trabajo. Serafín Vélez Barrera Universidad de Granada

Scrum. Juan Palacio Bañeres

Gestión de Proyectos con Metodologías Ágiles (Scrum)

Miguel Torres Jaime Pavlich-Mariscal

Guía de preparación. Agile Scrum Master de EXIN

Metodologías Ágiles: Scrum y técnicas de estimación ágil

La Guía de Scrum. La Guía Definitiva de Scrum: Las Reglas del Juego. Julio de Desarrollado y soportado por Ken Schwaber y Jeff Sutherland

Formación en Scrum. Formación preparatoria para la certificación PSM I de Scrum.org. Fernando Sacasa v.febrero2014

Procesos Ágiles de Desarrollo de Software

SCRUM MASTER PRODUCT OWNER


Roles Scrum en Profundidad. ScrumMaster, Product Owner, Team

3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE

Desarrollo ágil en tiempos de crisis. Alejandro Torres Castañeda y Analía Baño Dynkowski Baufest

Desarrollo en Cascada (Waterfall) VS Desarrollo Agile-SCRUM. Por Jesus Demetrio Velázquez Camacho

PROPUESTA PÚBLICA NACIONAL SCRUM

PROPUESTA DE PROYECTO DE DESARROLLO DE PÁGINA WEB PARA GESTIÓN DE PROYECTOS CON METODOLOGÍA SCRUM

El modelo Scrum. NST-0010 Rev. 0.1

La medición funcional de software con SCRUM

DES. Fundamento Institucional. Objetivos. Alcance

Gestión y Desarrollo de Requisitos en Proyectos Software

Ingeniería de Sistemas I

ACADEMIA AGIL PROFESSIONAL SCRUM DEVELOPER

El Gerente de Proyecto. 3: El Gerente de Proyecto. Analogía - Responsabilidades. Liderazgo del Proyecto. Responsabilidades Implícitas

Desarrollo Ágil. Introducción a desarrollo ágil. Periodo: Inicio: Ago 14, 2012 Termino: Nov 27, 2012

UNIVERSIDAD TECNOLOGICA DE HERMOSILLO SCRUM SPRINT #1. Ingenieria de Software I MAESTRO: BERNARDO PRADO DIAZ INTEGRANTES. Jorge Valdano.

Trabajo Práctico Integrador

Parametrización Scrum - Template Confluence

Software. Ingeniería en Sistemas Computacionales

PROPÓSITO... 2 DETERMINANTES PARA UNA BUENA EXPERIENCIA DE USO...

Ingeniería de Software. Procesos. Proyecto de Ingeniería. Metodologías. Metodologías. Metodologías. Metodologías de desarrollo

Modelos de Ciclo de Vida de Desarrollo de Software en el Contexto de la Industria Colombiana de Software

La utilización de Serena Mariner, nos permite priorizar los proyectos basándonos en su valor estratégico para el negocio, hemos reducido nuestro

Los profesores Flipantes

Scrum Testing.

Personal Software Process RUP

Desarrollo Ágil. Introducción a desarrollo ágil. Periodo: Inicio: Ago 14, 2012 Termino: Nov 27, 2012

Hacer Realidad BPM en su Organización ADOPTAR BPM A PARTIR DE UN PROYECTO O NECESIDAD DE AUTOMATIZACIÓN

con Scrum y Kanban Gustavo Quiroz Madueño Open Edge Technologies

Scrum. una descripción. Traducido y revisado por Xavier Quesada Allue, Alan Cyment y Martín Alaimo Marzo 2013

Administración Ágil de. Juan Banda, MSc, CSP

Planificación, Gestión y Desarrollo de Proyectos

Checklist 2ª Clase. Programa de Estrategia en Negocios Digitales Módulo Estrategia de Diseño y Desarrollo de Productos Digitales. Versión 1.

Diplomado en SCRUM Master Certified SMC. Basado en la edición 2013 del SBOK GUIDE

Design Thinking aplicado al Project Management

Guía EMPRESA INTELIGENTE 2.0 para la PYME

Sede Escazú, Plaza Tempo

Desarrollo Ágil. Introducción a desarrollo ágil. Periodo: Inicio: Ago 14, 2012 Termino: Nov 27, 2012

PROPUESTA DE CAPACITACION

0. Introducción Antecedentes

Ingeniería de Software

La evaluación del desempeño del personal es un punto muy delicado, ya que debe ser objetiva y justa para no generar conflictos

Microsoft Dynamics Sure Step Fundamentos

Introducción a la implementación de Scrum

Administración por Procesos contra Funciones

ANÁLISIS Y DISEÑO DE SISTEMAS DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN

10. Project Communications Management

Gestión de Proyectos de desarrollo de software. Ing. Rafael Bentancur Universidad ORT Uruguay

Introducción a la Gestión de Proyectos TI Ágiles con SCRUM

CAPITULO I. Introducción. En la actualidad, las empresas están tomando un papel activo en cuanto al uso de sistemas y

MANUFACTURA ESBELTA TPM MANTENIMIENTO PRODUCTIVO TOTAL

Metodologías Ágiles Desde una Perspectiva de Project Management. Fernando Contreras Velásquez Project Management & Engineering Services.

TALLER: ISO Ocean. Alejandro Tonatiuh López Vergara Geog. Miriam Ruiz Velasco

M.T.I. Arturo López Saldiña

Procesos Críticos en el Desarrollo de Software

GERENCIA DE INTEGRACIÓN

Certified Scrum Master

Planificación en Team Foundation Server 2010

Control de prestaciones de un proyecto

Análisis y Diseño de Aplicaciones

SÍNTESIS Y PERSPECTIVAS

Febrero Scrum: Desarrollado y mantenido por Ken Schwaber y Jeff Sutherland

Taller SCRUM MASTER 16 HORAS. Introducción SCRUM

Ingeniería de Software

MEMORIA DE LAS ACTIVIDADES DESARROLLADAS PROYECTOS DE INNOVACIÓN EDUCATIVA CURSO 2014/2015

ACADEMIA AGIL PROFESSIONAL SCRUM. Jr. Huamachuco 1408 Of Jesús Maria Tel: +51(1) (1)

Transcripción:

Ingeniería de Software II Segundo Cuatrimestre de 2008 Clase 14: Introducción a los métodos ágiles y Scrum Buenos Aires, 9 de Octubre de 2008

Scrum: Qué es? Qué es un scrum? Un scrum es un agrupamiento (formación fija) en Rugby. 8 integrantes de cada equipo, llamados delanteros, se enfrentan agrupados para tratar de obtener la pelota, que es introducida por uno de los equipos en el centro de la formación. Pero qué tiene que ver con la Ingeniería de Software? 2

Scrum en el contexto de los métodos ágiles Los métodos ágiles son un subconjunto de los métodos de desarrollo de software iterativos e incrementales Están basados en el Agile Manifesto : Estamos descubriendo mejores formas de desarrollar software, haciéndolo y ayudando a otros a hacerlo. A través de este trabajo hemos llegado a valorar: Individuos y sus interacciones sobre las herramientas y los procesos Construir software sobre documentación completa La colaboración con el cliente sobre la negociación de contratos Responder ante el cambio sobre el seguimiento del plan 3

Los tres principios básicos Visibilidad: Los aspectos del proceso que pueden afectar el resultado deben ser visibles. El objetivo es evitar las sorpresas Inspección: Las variaciones de los procesos deben ser inspeccionados con la suficiente frecuencia tal que las variaciones inaceptables puedan ser detectadas Adaptación: Si el resultado de la inspección informa que hay aspectos del proceso que exceden los límites aceptables, el inspector debe ajustar el proceso o aquello que está siendo procesado. El ajuste debe hacerse los más rápido posible para minimizar los desvíos 4

Más características de los métodos ágiles Empíricas (confían en la observación y la experiencia) Livianas Adaptativas Emergentes (cuidado con esto ) Rápidas, pero nunca apuradas Exponen pérdidas (wastefulness) Centradas en el cliente Empujan las decisiones hacia los niveles más bajos Favorecen la confianza, la honestidad y el coraje Favorecen la auto-organización Time Boxed 5

Scrum vs. Metodología Tradicional Scrum asume: Requerimientos cambiarán durante el proyecto. Scrum toma el cambio como una forma de entregar al final del desarrollo algo más cercano a la verdadera necesidad del Cliente. (Tunnel Vision) Sin embargo, Scrum tiene mecanismos de control y estructura. 6

Scrum según sus autores Un framework simple que puede ser entendido e implementado en pocos días Una forma de manejar problemas complejos Un entorno para soportar la auto-organización y la creatividad Un esfuerzo colaborativo que involucra a desarrolladores y clientes en un diálogo continuo Scrum is not a methodology it is a pathway -- Ken Schwaber 7

Requerimientos Scrum: Tipos de Proyectos Lejos de algún acuerdo Caos Complejo Con acuerdo Simple Con certeza Con incertidumbre Tecnología 8

Scrum: Historia HISTORIA Jeff Sutherland Scrums en Easel Corp en 1993 No solo para proyectos triviales Ken Schwaber Definición Inicial de Scrum en OOPSLA 96 con Sutherland Actualmente utilizado en diversas empresas de todo el mundo, principalmente en Estados Unidos 9

Esquema Scrum para el Desarrollo Daily Scrum Meeting 24 horas Estimation Meeting 30 días Sprint Backlog Product Backlog Incremento del Producto 10

Scrum - Roles ScrumMaster Facilitador del equipo. Remueve impedimentos Líder, pero no demandante Responsable de implementar y administrar el proceso Scrum Product Owner Team Representa los intereses del cliente. Es el responsable de poner los requerimientos en términos claros. Es el responsable de maximizar el Retorno de Inversión Prioriza los requerimientos con mayor valor para el negocio. Resume el input de los usuarios, stakeholders y otras partes interesadas en una vista única de los requerimientos del sistema, con prioridades definidas Puede cambiar funcionalidades y prioridades cada 30 días Acepta o rechaza el trabajo hecho por el equipo Pilares fundamentales: Comunicación y Cooperación 7 +/- 2 miembros Máximo 11 personas Compuesto por Desarrolladores, Funcionales y Testers (skills, no roles) Auto-organizado y auto-administrado Estima y define los alcances y límites de cada iteración 11

Backlog Product Backlog: todo lo que se sabe que quiere incluirse en el producto final Sprint Backlog: subconjunto del Product Backlog seleccionado para hacerse en un Sprint Se descomponen en tareas Las tareas se estiman en horas 1-16 Los miembros se postulan a las tareas La estimación se actualiza día a día. 12

Scrum: Product Backlog PRIORIDAD DESCRIPCIÓN ESTIMACIÓN HSĖSTIMADO POR 13

Scrum: SPRINT Backlog RESPONSABLE DESCRIPCIÓN 14

Reuniones de Scrum Se hacen cuatro tipos de reuniones: Sprint planning Sprint Review Daily Standup Sprint Retrospective 15

Reuniones: Sprint Planning Meeting Contexto y Características Antes del Sprint Product Owner define funcionalidades El equipo decide qué puede realizar en el sprint Participantes: Product Owner Product Manager Otros Stakeholders Team Management 16

Reuniones: Sprint Planning Meeting Product Backlog Equipo Condición de Negocio Tecnología Estado del Producto Sprint Planning Meeting Objetivo del Sprint Sprint Backlog 17

Estimaciones y Formato del Plan Las estimaciones con Scrum se hacen de manera relativa (por ejemplo de 1 a 5), a través de una especie de piedra, papel y tijera Se busca consenso El plan generado en la reunión tiene sólo dos niveles: stories y tareas Se usa un taskboard, donde las tareas están divididas en Planificadas, En curso, Terminadas 18

Reuniones: Daily Scrum o Daily Standup Contexto y Características Diariamente 15-minutos De pie (recomendación) No se pretende resolver problemas Cada integrante del equipo contesta Qué hice ayer? Qué voy a hacer hoy? Qué obstáculos hay en mi camino? Participantes: Pollitos y cerditos están invitados Solo los cerditos pueden hablar!!! 19

Reuniones: Daily Scrum o Daily Standup Por qué diariamente? Recordemos Cómo puede un proyecto retrasarse un año? Un día por vez Fred Brooks, The Mythical Man-Month. Se pueden reemplazar las reuniones de Scrum por reportes vía email? NO!!! Todo el equipo debe ver la big picture cada día. Crear la responsabilidad de hacer lo que uno dice que va a hacer. 20

Reuniones: Daily Scrum o Daily Standup Actualización Sprint Burndown Chart Puede ser Story burndown o Task burndown eje Y 21

Reuniones: Sprint Review Contexto y Características Cada 30 días aprox. 2 hs. de preparación No mas de 4 horas Demo In-House Demo resultado producido Participantes: Clientes Management Product Owner Otros involucrados 22

Reuniones: Sprint Retrospective Al final de cada sprint Qué funcionó bien Qué puede mejorarse Acciones a tomar para mejorar Deben hacerse sistemáticamente 23

SCRUM - Productos Product Backlog Lista priorizada de requerimientos del producto. Pueden ser requerimientos funcionales, no funcionales, o issues Puede o no tener una estimación asociada Tiene un business value asociado Sprint Backlog Items Items: Lista de requerimientos extraídos del Product backlog que se implementarán durante el sprint. Sprint Backlog Tasks Tasks: Lista de tareas. Define el trabajo del equipo para el Sprint. Las tareas en la lista son las que se desprenden de los requerimientos definidos para ese sprint. Son definidas por el equipo, no por el Scrum Master. Impediment List Es una lista de tareas que usa el Scrum Master para hacer seguimiento de los impedimentos que deben ser resueltos. Cualquier cosa alrededor de un proyecto de Scrum que afecta su productividad y su calidad. Es responsabilidad del ScrumMaster hacer el seguimiento de las impedimentos presentes en esta lista 24

Especificación en Scrum Epics Grupos de funcionalidad Casos de Uso conceptuales de muy alto nivel Son independientes del product / sprint backlog Sirven para dar una visión de la funcionalidad de la aplicación User Stories: Breves descripciones de funcionalidad descriptas desde la perspectiva del usuario, que tienen valor para el usuario (business value) Interpretan los Epics (Casos de uso bajados a detalle) Tienen su respectivo Epic Asocidado Tienen la forma: Requerimiento + Casos de aceptación Template: As a User, I Want X, So That I can Y + acceptance Cases No deben requerir un esfuerzo mayor a 5 días Forman parte del Product / Sprint Backlog 25

Especificación en Scrum Acceptance Cases Las expectativas de los clientes son documentadas como criterios de aceptación. El criterio de aceptación debe ser más específico que la descripción de la user story propiamente dicha. Aportan información adicional a la story, la cual ayuda a los desarrolladores a saber cuando una user story está cumplida. Los criterios de aceptación deben ser escritos de la forma más simple posible, para que las asunciones y expectativas de los clientes sean tempranamente comunicadas a los integrantes del equipo. El criterio debe ser conceptual y no debe incluir temas relacionados con validaciones, restricciones, etc. Estrucutura estándar: El <Usuario que utilizará la funcionalidad> Puede <realizar una acción> Y Obtener <resultado esperado> 26

Ejemplo de Story: User Story Como un: Doctor a cargo de una emergencia Quiero: poder ver un mapa con los lugares de derivación candidatos De tal forma que: pueda saber a dónde llevar los afectados por la emergencia rápidamente, minimizando el tiempo de traslado de los accidentados Casos de Aceptación Existe una opción de ver mapa El mapa muestra la posición actual El mapa muestra los centros de derivación con una indicación de su tipo: Hospitales municipales: rojo Clínicas: azul El mapa muestra el camino teniendo en cuenta la dirección de las calles Etc! 27

Scrums de Scrum SCRUM diario de SCRUMs Reuniones semanales: Qué han hecho los equipos la semana pasada? Qué harán esta semana? Cuáles son sus impedimentos? 28

Dónde dicen los de Scrum que no hay que usar Scrum? SCRUM NO es apropiado para: Equipos muy grandes Estructuras complejas de equipos Equipos distribuidos geográficamente (depende) Aplicaciones críticas (depende) Gente con poca experiencia 29

Más información http://www.mountaingoatsoftware.com/scrum http://www.controlchaos.com scrumdevelopment@yahoogroups.com Agile Software Development with Scrum Ken Schwaber and Mike Beedle Agile Project Management with Scrum Ken Schwaber and Mike Beedle http://ww.agilealliance.com http://www.controlchaos.com/certifiiedscrum 30