XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

44
“XP Extreme Programming” Rogelio Ferreira Escutia

Transcript of XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

Page 1: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

“XP Extreme Programming”

Rogelio Ferreira Escutia

Page 2: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

Surgimiento

Page 3: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

3

Surge en 1996, cuando Kent Beck, Ward Cunningham y Ron Jeffries trabajan en Chrysler.

Surgimiento de XP

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 4: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

Características

Page 5: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

5

Comparación de Métodos

"The Art of Agile Development", James Shore y Shane Warden, O'Reilly 2008

Page 6: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

6

El ciclo de vida de un proyecto bajo XP es una sucesión de requerimientos del cliente y programación por parte de los desarrolladores.

La diferencia con otras metodologías es que estas sucesiones ocurren en muy poco tiempo.

El equipo incorpora funcionalidad día a día.

Proceso XP

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 7: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

7"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 8: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

Equipo XP

Page 9: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

9

Los roles en XP son los siguiente:

– 1) Cliente.– 2) Programador.– 3) Encargado de pruebas (Tester).– 4) Encargado de seguimiento (Tracker).– 5) Entrenador (Coach).– 6) Gestor (Big Boss).

Roles

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 10: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

10

Confeccionar historias de usuario. Asignar prioridades a las historias. Especifica los test de aceptación. Responsable de validar el producto.

1) Cliente

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 11: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

11

Escribir el código del programa. Estimar las historias de usuario. Escribir las pruebas de unidad.

2) Programador

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 12: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

12

Ayuda al cliente a escribir las pruebas funcionales. Ejecuta las pruebas. Difundir los resultados. Seleccionar las herramientas para las pruebas.

3) Tester

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 13: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

13

Adoptar métricas. Verificar las desviaciones del proyecto. Refinar los métodos de estimación. Realizar el seguimiento de las iteraciones. Reportar los progresos del equipo. Conservar los valores históricos.

4) Tracker

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 14: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

14

Responsable del proceso XP. Altos conocimientos técnicos. Habilidades interpersonales.

5) Coach

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 15: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

15

Es el vínculo entre los clientes y programadores (facilitador).

6) Big Boss

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 16: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

16

Un equipo típico tiene la siguiente estructura (12 miembros):

– 4 Clientes– 6 Programadores– 1 Encargado de pruebas (Tester)– 1 Gestor (Big Boss)

Tamaño del equipo (recomendado - 12)

"The Art of Agile Development", James Shore y Shane Warden, O'Reilly 2008

Page 17: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

17

– 1 Programador.– 1 Gestor (Big Boss)

Tamaño del equipo (pequeño - 2)

"The Art of Agile Development", James Shore y Shane Warden, O'Reilly 2008

– 4 Programador.– 1 Gestor (Big Boss)

Tamaño del equipo (mediano - 5)

– 6 Clientes– 10 Programadores– 3 Encargado de pruebas (Tester).– 1 Gestor (Big Boss)

Tamaño del equipo (grande - 20)

Page 18: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

Artefactos en XP

Page 19: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

19

Es la fase de requisitos donde el cliente manifiesta sus deseos o necesideades de un producto.

Consisten en documentos en donde se describen las características esperadas.

Historias de usuario

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 20: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

20

Una historia se compone de:

– Fecha.– Tipo de Actividad.– Prueba funcional.– Número de historia.– Prioridad técnica.– Prioridad del cliente.– Referencia a historias antiguas.– Riesgos.– Estimación Técnica.– Descripción.– Notas– Seguimiento

Historias de usuario (estructura)

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 21: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

21

Historias de usuario (ejemplo 1)

"Planificación", http://eventoscctunja.wordpress.com/about/, septiembre 2013

Page 22: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

22

Historias de usuario (ejemplo 2)

"Planeación", http://rupcajamenor.wordpress.com/planificacio//, septiembre 2013

Page 23: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

23

Historias de usuario (ejemplo 3)

"Artefactos de Desarrollo", http://uppmgroupware.blogspot.mx/2010/06/artefactos-de-de.html, septiembre 2013

Page 24: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

24

Una historia de usuario se descompone en varias tareas de ingeniería.

Se vinculan más al desarrollador ya que permite tener un acercamiento con el código.

Tareas de Ingeniería

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 25: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

25

Una historia de usuario se compone de lo siguiente:

– Identificador.– Relación con la historia.– Tipo de tarea.– Responsable

Tareas de Ingeniería (estructura)

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 26: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

26

Tareas de Ingeniería (ejemplo 1)

"Artefactos de Desarrollo", http://uppmgroupware.blogspot.mx/2010/06/artefactos-de-de.html, septiembre 2013

Page 27: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

27

El cliente decide cuál es el escenario correcto para superar una prueba.

Las pruebas de aceptación son “pruebas de caja negra”.

Se ejecutan contínuamente.

Si no existen pruebas de aceptación nuevas, significa que nada nuevo se ha hecho.

Pruebas de Aceptación

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Page 28: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

28

Pruebas de Aceptación (estructura)

"Métodos Agiles", Sebastián Priolo, Gradi S.A., Primera Edición, Buenos Aires Argentina mayo 2009

Una prueba de aceptación se compone de lo siguiente:

– No. de caso de prueba.– No. de historia de usuario.– Nombre caso de prueba.– Descripción.– Condiciones de ejecución.– Entradas.– Resultado esperado.– Evaluación.

Page 29: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

29

Pruebas de Aceptación (ejemplo 1)

"ciclodevidadesoftware", http://ciclodevidasoftware.wikispaces.com/CICLO+DE+VIDA+DE+PROCESOS+DE+PRUEBA,

Page 30: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

Metodología XP

Page 31: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

31

Cliente

Roles

Programador 1 TesterProgramador 2

Tracker Coach

Page 32: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

32

El cliente genera las historias1)

Se recomienda.

..En una primera planeación de 10 a 20 historias.Definir primero instalaciones e interfaces de usuario.

Page 33: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

33

El cliente entrega las historias al programador2)

Page 34: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

34

El programador divide las historias en tareas3)

Se recomienda.

..Tratar de que cada tarea no exceda las 2 horas.

Page 35: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

35

Se codifica utilizando “Programación en Pares”4)

Se recomienda.

..Tareas difíciles de programar en pares, hacerlas

de manera individual.

Page 36: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

36

El programador le envía al tester el código realizado5)

Page 37: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

37

El cliente le indica al tester las pruebas de aceptación que debe hacerse al código

6)

Page 38: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

38

El tester busca las herramientas para hacer las pruebas

7)

Page 39: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

39

El tester realiza las pruebas al código que se indicaron en las historias de usuario

8)

Page 40: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

40

El tester entrega las pruebas realizadas al cliente9)

Page 41: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

41

El cliente valida las historias y las tareas de acuerdo a las pruebas de aceptación

10)

Page 42: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

42

De manera paralela, el tracker supervisa y verifica el seguimiento del proyecto.

11)

Page 43: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

43

Responsable de todo el proceso de XP12)

Se recomienda.

..Que el Coach deberá tener altos conocimientos

técnicos y fuertes habilidades interpersonales.

Page 44: XP Extreme Programming Rogelio Ferreira Escutia. Surgimiento.

Rogelio Ferreira Escutia

Instituto Tecnológico de MoreliaDepartamento de Sistemas y Computación

Correo: [email protected] [email protected]

Página Web: http://antares.itmorelia.edu.mx/~kaos/http://www.xumarhu.net/

Twitter: http://twitter.com/rogeplusFacebook: http://www.facebook.com/groups/xumarhu.net/