Está en la página 1de 70

SCRUM - Estimaciones y

seguimiento
Presentación

Formador
Rodolfo Ortega
Máster En Desarrollo De Aplicaciones Móviles
Ingeniero Electrónico
CTO
Full Stack Developer
Docente
Introducción al curso
• Fecha de Inicio: 30 de Abril ( Autorizado por MINTIC)
• Fecha de Finalización: 30 de Diciembre de 2021
Fechas

• 4 ciclos de 7 semanas
• 1 Semana para recuperar notas y consolidar calificaciones entre ciclos
• Se asigna un máximo de 4500 Beneficiarios
Ciclos • Grupos de un máximo de 50 personas
• 90 grupos

• 200 Horas totales en las 7 semanas


• 50 Horas de sesiones con el formador
• 120 Horas de trabajo individual
Intensidad • 25 Horas de formación en lectura de ingles
horaria • 5 Horas de Coaching
Introducción al curso

Ciclo 1 CICLO 4A
• Desarrollo de
aplicaciones web
(200 horas)

CICLO 1 CICLO 2 CICLO 3


• Fundamentos de • Programación básica • Desarrollo de Software
programación (200 (200 horas) (200 horas)
horas)
CICLO 4B
• Desarrollo de
aplicaciones móviles
(200 horas)
Introducción al curso

Desarrollo de la formación

• Un proyecto dividido en 5 etapas (sprints) para construir en un equipo de 5 integrantes

• Reuniones diarias del equipo de trabajo para sincronizar de manera ágil el trabajo
Introducción al curso
Perfil del Egresado del primer ciclo
• Participar en un equipo de desarrollo, para construir una aplicación móvil, utilizando una
aproximación ágil
• Profundizar en una metodología ágil de desarrollo, incorporando nuevos elementos
adicionales a los vistos en el ciclo anterior e incluir algunos aspectos básicos de la
automatización del proceso de construcción de software (DevOps)
• Hacer el diseño básico de una interfaz de usuario para una aplicación móvil, siguiendo los
lineamentos de una buena experiencia de usuario (UX)
• Desarrollar una aplicación móvil usando alguna de las plataformas disponibles en el mercado
para iOS o Android.
• Publicar una aplicación móvil en una tienda
• Desarrollar la etapa de pruebas de una aplicación móvil
• Usar distintos tipos de librerías en la construcción de aplicaciones móviles, en particular las
librerías de manejo de geolocalización.
• Conectar una aplicación móvil con un servidor a través de una API REST (o GraphQL) o usando
una base de datos en la nube como Firebase.
Introducción al curso
Introducción al curso

Generalidades
https://misiontic2022.unab.edu.co/pluginfile.php/49640/m
od_resource/content/10/generalidades.html
UNIDAD 1

METODOLOGÍAS DE DESARROLLO DE SOFTWARE

Seleccionar la forma de trabajo en un proyecto de software de acuerdo con


las capacidades de la organización
Metodologías

¿Qué es un Método?

Es un conjunto de herramientas, técnicas y


procesos que facilitan la obtención de un
objetivo, las cuales utilizadas mediante las
técnicas correctas, permiten la ejecución
de procesos que nos llevarán a cumplir
con las metas propuestas.
Metodologías

¿Qué es una Metodología?

En el desarrollo de software, una


metodología hace cierto énfasis al entorno
en el cual se plantea y estructura el
desarrollo de un sistema.

“No todos los sistemas de la información, son


compatibles con todas las metodologías, pues
el ciclo de vida del software puede ser
variable. “
Metodologías
¿En qué consisten?

Consiste principalmente en hacer uso de diversas herramientas, técnicas,


métodos y modelos para el desarrollo.

Tienen la necesidad de venir documentadas, para que los programadores


que estarán dentro de la planeación del proyecto, comprendan
perfectamente la metodología y en algunos casos el ciclo de vida del
software que se pretende seguir.
Metodologías
Ciclos de vida de desarrollo del software

El método de ciclo de vida para el desarrollo de sistemas es el conjunto de


actividades que los analistas, diseñadores y usuarios realizan para
desarrollar e implantar un sistema de información. El método del ciclo de
vida para el desarrollo de sistemas consta de 6 fases:
Metodologías
Metodologías
Diseño: El diseño de un sistema de información produce los detalles que
establecen la forma en la que el sistema cumplirá con los requerimientos
identificados durante la fase de análisis. Los especialistas en sistemas se
refieren, con frecuencia, a esta etapa como diseño lógico en contraste con
la del desarrollo del software, a la que denominan diseño físico.

