18
UNIVERSIDAD NACIONAL DE TRUJILLO SUB SEDE VALLE JEQUETEPEQUE FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS INGENIERÍA INFORMÁTICA MONOGRAFÍA METODOLOGÍA ÁGIL SCRUM AUTORES: Castañeda Vilchez William Ricardo. Mac Pool Hinostroza Guanilo. Chepén Perú. 2013

Informe trabajo de software

Embed Size (px)

DESCRIPTION

by William, Macpool, informatica 2013

Citation preview

Page 1: Informe trabajo de software

UNIVERSIDAD NACIONAL DE TRUJILLO

SUB SEDE VALLE JEQUETEPEQUE

FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS

INGENIERÍA INFORMÁTICA

MONOGRAFÍA

METODOLOGÍA ÁGIL SCRUM

AUTORES:

Castañeda Vilchez William Ricardo.

Mac Pool Hinostroza Guanilo.

Chepén – Perú.

2013

Page 2: Informe trabajo de software

2

Dedicatoria

El presente trabajo sobre

metodología en ingeniería de

software en el desarrollo

iterativo e incremental

“Scrum”, esta dedicado a

nuestra familia por

innumerables razones algunas

de ellas el constante apoyo que

nos brindan en el día a día.

A nuestro Dios por

protegernos diariamente.

Page 3: Informe trabajo de software

3

Índice Introducción ......................................................................................... ¡Error! Marcador no definido.

MARCO TEORICO .................................................................................. ¡Error! Marcador no definido.

Planteamiento Del Problema: .......................................................... ¡Error! Marcador no definido.

Solución Al Problema: ...................................................................... ¡Error! Marcador no definido.

Desarrollo Clásico vs Ágil .................................................................. ¡Error! Marcador no definido.

Metodología Ágil Scrum: ...................................................................... ¡Error! Marcador no definido.

¿Qué es Scrum? ................................................................................ ¡Error! Marcador no definido.

¿Cómo se origina Scrum? ................................................................. ¡Error! Marcador no definido.

¿Dónde se usa Scrum? ..................................................................... ¡Error! Marcador no definido.

¿Quién usa Scrum? ........................................................................... ¡Error! Marcador no definido.

¿Cómo Funciona Scrum? .................................................................. ¡Error! Marcador no definido.

Las Prácticas: ................................................................................ ¡Error! Marcador no definido.

Revisión De Las Iteraciones: ......................................................... ¡Error! Marcador no definido.

Los Artefactos: .............................................................................. ¡Error! Marcador no definido.

Los Valores: .................................................................................. ¡Error! Marcador no definido.

Caso Practico ........................................................................................ ¡Error! Marcador no definido.

Velocidad Inicial Del Equipo: ............................................................ ¡Error! Marcador no definido.

Reunión De Planificación:................................................................. ¡Error! Marcador no definido.

Historia De Usuario: ......................................................................... ¡Error! Marcador no definido.

Demostración: .................................................................................. ¡Error! Marcador no definido.

Reunión Retrospectiva: ........................................................................ ¡Error! Marcador no definido.

Conclusiones: ....................................................................................... ¡Error! Marcador no definido.

Page 4: Informe trabajo de software

4

Introducción

Scrum es una metodología ágil, incremental basada en iteraciones y revisiones para trabajar

colaborativamente en equipo y obtener el mejor resultado posible de un proyecto. Estás

practicas se apoyan unas a otras y su selección tiene origen en un estudio de la manera de

trabajar de equipos altamente productivos. Es un modo de desarrollo de carácter adaptable

más que predictivo, orientado a las personas más que a los procesos.

En 1986 Hirotaka Takeuchi e Ikujiro Nonaka describierón un tipo de procesos adaptivos,

auto-organizativos y sin elementos innecesarios, llamado por primera vez “Campos

Scrum”. En 1993 Jeff Sutherland en su empresa Easel Corporation usa muchas de las ideas

que llevarían a Scrum luego en 1994 junto a John Scumniotales y Jeff McKenna

concibieron, ejecutaron y documentaron el primer Scrum para desarrollo ágil de software

utilizando el estudio de gestión de equipos de Takeuchi y Nonaka como base. En 1995 Ken

Schwaber presentó la implementación formal de las reglas de Scrum, para software que él

empleaba en el desarrollo de Delphi.

Scrum es usado en empresas que desarrollan proyectos internos, proyecto de precio fijo,

aplicaciones financieras, sistemas empotrados, desarrollo de videos juego y otros. También

es usado en medios de telefonía, software y hardware, internet, banca e inversión, sanidad y

salud, defensa y aeroespacial.

Scrum funciona de la siguiente manera: antes de iniciar cada iteración, el equipo revisa las

tareas pendientes y selecciona la parte que entregará como un incremento de funcionalidad

al finalizar cada iteración (Sprint), utilizando tres componentes los cuales son: Las

