Introducción A Extreme Programming - WordPress

1y ago
3 Views
2 Downloads
1.22 MB
14 Pages
Last View : 2m ago
Last Download : 3m ago
Upload by : Bria Koontz
Transcription

Introducción aExtreme ProgrammingIngeniería del Software IIGerardo Fernández Escribano9-12-2002Índicea1.a2.a3.a4.a5.¿Qué es eXtreme Programming (XP)?Introducción a la metodología XPFases de la metodología XPIntroducción a la Prueba Unitaria del softwareConclusiones1

1. ¿Qué es eXtreme Programming?aProblema de la EntregaaProblema de la Integración1. ¿Qué es eXtreme Programming?a ¿En qué consiste XP? La Programación Extrema es una metodología ligera de desarrollo desoftware que se basa en la simplicidad, la comunicación y larealimentación o reutilización del código desarrollado.a Origen de la metodología XP Desarrollada por Kent Beck.«Todo en el software cambia. Los requisitos cambian. El diseñocambia. El negocio cambia. La tecnología cambia. El equipocambia. Los miembros del equipo cambian. El problema no es elcambio en sí mismo, puesto que sabemos que el cambio va asuceder; el problema es la incapacidad de adaptarnos a dichocambio cuando éste tiene lugar.» Kent Beck.2

2. Introducción a la metodología XPaLas cuatro variables Coste: Máquinas, especialistas y oficinas Tiempo: Total y de Entregas Calidad: Externa e Interna Alcance: Intervención del cliente2. Introducción a la metodología XPEl coste del cambioRequisitos Análisis Diseño Implementación Pruebas Producción3

2. Introducción a la metodología XPaUso de la metodología XP XP surgío como respuesta y posible solucióna los problemas derivados del cambio en losrequerimientos XP se plantea como una metodología aemplear en proyectos de riesgo XP aumenta la productividad2. Introducción a la metodología XPaTrabajando con Extreme ProgrammingEscenarios de testHistorias deusuariosNuevas historias de usuariosVelocidad del el sistemaPlanes deiteraciónPlan deentregasEstimacionesdudosasDepuración de erroresIteraciónÚltima versiónAprobaciónPruebas de del urasSpikeSiguiente iteraciónSkike Pequeño programa que explora posibles soluciones potenciales4

3. Fases del la Metodología XPTrabajando con Extreme ProgrammingExtreme ProgrammingI. PlanificaciónII. DiseñoIII. DesarrolloIV. Pruebas1. Historias de Usuario1. Metáfora del Sistema1. Disponibilidad del cliente1. Implantación2. Plan de Entregas2. Tarjetas CRC2. Unidad de Pruebas2. Pruebas de Aceptación3. Velocidad de Proyecto3. Soluciones Puntuales3. Programación por parejas4. Iteraciones4. Funcionalida mínima4. Integración5. Rotaciones5. Reciclaje6. Reuniones3. Fases de la Metodología XP5

3. Fases de la Metodología XP (planificación)aHistorias de usuario Las historias de usuario tienen el mismo propósito que los casos de uso. Las escriben los propios clientes, tal y como ven ellos las necesidades delsistema. Las historias de usuario son similares al empleo de escenarios, con laexcepción de que no se limitan a la descripción de la interfaz de usuario.También conducirán el proceso de creación de los test de aceptación(empleados para verificar que las historias de usuario han sidoimplementadas correctamente). Existen diferencias entre estas y la tradicional especificación derequisitos. La principal diferencia es el nivel de detalle. Las historias deusuario solamente proporcionaran los detalles sobre la estimación delriesgo y cuánto tiempo conllevará la implementación de dicha historia deusuario.3. Fases de la Metodología XP (planificación)6

3. Fases de la Metodología XP (planificación)Escribir una Historia(cliente)"Demasiado compleja""No sé cómo"Estimar la Historia(programador)Dividir una icaciónClasificar las historiasen función del riesgo(cliente y programador)Fijar la velocidad(tracker)Determinar el alcance(cliente)3. Fases de la Metodología XP (planificación)Un plan de iteración puede verse como:Leer lasDetallar lasHistoriasTareasTormenta de ideasReparto de TareasTareas sinasignarSeleccionar yestimar las Tareas"Estoy demasiado ocupado""Es demasiado grande"Programador 1Programador 2Programador 3Programador 47

3. Fases de la Metodología XP (planificación)aIteraciones y planes de iteración3. Fases de la Metodología XP (planificación)aRotaciones La rotaciones evitarán que las personas se conviertan en si mismas enun cuello de botella. Las rotaciones permitirán que todo el mundoconozca cómo funciona el sistema.aReuniones Reuniones de seguimiento diariasaCorrecciones Deberemos corregir el proceso cuando éste falle. Todo el mundo debe estar al corriente de los cambios. Para que esto funcione correctamente hay que crear unidades deprueba de cada módulo que se desarrolle.8