Desarrollo: Los encargados de desarrollar software pueden instalar


software comprobando a terceros o escribir programas diseñados a la
medida del solicitante. La elección depende del costo de cada alternativa,
del tiempo disponible para escribir el software y de la disponibilidad de los
programadores.
Metodologías
Pruebas del sistema: Durante la prueba de sistemas, el sistema se emplea de
manera experimental para asegurarse de que el software no tenga fallas, es decir,
que funciona de acuerdo con las especificaciones y en la forma en que los usuarios
esperan que lo haga.

Implementación y evaluación: La implementación es el proceso de verificar e


instalar nuevo equipo, entrenar a los usuarios, instalar la aplicación y construir
todos los archivos de datos necesarios para utilizarla. Una vez instaladas, las
aplicaciones se emplean durante muchos años. Sin embargo, las organizaciones y
los usuarios cambian con el paso del tiempo, incluso el ambiente es diferente con
el paso de las semanas y los meses.

Mantenimiento: Es el proceso de mejora y optimización del software después de


su entrega al usuario final (es decir; revisión del programa), así como también
corrección y prevención de los defectos, para su aceptación.
Metodologías
Ventajas:

• Es un modelo sencillo y disciplinado


• Es fácil aprender a utilizarlo y comprender su funcionamiento
• Está dirigido por los tipos de documentos y resultados que deben
obtenerse al final de cada etapa
• Ha sido muy usado y, por tanto, está ampliamente contrastado
• Ayuda a detectar errores en las primeras etapas a bajo costo
• Ayuda a minimizar los gastos de planificación, pues se realiza sin problemas
Metodologías
Desventajas:

• Los proyectos raramente siguen el proceso lineal tal como se definía


originalmente el ciclo de vida
• Es difícil que el cliente exponga explícitamente todos los requisitos al
principio
• El cliente debe tener paciencia pues obtendrá el producto al final del ciclo
de vida
• No refleja exactamente cómo se programa realmente el sistema, en el que
suele haber un gran componente iterativo
• Puede resultar complicado regresar a etapas anteriores (ya acabadas) para
realizar correcciones
• El producto final obtenido puede que no refleje todos los requisitos del
usuario
Metodologías

Tipos de metodologías tradicionales

• Método en cascada: Framework (entorno o marco de trabajo) lineal.


• Método de Prototipos
• Modelo Incremental o Iterativo y Creciente
• Modelo en Espiral
• RAD: Desarrollo Rápido de Aplicaciones (Rapid Application
Development)
Metodologías

Metodología en cascada

El estilo del modelo en cascada,


es que no podrás avanzar a la
siguiente fase, si la anterior no
se encuentra totalmente
terminada.
Metodologías

Fases de desarrollo de software

• Análisis de Requisitos
• Diseño del Sistema
• Diseño del Programa
• Codificación
• Ejecución de Pruebas
• Verificación
• Mantenimiento
Metodologías

¿Cuáles son los Principios básicos del modelo de cascada?

• Uno de sus principios es que cada una de las fases elaboradas, se


encuentre documentada perfectamente, de este modo, si el desarrollo
queda suspendido en alguna fase, cualquier usuario que quiera continuar
con el proyecto lo podrá hacer leyendo la documentación.

• es muy común encontrar fechas de objetivos, tiempos o presupuestos


para determinadas fases.
Metodologías

Método de Prototipos

Consiste básicamente en que en base a los


requerimientos y necesidades que tiene el
cliente, se realiza de forma rápida un
prototipo, este no vendrá completo ni
mucho menos terminado, pero si permitirá
contar con las bases necesarias para que
cualquier programador pueda seguir
trabajando en el hasta llegar al código final.
Fases de desarrollo de software

• Planeación
• Modelado
• Elaboración del Prototipo
• Desarrollo
• Entrega y Retroalimentación
• Comunicación con el Cliente
• Entrega del Producto Final
Metodologías
¿Cuáles son los Principios básicos del método de prototipos?

• Uno de sus principios es que con el método de prototipos el proyecto se


va dividiendo en partes cada ves mas pequeñas, para evitar el peligro
ante los riesgos frente a los que estamos expuestos.

• el cliente final se involucra mucho más en el proyecto que con otras