practicas, Los artefactos, Los valores.

Page 5: Informe trabajo de software

5

1. MARCO TEORICO

1.1. Planteamiento Del Problema:

En este caso mostraremos una iteración (Sprint) de Scrum para resolver una serie de

tareas para un proyecto Web. El objetivo es tener una toma de contacto con una

aplicación práctica de las metodologías ágiles, se ha ido documentando el día a día

de la iteración.

1.2. Solución Al Problema:

Velocidad Inicial

Se calcula el número puntos ideales de trabajo que es capaz de asumir el

equipo teniendo en cuenta los siguientes parámetros: Duración Del Sprint,

Número De Desarrolladores Del Equipo y Su Disponibilidad, Factor De

Corrección.

Reunión De La Planificación

Se selecciona el trabajo que se hará, preparando al equipo completo. El

Sprint Backlog que detalla el tiempo que tomará hacer el trabajo. Identificar

y comunicar cuánto del trabajo es probable que se realice durante el actual

Sprint.

Reuniones Diarias

El objetivo de esta reunión es facilitar la transferencia de información y la

colaboración entre los miembros del equipo para aumentar su productividad,

al poner de manifiesto puntos que se pueden ayudar unos a otros.

Reunión Retrospectiva

Después de cada Sprint, se lleva a cabo una retrospectiva del Sprint, en la

cual todos los miembros del equipo dejan sus impresiones sobre el Sprint

recién superado. El propósito de la retrospectiva es realizar una mejor

continua del proceso.

Page 6: Informe trabajo de software

6

1.3. Desarrollo Clásico vs Ágil

Modelo Clásico

Modelo empleado para proyectos complejos, de grandes magnitudes, lo cual era

complicado cambiar algún requerimiento del software, además perderíamos tiempo

en efectuar dichos cambios.

Modelo Ágil

Se basa en la adaptación (Adaptabilidad). Se tiene una visión general de lo que se

desea que haga el software, aunque sin especificar el resultado final, es posible un

cambio de requerimiento en cualquier punto de desarrollo, este modelo es

empleado en pequeños proyectos pequeños o medianos.

2. Metodología Ágil Scrum:

2.1. ¿Qué es Scrum?

Es un modo de desarrollo de carácter adaptable más que predictivo, orientado a las

personas más que a los procesos, emplea la estructura de desarrollo ágil: incremental

basada en iteraciones y revisiones.

Page 7: Informe trabajo de software

7

2.2. ¿Cómo se origina Scrum?

En 1986 la publicación The New Product Development Game, Harvard Business

Review, sobre nuevas prácticas de producción, realizadas por Hirotaka Takeuchi e

Ikujijo Nonaka para describir un tipo de procesos adaptivos, auto-organizativos y sin

elementos innecesarios, acuña por primera vez el nombre de “Campos Scrum”.

En 1993 Jeff Sutherland en su empresa Easel Corporation (Compañía que en los Macro

juegos de compras de compras y fusiones se integraría en VMARK, y luego en

Informix y finalmente en Ascential software corporation) usa mucha de las ideas que

llevarían a Scrum. Luego en 1994 junto a John Scumniotales y Jeff Mckenna

concibieron, ejecutaron y documentaron el primer Scrum para desarrollo ágil de

software utilizando el estudio de gestión de equipos de Takeuchi y Nonaka como base.

En 1995 Ken Schwaber presentó en OOPSLA 95 (Object – Oriented Programming

Systems & Applications Conferences), la implementación formal de las reglas de

Scrum, para software que él empleaba en el desarrollo de Dhelpi.

2.3. ¿Dónde se usa Scrum?

Software comercial, Proyectos internos, Proyecto de precio fijo, Aplicaciones

Financieras, Sistemas Empotrados, Desarrollo de video juegos, Software de control de

satélites, Sitios webs, Software para dispositivos Móviles, “Network switching

applications”, Aplicaciones certificadas ISO 9001, Software ágil y otros.

2.4. ¿Quién usa Scrum?

Page 8: Informe trabajo de software

8

Page 9: Informe trabajo de software

9

2.5. ¿Cómo Funciona Scrum?

El modelo Scrum, aplicado al desarrollo de software emplea el principio ágil:

“desarrollo iterativo e incremental”, denominado Sprint (Carrera) a cada iteración del

desarrollo.

Antes de iniciar cada iteración el equipo revisa las tareas pendientes y selecciona la

parte que entregará como un incremento de funcionalidad al finalizar la iteración

(Sprint).

Donde principalmente trascienden tres componentes: las prácticas, los artefactos,

los valores.

2.5.1. Las Prácticas:

Empleadas por Scrum para mantener un control ágil en el proyecto son:

revisión de las iteraciones, Desarrollo incremental, Desarrollo evolutivo,

Auto – organización del equipo, Colaboración.

2.5.1.1. Revisión De Las Iteraciones:

