Extreme Programing

  • View
    80

  • Download
    0

Embed Size (px)

Text of Extreme Programing

Programacion Extrema

Programacion Extrema eXtreme ProgrammingPor: Snchez Colin Virginia

4/20/2016[Nombre del proyecto]IntroduccinLa programacin extrema es una metodologa gil que mas se utiliza. Permiten a un equipo crear frecuentes lanzamientos de software llamados incrementos. El cdigo se mantiene en constante edicin, movimiento y testeo por lo que promueve su adaptacin a las situaciones.

4/20/2016[Nombre del proyecto]AntecedentesLas primeras ideas y mtodos asociados con la programacin extrema surguieron en la dcada de 1990.En 1999 se public el primer trabajo fundamental de la materia por Kent Beck.

Otros trabajos fundamentales como los de Ron Jeffries que nos proporcionan detalles tcnicos, Beck y Fowler que nos hablan de la planeacin.

4/20/2016[Nombre del proyecto]

PlaneacinDiseoCodificacinPrueba

Historias del usuario Valores Criterios de las pruebas de iteracinPlan de iteracinDiseo simplecartas CRCSoluciones picoprototiposProgramacin en pareja

integracin continuaPrueba de unidadPruebas de aceptacinLanzamientoIncremento de software Velocidad calculada del proyectorefabricacin

4/20/2016[Nombre del proyecto]CaractersticasUtiliza el paradigma de desarrollo orientado a objetos.Abarca un conjunto de reglas y prcticas que ocurren en un marco de trabajo desarrollado en cuatro actividades:PlaneacinDiseoCodificacinPrueba

"La programacin extrema es una disciplina de desarrollo de software que se basa en valores de simplicidad, comunicacin, retroalimentacin y audacia"Ron Jeffiries

4/20/2016[Nombre del proyecto]PlaneacinInicia con la creacin de las Historias de usuario:Describen la caractersticas y la funcionalidad requeridas para el software que se construir.Son escritas por el cliente y les asigna una prioridad.Equipo de XPEvalan cada historia y les asignan un costo (semanas de desarrollo).Si las historias son muy largas, se le pide al usuario que la fragmente en historias mas reducidas.

4/20/2016[Nombre del proyecto]PlaneacinAcuerdoEl equipo de trabajo y el cliente establecen qu historias se incluirn, la fecha de entrega y su agrupamiento para un lanzamiento.Desarrollo del planteamiento:Todas las historias son implementadas (pocas semanas)Se implementan primero las historias de mayor importanciaSe implementan primero las historias de mayor riesgo

4/20/2016[Nombre del proyecto]PlaneacinEntrega del primer incremento de software.Se calcula la velocidad del proyecto (numero de historias implementadas en el primer lanzamiento)Estima fechas de entregaDetermina si existen compromisos excesivos

El cliente puede agregar, cambiar, dividir o eliminar historias conforme el desarrollo, por lo que el equipo modificar sus planes conforme a ello.

4/20/2016[Nombre del proyecto]DiseoSe sigue el principio "mantenimiento simple.

Apoyo de tarjetas CRC (Clase-Responsabilidad- Colaboradores), que identifica y organiza las clases orientas a objetos.La solucin pico es un prototipo utilizado cuando en el diseo se quiere evitar riesgos ante un problema complicado.Se apoya en la refabricacin cuyo objetivo es mejorar el diseo interno del cdigo sin alterar su comportamiento externo.

4/20/2016[Nombre del proyecto]DiseoSe dice que se disea antes y despues de la codificacin, debido a la refabricacin, la misma contruccin ayuda a identificar que aspectos pueden mejorarse.

4/20/2016[Nombre del proyecto]CodificacinDesarrollo de pruebas de unidad:Reafirma cada una de las historias que debe incluir el lanzamiento actual (incremento de software).El desarrollador se centra en lo que debe implementarse para pasar la prueba de unidad.Una vez que el cdigo esta completo, ofrece una retroalimentacin a los desarrolladores.

4/20/2016[Nombre del proyecto]CodificacinProgramacin en parejaSe recomienda que dos personas trabajen en la codificacin de una historia.Cada integrante tiene un papel diferente, mientras que uno se dedica a la codificacin del diseo el otro, supervisa que se sigan con los estndares de codificacin y que se cumpla el diseo propuesto.Integracin continuaEl equipo de integracin se encarga de incorporar el trabajo de todos los equipos.

4/20/2016[Nombre del proyecto]PruebasLas pruebas de unidad se implementan en un marco de trabajo automatizable (deben ejecutarse de manera fcil y repetitiva).Pruebas de validacin e integracin (a diario) dan un indicativo del proceso e identificacin de los riesgos.Pruebas de aceptacin, las espefica el cliente y se enfocan en caractersticas generales y funcionalidades que sean visibles y revisables al cliente.

4/20/2016[Nombre del proyecto]

4/20/2016[Nombre del proyecto]