metodologías, haciendo de esta forma que el producto final llegue
rápidamente aunque con un poco más de presión en el proceso. La
ventaja es que conforme se van haciendo prototipos pequeños, poco a
poco se va llegando al producto final.
Metodologías
Modelo Incremental o Iterativo y Creciente

Es muy utilizada, pues su comodidad de desarrollo permite que te obtenga


un producto final mucho más completo y exitoso. Se trata especialmente de
la combinación de los modelos lineal e iterativo o bien, modelo de cascada y
prototipos.

Básicamente consiste en completar varias iteraciones de lo que es el modelo


de cascada, pero sin completar ninguna, haciendo iteraciones lo que se hace
es crear una evolución en el producto, permitiendo que se agreguen nuevas
especificaciones, funcionalidades, opciones, funciones y lo que el usuario
requiera después de cada iteración.
Metodologías

Fases de desarrollo de software

• Inicialización
• Periodos de Iteración
• Lista de Control
Metodologías
¿Cuáles son los Principios básicos del método de Incremental?

• utilizar una serie de mini modelos de desarrollo de software en cascada,


segmentando requerimientos y permitiendo que el usuario vaya de la
mano con el proyecto durante la realización.

• también se pueden agregar algunas fases en cada iteración, pero su


objetivo es completar cada fase, para que esta se vaya complementando
poco a poco y no se genere un desarrollo tedioso y cansado que puede
alargar la duración del proyecto.

• cada iteración generará un prototipo cada vez más evolucionado.


Metodologías
Modelo Espiral

Es una combinación entre el modelo lineal y el modelo iterativo, sin


embargo a este sistema lo que debemos añadirle es la gestión de riesgos.

consiste en ciertas fases que se van realizando en modo de espiral, los


procesos no son obligatorios y no llevan precisamente el orden establecido.
Es un modelo evolutivo, que conforme avancen los ciclos, irá incrementando
el nivel de código fuente desarrollado, un incremento en la gestión de
riesgos y por supuesto un incremento en los tiempos de ejecución y
planificación del sistema.
Metodologías
Fases de desarrollo de software

• Determinar Objetivo
• Análisis de Riesgo
• Desarrollar, Validar y Probar
• Planificación
Metodologías
¿Cuáles son los Principios básicos del método de espiral?

• en el modelo de espiral, toda la atención está enfocada hacia el análisis


de riesgos, pues el objetivo primario será reducir los riesgos que se vayan
generando, de otra forma el sistema no llegará a ser seguro jamás.

• los interesados deben estar involucrados prácticamente en cada vuelta


que se de al espiral, para crear lo que son los requisitos antes de realizar
una vuelta más y al final en la fase de planificación, se determinan los
logros obtenidos, el avance y lo que se esperará de una siguiente vuelta.
SCRUM
METODOLOGÍAS ÁGILES

En ocasiones se tiene que gestionar proyectos donde el cliente no tiene


claro todos los requisitos al inicio del mismo, o bien cambia de opinión
durante el desarrollo del proyecto. Estos hechos suelen provocar una
serie de cambios que no estaban previstos y que impactan de forma
negativa en la duración del proyecto, su alcance, presupuesto y a las
expectativas del cliente. Para gestionar este tipo de proyectos
surgieron las metodología ágiles, que a diferencia de la gestión
tradicional de los proyectos, no necesitan definir al principio de los
proyectos la totalidad del alcance.
SCRUM
Ser ágil es tener la capacidad de crear y responder al cambio para
obtener beneficios en un ambiente de negocio cambiante. Significa
ser flexible, adaptarse al cambio. La tecnología cambia constantemente
y los beneficios de las empresas se están reduciendo por la alta
competencia, además se debe satisfacer a clientes que quieren cada vez
resultados más rápidos y efectivos. Debido a esto se usa un método de
gestión de proyectos que se adapte a estos nuevos requisitos del
mercado con rapidez y flexibilidad, y donde los métodos tradicionales
de gestión se han demostrado ineficientes a la hora de gestionarlos.
SCRUM
Las metodologías ágiles son un conjunto de tareas y procedimientos
dirigidos a la gestión de proyectos. Son aquellos métodos de
desarrollo en los cuales tanto las necesidades como las soluciones a
estas evolucionan con el pasar del tiempo, a través del trabajo en
equipo de grupos multidisciplinarios que se caracterizan por tener las
siguientes cualidades:

• Desarrollo evolutivo y flexible.


