introducción a la programación extrema

Download Introducción a La Programación Extrema

If you can't read please download the document

Upload: mareg1

Post on 27-Dec-2015

6 views

Category:

Documents


2 download

TRANSCRIPT

Programacin Extrema

Programacin Extrema

Ing. Sebastian Priolo

Metodologas giles

Menos orientadas a los documentos.

Orientadas al cdigo.

El cambio es bienvenido.

Procesos que cambian

NO son predictivos

Son adaptables

Ejemplos

Programacin Extrema

Scrum

Crystal

Evolutionary Project Management (Evo)

Feature Driven Development (FDD)

Adaptive Software Development (ASD)

Lean Development (LD)

Lean Software Development (LSD)

Manifiesto gil

Manifiesto gil

Brian Marick
Robert C. Martin
Steve Mellor
Ken Schwaber
Jeff Sutherland
Dave ThomasMartin Fowler
James Grenning
Jim Highsmith
Andrew Hunt
Ron Jeffries
Jon Kern

Kent Beck
Mike Beedle
Arie van Bennekum
Alistair Cockburn
Ward Cunningham

En marzo de 2001, 17 crticos de los modelos de mejora basados en procesos, convocados por Kent Beck, se reunieron en Salt Lake City para discutir sobre el desarrollo de software.
Se acu el trmino Mtodos giles.

Manifiesto gil

Estamos descubriendo mejores maneras de desarrollar software tanto por nuestra propia experiencia como ayudando a terceros. A travs de esta experiencia hemos aprendido a valorar:

Manifiesto gil

Individuos e interaccionessobreprocesos y herramientas

Software que funcionasobredocumentacin exhaustiva

Colaboracin con el clientesobrenegociacin de contratos

Responder ante el cambiosobreseguimiento de un plan

Manifiesto gil

Esto es, aunque los elementos a la derecha tienen valor, nosotros valoramos por encima de ellos los que estn a la izquierda.

Individuos e interaccionessobreprocesos y herramientas

Conocimiento

Adaptar procesos a las personas

Creatividad e innovacin

Software que funcionasobredocumentacin exhaustiva

Ver y actuar sobre prototipos

Feedback

Generar ideas

Nuevas posibilidades

Documentos < Comunicacin

Documentos = Barricadas

Colaboracin con el clientesobrenegociacin de contratos

el cliente es un miembro ms del equipo

se integra y colabora

grupo de trabajo.

Los modelos de contrato por obra no encajan

Responder ante el cambiosobreseguimiento de un plan

Entornos inestables

factor inherente el cambio y la evolucin

ms valiosa la capacidad de respuesta

Valores de gestin gil

Anticipacin y la adaptacin

gestin de proyectos ortodoxa: planificacin y control para evitar desviaciones sobre el plan.

Principios giles

Conclusiones

En software la construccin es tan barata que es casi gratis.

En software todo el esfuerzo est en el diseo, de modo que requiere de personas creativas y talentosas.

Los procesos creativos no se planean fcilmente, de modo que la previsibilidad bien puede ser una meta imposible.

Debemos ser muy cautos al usar la metfora de la ingeniera tradicional para construir software. Es un tipo diferente de actividad y por ende requiere un proceso diferente.

Programacin Extrema

Kent Beck, 1999.

Conjunto de valores, practicas y actividades.

Presenta distintos escenarios

Un da en un desarrollo XP

DesarrollarLas PruebasDisearImplementarRequerimientode UsuarioCorrer lasPruebasIntegrar

Buscar un par

Valores XP

Comunicacin:Crear software requiere de sistemas comunicados.

Simplicidad:Empezar con lo necesario y requerido y trabajar desde ah.

Retroalimentacion:Del sistema, del cliente, y del equipo.

Valentia:Programa para hoy y no para maana.

Respeto:El equipo debe trabajar como uno, sin hacer desiciones repentinas

Practicas XP

Conjunto de practicas:

Retroalimentacin a escala fina

Proceso contnuo en lugar de por lotes

Entendimiento compartido

Bienestar del programador

Retroalimentacin a escala fina

Desarrollo Guiado por Pruebas

Juego de planificacin

Cliente presente

Programacin en pares

Proceso contnuo en lugar de por lotes

Integracin continua

Refactorar sin piedad

Liberacin pequea

Entendimiento compartido

Diseo simple

Metfora del sistema

Propiedad colectiva del cdigo

Convenciones del cdigo

Bienestar del programador

Paso sostenible

Actividades Bsicas

Codificar

Hacer pruebas

Escuchar

Disear

Artefactos XP

Historias del Usuario

Tareas de Ingeniera

Pruebas de Aceptacin

Pruebas Unitarias y de Integracin

Plan de la Entrega

Cdigo

Historia de Usuario

Observaciones:

Descripcin:Se introducen los datos del artculo (ttulo, fichero adjunto, resumen, tpicos) y de los autores (nombre, e-mail, afiliacin). Uno de los autores debe indicarse como autor de contacto. El sistema confirma la correcta recepcin del artculo enviando un e-mail al autor de contacto con un userid y password para que el autor pueda posteriormente acceder al artculo.

Puntos Reales:Riesgo en Desarrollo:(Alto / Medio / Bajo)Puntos Estimados:Prioridad en Negocio:Alta(Alta / Media / Baja)Iteracin Asignada: 2Modificacin de Historia Nmero:Usuario:AutorNombre:Enviar artculoNmero:1Historia de Usuario

Tarea de Ingeniera

Descripcin:Programador responsable:Fecha fin: Fecha inicio: Puntos estimados:Tipo de tarea : Desarrollo / Correccin / Mejora / OtraNombre tarea:Nmero historia:Nmero tarea:Tarea

Prueba de Aceptacin

Evaluacin:Resultado esperado:Entradas:

Condiciones de ejecucin:

Descripcin:

Nombre Caso de Prueba:Nmero Historia de Usuario:Nmero Caso de Prueba:Caso de Prueba

Relacin entre practicas

Escenarios en XP

Escenarios en XP : Exploracin

Prioridad

RiesgoEsfuerzo (puntos)

Spikes (Bosquejos)

DefinirHistoriasde UsuarioElaborarSpikes

Historias de Usuario

Planificacin de la Entrega

Historiasde Usuario

PrimeraIteracinSegundaIteracinltimaIteracin

N-simaIteracin

Velocidad deProyecto (VP)puntos/semana

2 a 3semanas

Entrega