Al finalizar cada iteración se lleva a cabo una revisión con todas las

personas implicadas en el proyecto. Es por tanto la duración del

Sprint, el periodo máximo que se tarda en reconducir una desviación

en el proyecto o en las circunstancias del producto.

Page 10: Informe trabajo de software

10

2.5.2. Los Artefactos:

Los artefactos del modelos son: Elementos y Roles.

Elementos: Pila del producto o Product Backlog, Pila del Sprint o Sprint Backlog,

Incremento.

Roles: Propietario del producto, Equipo, Scrum Manager, otros interesados.

2.5.3. Los Valores:

Los valores que hacen posible a las prácticas de Scrum crear “Campos De Scrum”

son: Autonomía del equipo (Empowerment), Respeto en el equipo, Responsabilidad

y Autodisciplina, Foco en la tarea, Información transparencia y visibilidad.

Page 11: Informe trabajo de software

11

2.6. Caso Practico

2.6.1. Velocidad Inicial Del Equipo:

Duración del Sprint 15 días laborables.

Número de desarrolladores del equipo y su disponibilidad: 5 desarrolladores.

Factor De Corrección: 0,6.

Se calcula el número de días de trabajo teórico que es capaz de asumir el

equipo.

Teniendo en cuenta el factor de corrección anterior, se calculan los días

reales de trabajo.

2.6.2. Reunión De Planificación:

Page 12: Informe trabajo de software

12

Durante la reunión de planificación se trató una a una y con la prioridad

establecida por el cliente las historias de usuario para el siguiente Sprint.

Utilizando para la estimación la serie de Fibonacci (1/2, 1, 2, 3, 5, 6, 7,

infinito).

El tiempo de duración de una reunión de planificación puede ser como

máximo de cuatro horas, por eso se contempla hacer descansos durante esta

tarea.

Los resultados obtenidos de la reunión de planificación son las historias de

usuario que se listan a continuación, que incluyen su estimación, tareas en

las que se descompone y prioridad.

2.6.3. Historia De Usuario:

Añadir un nuevo concepto de comisión en los informes

Page 13: Informe trabajo de software

13

Tareas Asociadas.

2.6.4. Instalar Servidor LDAP

Page 14: Informe trabajo de software

14

2.6.5. Crear tarea para que procese el Excel y lo transforme en incidencias:

La suma total de los puntos de cada historia de usuario es 40.

Si antes de comenzar la reunión de planificación se había calculado que la

cantidad de trabajo que podía asumir el equipo era de 40.5 puntos, el equipo

puede comprometerse a implementar las siete historias de usuario propuestas

por el cliente para este Sprint.

Page 15: Informe trabajo de software

15

2.6.6. Inicio Del Sprint:

Los miembros del equipo se reúnen en frente al tablón de Scrum. En la primera

reunión nadie tiene una tarea asignada, por tanto, no es necesario responder a las

preguntas:

¿Qué has hecho ayer? ¿Qué voy a hacer hoy? ¿Algún impedimento?. Cada

desarrollador coge una tarea del tablón y comienza con la implementación.

2.6.7. Estado De La Gráfica:

La línea gris marca el progreso ideal del Sprint, se pinta para tener una referencia

de la consecución de trabajo a lo largo del Sprint, siempre que la línea de progreso

vaya por debajo de la línea gris, el ritmo es mejor del esperado, cuando está por

encima, el equipo es más lento de lo planificado.

El primer día del Sprint la gráfica está limpia, aún no ha habido progreso en las

tereas.

Page 16: Informe trabajo de software

16

2.6.7.1. Primer Día Del Sprint:

Page 17: Informe trabajo de software

17

2.6.7.2. Estado Actualizado De La Gráfica:

Se han quitado 3,5 puntos de trabajo: Tenemos que marcar el punto de hoy de la

gráfica en 35,5 puntos de trabajo restantes.

2.6.7.3. Último Día Del Sprint:

Page 18: Informe trabajo de software

18

2.6.7.4. Estado Final De La Gráfica:

2.7. Demostración:

Una vez preparado el guión para la reunión, se convoca al cliente a una reunión en

la que ha visto las nuevas funcionalidades que se han añadido al aplicativo.

2.8. Reunión Retrospectiva:

Una vez finalizado el Sprint se realiza la reunión retrospectiva, el objetivo de la

reunión, es reflexionar para mejorar el proceso: como está trabajando el equipo

junto, prácticas o herramientas que se están utilizando.

Esta reunión está restringida a los miembros del equipo.

3. Conclusiones:

Después de una visión general de esta metodología, queda claro que Scrum es muy

útil para el desarrollo de proyectos ágiles software, en particular para aquellos en

constante cambio.

El énfasis de Scrum está en buscar que los proyectos de desarrollo le aporten a las

organizaciones el mayor valor posible a muy corto plazo, con resultados de calidad

que respondan a las necesidades reales del negocio.