• Autonomía de los equipos.
• Planificación
• Comunicación
SCRUM
Las metodologías ágiles permiten adaptar la forma de trabajo a las
condiciones del proyecto, consiguiendo flexibilidad e inmediatez en la
respuesta para amoldar el proyecto y su desarrollo a las circunstancias
específicas del entorno.

En esencia, las empresas que apuestan por esta metodología consiguen


gestionar sus proyectos de forma flexible, autónoma y eficaz
reduciendo los costes e incrementando su productividad. Es decir
optimiza tiempos y aumentar la eficiencia de los procedimientos.
SCRUM
Existen diferentes Metodologías ágiles, de las cuales las alternativas
más utilizadas son: scrum, programación extrema (XP), kanban y Lean.
Todas las metodologías ágiles cumplen con el Manifiesto ágil, el cual se
encuentra compuesto por doce principios agrupado en cuatro valores
fundamentales. En febrero del 2001, un grupo de 17 gurús de la
informática, desarrolladores de software y administradores, se
reunieron para discutir los métodos de desarrollo de software ligero. De
estas reuniones y debates surgieron una serie de principios que se
plasmaron en un manifiesto y que estableció las bases que debe cumplir
cualquier método ágil.
SCRUM
Valores fundamentales

1. Individuos e interacciones sobre procesos y herramientas:

Aunque los procesos y las herramientas ayudan a terminar con éxito un


proyecto, son las personas quienes asumen, participan e implementan
un proyecto y determinan cuáles procesos y herramientas utilizar. Por lo
tanto, en cualquier proyecto ágil el énfasis debe estar en las personas y
en sus interacciones, en vez de los complicados procesos y
herramientas.
SCRUM

2. Software funcionando sobre documentación extensiva:

Aunque la documentación es necesaria y útil para cualquier proyecto,


muchos equipos se centran en la recopilación y el registro de
descripciones cualitativas y cuantitativas de los entregables, cuando el
valor real que se le entrega al cliente es en forma de un software
funcional. Por lo tanto, en vez de la documentación detallada, el
enfoque ágil está en la entrega de un software de buen funcionamiento
en incrementos a lo largo del ciclo de vida del producto.
SCRUM

3. Colaboración con el cliente sobre negociación contractual:

Tradicionalmente a los clientes se les ha visto como participantes


externos, involucrados principalmente al inicio y al final del ciclo de vida
del producto, y cuya relación se basaba en el contrato y su
cumplimiento. Las metodologías ágiles creen en un enfoque de valor
compartido, en el cual los clientes se consideran colaboradores. El
equipo de desarrollo y el cliente trabajan unidos para evolucionar y
desarrollar el producto.
SCRUM

4. Responder ante el cambio sobre seguir un plan:

En el mercado actual, donde los requerimientos del cliente, las


tecnologías disponibles y los patrones empresariales cambian
constantemente, es fundamental abordar el desarrollo de productos de
una forma adaptativa que permita la incorporación de cambios y rápidos
ciclos de vida de desarrollo de producto, en vez de enfatizar el
seguimiento de planes formados probablemente con información
obsoleta.
SCRUM
Principios del Manifiesto Ágil

1. Nuestra mayor prioridad es satisfacer al cliente mediante la entrega


temprana y continua de software con valor.

2. Aceptamos que los requisitos cambien, incluso en etapas tardías del


desarrollo. Los procesos Ágiles aprovechan el cambio para proporcionar
ventaja competitiva al cliente.

3. Entregamos software funcional frecuentemente, entre dos semanas y dos


meses, con preferencia al periodo de tiempo más corto posible.
SCRUM
4. Los responsables de negocio y los desarrolladores trabajamos juntos
de forma cotidiana durante todo el proyecto.

5. Los proyectos se desarrollan en torno a individuos motivados. Hay


que darles el entorno y el apoyo que necesitan, y confiarles la
ejecución del trabajo.

6. El método más eficiente y efectivo de comunicar información al


equipo de desarrollo y entre sus miembros es la conversación cara a
cara.
SCRUM
7. El software funcionando es la medida principal de progreso.

8. Los procesos Ágiles promueven el desarrollo sostenible. Los


promotores, desarrolladores y usuarios debemos ser capaces de
mantener un ritmo constante de forma indefinida.

9. La atención continua a la excelencia técnica y al buen diseño mejora


la Agilidad.
SCRUM

10. La simplicidad, o el arte de maximizar la cantidad de trabajo no


