extreme programing
Post on 16-Apr-2017
107 Views
Preview:
TRANSCRIPT
Programacion Extrema
eXtreme Programming
Por: Sánchez Colin Virginia
05/02/2023 [Nombre del proyecto]
Introducción• La programación extrema es una metodología ágil que
mas se utiliza. Permiten a un equipo crear frecuentes lanzamientos de software llamados incrementos. El código se mantiene en constante edición, movimiento y testeo por lo que promueve su adaptación a las situaciones.
05/02/2023 [Nombre del proyecto]
Antecedentes• Las primeras ideas y métodos asociados con la
programación extrema surguieron en la década 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 técnicos, Beck y Fowler que nos hablan de la planeación.
05/02/2023 [Nombre del proyecto]
Planeación
Diseño
Codificación
Prueba
Historias del usuario Valores Criterios de las pruebas de iteraciónPlan de iteración
Diseño simplecartas CRC
Soluciones picoprototipos
Programación en pareja
integración continua
Prueba de unidad
Pruebas de aceptación
Lanzamiento
Incremento de software Velocidad calculada del proyecto
refabricación
05/02/2023 [Nombre del proyecto]
Características• Utiliza el paradigma de desarrollo orientado a objetos.• Abarca un conjunto de reglas y prácticas que ocurren en un marco de trabajo
desarrollado en cuatro actividades:– Planeación– Diseño– Codificación– Prueba
"La programación extrema es una disciplina de desarrollo de software que se basa en valores de simplicidad, comunicación, retroalimentación y audacia"
Ron Jeffiries
05/02/2023 [Nombre del proyecto]
Planeación
• Inicia con la creación de las Historias de usuario:– Describen la características y la funcionalidad requeridas para el
software que se construirá.– Son escritas por el cliente y les asigna una prioridad.
• Equipo de XP– Evalúan 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.
05/02/2023 [Nombre del proyecto]
Planeación
• Acuerdo– El equipo de trabajo y el cliente establecen qué historias se
incluirán, la fecha de entrega y su agrupamiento para un lanzamiento.
– Desarrollo del planteamiento:1. Todas las historias son implementadas (pocas semanas)2. Se implementan primero las historias de mayor importancia3. Se implementan primero las historias de mayor riesgo
05/02/2023 [Nombre del proyecto]
Planeación
• Entrega del primer incremento de software.– Se calcula la velocidad del proyecto (numero de historias implementadas en
el primer lanzamiento)1. Estima fechas de entrega2. Determina 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.
05/02/2023 [Nombre del proyecto]
Diseño• Se sigue el principio "mantenimiento simple”.
• Apoyo de tarjetas CRC (Clase-Responsabilidad- Colaboradores), que identifica y organiza las clases orientas a objetos.
• La solución pico es un prototipo utilizado cuando en el diseño se quiere evitar riesgos ante un problema complicado.
• Se apoya en la refabricación cuyo objetivo es mejorar el diseño interno del código sin alterar su comportamiento externo.
05/02/2023 [Nombre del proyecto]
Diseño
• Se dice que se diseña antes y despues de la codificación, debido a la refabricación, la misma contrucción ayuda a identificar que aspectos pueden mejorarse.
05/02/2023 [Nombre del proyecto]
Codificación
• Desarrollo 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 código esta completo, ofrece una
retroalimentación a los desarrolladores.
05/02/2023 [Nombre del proyecto]
Codificación• Programación en pareja
– Se recomienda que dos personas trabajen en la codificación de una historia.
– Cada integrante tiene un papel diferente, mientras que uno se dedica a la codificación del diseño el otro, supervisa que se sigan con los estándares de codificación y que se cumpla el diseño propuesto.
• Integración continua– El equipo de integración se encarga de incorporar el trabajo de
todos los equipos.
05/02/2023 [Nombre del proyecto]
Pruebas
• Las pruebas de unidad se implementan en un marco de trabajo automatizable (deben ejecutarse de manera fácil y repetitiva).
• Pruebas de validación e integración (a diario) dan un indicativo del proceso e identificación de los riesgos.
• Pruebas de aceptación, las espefica el cliente y se enfocan en caracterésticas generales y funcionalidades que sean visibles y revisables al cliente.
05/02/2023 [Nombre del proyecto]
top related