3. Fases de la Metodología XP (diseño)aSimplicidad La simplicidad es la llaveaElegir una metáfora para el sistema La tarea de elegir una metáfora para el sistema nos permitirá mantenerla coherencia de nombres de todo aquello que se va a implementar.aTarjetas CRC3. Fases de la Metodología XP (diseño)a Spike Un programa Spike, es un programa muy simple que explora una posiblesolución al problemaa Limitando la funcionalidad Las mejoras al finala Reciclaje El reciclaje implicará mantener el código limpio y fácil de comprender, modificary ampliar9

3. Fases de la Metodología XP (desarrollo)aDisponibilidad del usuarioaEstándares de implementaciónaUnidades de prueba o testaProgramación parejasaIntegración del códigoaFrecuencia en la integración del códigoaEl código es propiedad de todosaDejar la optimizaciones para el finalaNo a las horas extras3. Fases de la Metodología XP (desarrollo)aEl ciclo de XPanálisistestcodificacióndiseño10

3. Fases de la Metodología XP (desarrollo)3. Fases de la Metodología XP (pruebas)aUnidades de test o pruebas: Pilar básicoaImplantación:El código será implantado cuandosupere sus correspondientes unidades de testaProtección contra fallos: Solución, un testaPruebas de aceptación: Evaluación del cliente11

3. Fases de la Metodología XP (pruebas)aUn día de trabajo con XP4. Introducción a la Prueba Unitaria del software12

5. Conclusionesa Un buen diseño establece una forma directa y planificada de construir unaaplicación,el diseño es la actividad predominante en XP (diseño diario).a XP, y otras metodologías livianas parten de una serie de suposiciones bastantedifíciles de encontrar en el mercado del desarrollo del software actual:1. Las personas son claves en los procesos de desarrollo de software.2. Los programadores son profesionales responsables, no requieren de supervisión.3. Los procesos se aceptan y acuerdan, no se imponen.4. Desarrolladores y gerentes comparten el liderazgo del proyecto.5. El trabajo de los desarrolladores con las personas que tienen la experiencia en elnegocio es regular, no eventual.a Conviene recordar que ninguna metodología hará el trabajo por ti, porque ningunametodología trabaja sola.6. Trabajando con XP13

6. Trabajando con XP6. Trabajando con XP14

difíciles de encontrar en el mercado del desarrollo del software actual: 1. Las personas son claves en los procesos de desarrollo de software. 2. Los programadores son profesionales responsables, no requieren de supervisión. 3. Los procesos se aceptan y acuerdan, no se imponen. 4. Desarrolladores y gerentes comparten el liderazgo del proyecto. 5.

Related Documents:

Extreme Programming John T. Bell Department of Computer Science University of Illinois, Chicago Prepared for CS 442, Spring 2017 2 Sources 1. Wikipedia: Extreme Programming 2. Wikipedia: Extreme Programming Practices 3. Wikipedia: Kent Beck 4. Kent eck and ynthia Andres, “Extreme Programming Explained: Embrace hange”, 2nd Edition 5.

Extreme Programming Extreme Programming (XP) takes commonsense software engineering principles and practices to extreme levels For instance “Testing is good?” then “We will test every day” and “We will write test cases before we code” As Kent Beck says extreme programming takes

Extreme Programming: A Gentle Introduction. Extreme Programming: A gentle introduction. The goal of this site is to provide an introduction and overview of Extreme Programming (XP). For a guided tour of XP follow the trail of little buttons, starting here. Returning visitors can jump to recent changes to see what's new.

Page 1 of 12 EXTREME PROGRAMMING 2.1 Extreme programming (XP) is a software development methodology which is intended to improve software quality and responsiveness to changing customer requirements. As a type of agile software development,[1][2][3] it advocates frequent "releases" in short development cycles, which is intended to improve productivity

A majority ofArizona voters say that wildfires (84%), heat waves (79%), and drought (74%) have become at least somewhat more extreme in the past 3-5 years. 38% 36% 29% 36% 26% 43% 21% 55% 16% Drought Heat waves Wildfires Much more extreme Somewhat more extreme Not changed much at all Somewhat less extreme Much less extreme Perceptions of .

Extreme Programming Waterfall model inspired by civil engineering Civil engineering metaphor is not perfect – Software is more organic than concrete – You “grow the software” to meet changing requirements Extreme Programming (XP) addresses this – An iterative model – Recommended reading: “Extreme Software Engineering.

Programming? Extreme Programming (XP) is an agile software development methodology. It is a lightweight methodology combining a set of existing software development practices [5]. XP tends to rapidly develop high-quality software that provides the highest value for the customers in the fastest way possible. Extreme Programming is based on values

The pair programming and planning game practices contained the most conspicuous shortcomings. Other weaknesses were discovered in a number of the other practices that have a negative effect on the Extreme Programming methodology at the company. If CheckFree i-Solutions desires an implementation of Extreme Programming that