realizado, es esencial.

11. Las mejores arquitecturas, requisitos y diseños emergen de equipos


auto-organizados.

12. A intervalos regulares el equipo reflexiona sobre cómo ser más


efectivo para a continuación ajustar y perfeccionar su
comportamiento en consecuencia.
SCRUM
VENTAJAS

Mejoran la satisfacción del cliente dado que se involucrará y comprometerá


a lo largo de todo el proyecto en cada etapa, para esto se informará al cliente
de los logros y progresos del mismo, con la visión de involucrarlo directamente
para sumar su experiencia y conocimiento, y así, optimizar las características
del producto final obteniendo en todo momento una visión completa de su
estado.

Mejora de la motivación e implicación del equipo de desarrollo. Las


metodologías ágiles permiten a todos los miembros del equipo conocer el
estado del proyecto en cualquier momento, así, los compromisos son
negociados y aceptados por todos los miembros del equipo.
SCRUM
Permite ahorrar tiempo y costes. El desarrollo ágil trabaja de un modo
más eficiente y rápido, y con ello, se cumple de forma estricta el
presupuesto y los plazos pactados dentro de un proyecto.

Mayor velocidad y eficiencia. Una de las ventajas de su aplicación es


que se trabaja a través de entregas parciales del producto, de este
modo, es posible entregar en el menor intervalo de tiempo posible una
versión mucho más funcional del producto.
SCRUM
Permite eliminar cualquier característica innecesaria del producto
gracias a las entregas parciales (centradas en entregar en primer lugar
aquellas funcionalidades que aportan valor) y a la implicación del
cliente.

Mejorar la calidad del producto. La continua interacción entre los


desarrolladores y los clientes tiene como objetivo asegurar que el
producto final sea exactamente lo que el cliente busca y necesita. Con
este enfoque es posible abrazar la excelencia tecnológica obteniendo
así un producto tecnológicamente superior.
SCRUM

Alerta de forma rápida tanto de errores o problemas que puedan


sucederse a lo largo del proyecto. Es posible dar respuesta a todos
aquellos problemas que puedan darse desde el inicio, con lo que
mejoramos en costes y entrega.

Permiten rentabilizar nuestras inversiones gracias a la realización de


entregas tempranas el cliente, de esta manera tendrá rápido acceso a
aquellas funcionalidades que aportan valor acelerando el retorno de la
inversión.
SCRUM
Metodología de Desarrollo Scrum

Es un marco de trabajo de procesos ágiles que trabaja con el ciclo de


vida iterativo e incremental, donde se va liberando el producto por
pares de forma periódica, aplicando las buenas prácticas de trabajo
colaborativo (en equipo), facilitando el hallazgo de soluciones óptimas a
los problemas que pueden ir surgiendo en el proceso de desarrollo del
proyecto. Se caracteriza por ser la metodología del caos que se basa en
una estructura de desarrollo incremental, cualquier ciclo de desarrollo
del producto y/o servicio se desgrana en pequeños proyectos divididos
en distintas etapas: análisis, desarrollo y testing. En la etapa de
desarrollo encontramos lo que se conoce como interacciones del
proceso o Sprint, es decir, entregas regulares y parciales del producto
final.
SCRUM
Es la metodología ágil más utilizada y se caracteriza por dejar atrás la
fase de planificación y posterior ejecución del producto para dar lugar al
desarrollo incremental. SCRUM se centra en conocer a detalle a las
personas que forman parte de un equipo auto organizado en vez de
invertir tiempo investigando la calidad de los procesos empleados, es
así cómo se garantiza la calidad del resultado. Debido a que respalda la
teoría de que todos los procesos tienden a ser caóticos naturalmente se
le llama la metodología del caos. Una vez que acepta su naturaleza,
SCRUM propone una estrategia para gestionar el caos y no eliminarlo
por completo.
SCRUM
Los sprint tienen una prioridad previamente establecida que nace según
el beneficio que aportan al cliente, minimizando los riesgos que pueden
surgir de desarrollos extremadamente largos. Scrum está especialmente
indicado para proyectos en entornos complejos, donde se necesitan
obtener resultados de manera inmediata y donde son fundamentales
los siguientes aspectos: la innovación, la productividad, la flexibilidad
y la competitividad. Está basada principalmente en la creación y
asignación de cometidos, escritos en post-its, se implementan en el
sistema, que controla los cambios que se puedan producir en los
mismos: asignado, no asignado, terminado, en proceso, etc.
SCRUM
Características de Scrum

Este desarrollo ágil se basa en dos pilares fundamentales:

• el primero es el ciclo de vida incremental, que consiste en aprender


del proceso anterior para mejorar o incrementar el valor de las
versiones de los productos y, finalmente, entregar uno de alta
calidad.

• el segundo pilar son las revisiones del equipo de desarrolladores y


miembros de la empresa.
SCRUM

Reunirse a conversar y a revisar los avances conseguidos es muy


importante para SCRUM porque consideran que esto va a garantizar una
comunicación transparente entre ambas partes, además que facilitan la
reunión de planificación del sprint, lo cual es algo muy importante en un
equipo ágil. En ésta reunión se decide qué se va a realizar con el sprint,
cuáles son los requisitos del cliente, sus prioridades, etc.
SCRUM
Se debe hacer una reunión diaria con una duración máxima de 15
minutos. En esta reunión se hará una especie de resumen de lo que se
hizo al día anterior, lo que se planea hacer en el presente día y cuáles
son los problemas que se han conseguido en ese período.

Se procede a revisar cada sprint una vez que se ha finalizado con su


desarrollo, es aquí donde se discute qué se logró completar y qué no.
Estas revisiones son muy útiles no sólo por mantener muy informados a
todos, sino que además le da la posibilidad a los implicados en el
proceso de que den su opinión de cada sprint y así se contribuya a la
mejora inmediata de cada proceso para la próxima vez.
SCRUM
Proceso Scrum

En Scrum un proyecto se ejecuta en ciclos temporales cortos y de


duración fija (iteraciones que normalmente son de 2 semanas, aunque
en algunos equipos son de 3 y hasta 4 semanas, límite máximo de
feedback (retroalimentación) de producto real y reflexión). Cada
iteración tiene que proporcionar un resultado completo, un incremento
de producto final que sea susceptible de ser entregado con el mínimo
esfuerzo al cliente cuando lo solicite.
SCRUM
SCRUM

El proceso parte de la lista de objetivos/requisitos priorizada del


producto, que actúa como plan del proyecto. En esta lista el cliente
(Product Owner) prioriza los objetivos balanceando el valor que le
aportan respecto a su coste (que el equipo estima considerando la
Definición de Hecho) y quedan repartidos en iteraciones y entregas. El
Product Owner es la persona responsable de asegurar que el equipo
aporte valor al negocio. Representa las partes interesadas internas y
externas, por lo que debe comprender y apoyar las necesidades de
todos los usuarios en el negocio, así como también las necesidades y el
funcionamiento del Equipo Scrum.

Las actividades que se llevan a cabo en Scrum son las siguientes (los
tiempos indicados son para iteraciones de 2 semanas):
SCRUM
Planificación de la iteración

Un punto fundamental en el proceso que conlleva Scrum son las


revisiones (reuniones), con ellas se fomenta la comunicación y
transparencia del proceso. El primer día de la iteración se realiza la
reunión de planificación de la iteración. Tiene dos partes:

Product Backlog (lista de objetivos) (2 horas): es una lista de las


funcionalidades (requisitos) priorizada del producto o proyecto que el
cliente quiere que tenga el producto, ordenadas de mayor a menor
importancia. El equipo pregunta al cliente las dudas que surgen y
selecciona los requisitos más prioritarios que prevé que podrá
completar en la iteración, de manera que puedan ser entregados si el
cliente lo solicita.
SCRUM
Sprint Backlog (2 horas): es una lista de tareas de la iteración
necesarias para desarrollar los requisitos seleccionados, que consiste en
un índice con ciertos puntos del Product Backlog que deben
completarse en la primera parte del desarrollo. La estimación de
esfuerzo se hace de manera conjunta y los miembros del equipo se
autoasignan las tareas, se autoorganizan para trabajar incluso en parejas
(o grupos mayores) con el fin de compartir conocimiento (creando un
equipo más resiliente) o para resolver juntos objetivos especialmente
complejos.
SCRUM
Sprint Planning Meeting (Reunión de planificación) (2 horas): son
reuniones a lo largo del Sprint Backlog con el cliente y el equipo de
trabajo que sirven para determinar cómo se va a enfocar el proyecto, las
etapas y los plazos. Se debe realizar al inicio de cada sprint, esto con el
objetivo de planificar la cantidad de trabajo a la que el equipo se va a
comprometer a construir durante el próximo sprint.
SCRUM

Ejecución de la iteración

Daily Scrum (Reunión diaria) o Stand-up Meeting (reuniones de pie)


(15 minutos): son reuniones diarias de sincronización que normalmente
se hacen delante de un tablero físico o pizarra (Scrum Taskboard),
donde se realiza una retroalimentación de qué se hizo el día ayer, qué se
hará hoy y cuáles han sido los problemas que han surgido hasta el
momento. El equipo inspecciona el trabajo que el resto está realizando
(dependencias entre tareas, progreso hacia el objetivo de la iteración,
obstáculos que pueden impedir este objetivo). El equipo establece un
plan para las próximas 24 horas.
SCRUM
En la reunión cada miembro del equipo responde a tres preguntas:

¿Qué he hecho desde la última reunión de sincronización para ayudar al


equipo a cumplir su objetivo? ¿Qué hice ayer?

¿Qué voy a hacer a partir de este momento para ayudar al equipo a


cumplir su objetivo? ¿qué voy a hacer hoy?,

¿Qué impedimentos tengo o voy a tener que nos impidan conseguir


nuestro objetivo? ¿qué ayuda necesito?
SCRUM
Durante la iteración el Facilitador (Scrum Master) se encarga de que el
equipo pueda mantener el foco para cumplir con sus objetivos, elimina
los obstáculos que el equipo no puede resolver por sí mismo y protege
al equipo de interrupciones externas que puedan afectar el objetivo de
la iteración o su productividad.

Durante la iteración, el cliente junto con el equipo refinan la lista de


requisitos (para prepararlos para las siguientes iteraciones) y, si es
necesario, cambian o replanifican los objetivos del proyecto (10%-15%
del tiempo de la iteración) con el objetivo de maximizar la utilidad de lo
que se desarrolla y el retorno de inversión.
SCRUM
Inspección y adaptación

El último día de la iteración (una vez finalizado el Sprint) se realiza la


reunión de revisión de la iteración. Tiene dos partes:

Sprint Review (Reunión de revisión) (1,5 horas): el equipo presenta al


cliente los requisitos completados en la iteración, en forma de
incremento de producto preparado para ser entregado con el mínimo
esfuerzo. En función de los resultados mostrados y de los cambios que
haya habido en el contexto del proyecto, el cliente realiza las
adaptaciones necesarias de manera objetiva, ya desde la primera
iteración, replanificando el proyecto. En este punto el equipo de trabajo
debería tener un producto tangible.
SCRUM
Sprint Retrospective (Reunión de retrospectiva) (1,5 horas): una vez
culminado un sprint se efectúa esta reunión, donde se revisa los
objetivos cumplidos y se recapitula qué se ha hecho bien y qué no, el
equipo analiza y reflexiona cómo ha sido su manera de trabajar y cuáles
son los problemas que podrían impedirle progresar adecuadamente, y
saca como resultado posibles acciones de mejora (mejorando de manera
continua su productividad). El Facilitador se encargará de eliminar o
escalar los obstáculos identificados que estén más allá del ámbito de
acción del equipo.
SCRUM
SCRUM
SCRUM
EQUIPO SCRUM

Se cuenta con roles específicos y cada uno de ellos es imprescindible


para que se lleve a cabo el proceso de forma satisfactoria:

Stakeholder: es el cliente (interesado), su responsabilidad radica en


definir los requerimientos (Product Backlog), recibir el producto al final
de cada iteración y proporcionar el feedback correspondiente.

Product Owner: es el intermediario de la comunicación entre el cliente


(stakeholder) y el equipo de desarrollo. Este debe priorizar los
requerimientos según sean las necesidades de la solicitud.
SCRUM
Scrum Master: actúa como facilitador ante todo el equipo de
desarrollo, elimina todos aquellos impedimentos que identifique
durante el proceso, así mismo se encarga de que el equipo siga los
valores y los principios ágiles, las reglas y los procesos de Scrum,
incentivando al grupo de trabajo.

Scrum Team (Equipo de desarrollo): se encarga de desarrollar los casos


de uso definidos en el Product Backlog, es un equipo auto gestionado,
lo que quiere decir que no existe un de jefe de equipo, motivo por el
cual todos los miembros se deben de encargar de realizar las
estimaciones y en base a la velocidad obtenida en las iteraciones irán
construyendo el Sprint Backlog.
Gracias

También podría gustarte