Introducción a Extreme Programming



Documentos relacionados
TEMA 5: INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE. Definición de Ingeniería del Software

El Ciclo de Vida del Software

El Ciclo de Vida del Software

Capítulo 2 Metodologías y procesos de análisis de software

AUTORES SOBRE DISEÑO DE SISTEMAS: 1.- KENDALL Y KENDALL:

LAS ETAPAS DE LA METODOLOGIA METRICA

TEMA 2: CICLO DE VIDA DEL SOFTWARE. Profesora: Elisa Herrmann

TEMA 10: Metodologías de desarrollo de aplicaciones. El ciclo de vida según Métrica.

Overview GeneXus Qué es y para qué sirve GeneXus? Principales características y beneficios.

ROLES DEL PROYECTO Tomayko

Techniks es una empresa comprometida con el desarrollo de sistemas de. información de calidad y requiere de la recomendación o desarrollo de un método

Administración n de Proyectos

DESARROLLO GUIADO POR CARACTERÍSTICAS FEATURE DRIVEN DEVELOPMENT

Unidad II: Metodologías de Desarrollo. 2.1 Metodologías clásicas Cascada

TRABAJO DE APLICACIÓN

PERFIL COMPETENCIA ANALISTA DESARROLLADOR DE APLICACIONES DE SOFTWARE (TIC-PROG)

MODELO DE CASCADA PURA. Son métodos que indican cómo hacer más eficiente el desarrollo de sistemas de

Desarrollo de Software a gran escala. Sesión 2: Administración de Proyectos de Software

Participantes ÍNDICE

Tema 2: Introducción a los algoritmos

Creación de modelos de procesos Empresariales

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD. ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA Gerencia de Proyectos Informáticos

PROGRAMA DE MODERNIZACION INSTITUCIONAL PROYECTO DE ASISTENCIA TECNICA (MEF/BIRF) PRESTAMO No UR (IBTAL)

Lenguajes de Cuarta Generación (4GL)

ITIL V3 Entender el enfoque y adoptar las buenas prácticas

LA INTEGRACIÓN DE SISTEMAS

UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA SUR INGENIERÍA EN TECNOLOGÍA COMPUTACIONAL. ASIGNATURA Programación I. Básica ETAPA DE FORMACIÓN.

Otros cursos: Técnico Superior en Creación, Gestión y Certificación de Proyectos y Sistemas I+D+I. Norma UNE 166

TEMA Nº 5 CAPACIDAD DE PRODUCCIÓN

descripción del argumento identificador tipo longitud condición restricción

En esta ocasión analizaremos el Caso Uruguay y su evolución en la implementación de medidas consecuentes con este nuevo marco.

Su empresa Está preparada para un ERP?

Programación Orientada a Objetos. Sesión 4: Herencia

GUÍA DE APRENDIZAJE. Módulo VI Seis Sigma. Aprendizaje sin fronteras

Universidad Nacional del Nordeste Facultad de Humanidades

Framework Atlas. Introducción. Unidad de Arquitectura y Soporte de Aplicaciones Área de Aplicaciones Especiales y Arquitectura de Software DIAS

Gerencia de Informática. Contexto Organizacional

METODOLOGÍA COMMONKADS.

Titulación de Formación Profesional: TÉCNICO SUPERIOR EN ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS EN RED (Real Decreto1629/2009, de 30 de octubre)

XP Extreme Programming. Rogelio Ferreira Escutia

IBM Rational Rhapsody V7.5 ofrece un ágil entorno de desarrollo de software para la creación rápida de software, documentación, requisitos y pruebas

Microsoft Visual Studio.NET 2010 desarrollador y diseñador. Fabricante: Microsoft Grupo: Desarrollo Subgrupo: Microsoft Visual

:Universidad Salesiana de Bolivia. :Ingeniería de Sistemas PLAN DE DISCIPLINA GESTIÓN II

PLANIFICACIÓN DEL PROYECTO

4.1 Dispositivos y manejadores de dispositivos: device drivers

Pliego de Prescripciones Técnicas - Proyecto Tecnológico

Sus socios en ISO Manual de Calidad

DISEÑO DE ACCIONES FORMATIVAS Y PLANIFICACIÓN DE LA FORMACIÓN

Licitación Servicios de Desarrollo y Mantención de Aplicaciones AS400 y WEB. Bases Técnicas

ÍNDICE. 1.- Introducción.

PMP Test - C04 _02. Profesor: Francisco Javier Sanz Pérez. by fjspsv, 2011

UNIVERSIDAD TECNOLÓGICA DE PANAMÁ SECRETARÍA GENERAL FACULTAD DE INGENIERÍA INDUSTRIAL DESCRIPCION DE CURSO DE POSTGRADO EN ALTA GERENCIA

Gestor de Cocina. Versión 5.0. Pack de módulos de Empleados. Guía de contenidos

Si buscas libros de Español, Humberto Cueva es el autor.

Tienda Online: WebCine. Jose Luis Del Hoyo Fernández Consultor: Antoni Oller Arcas 13/01/2014

Sistemas de Información para la Gestión

Cristian Blanco

METODOLOGÍA DEL MARCO LÓGICO

DIPLOMADO DE DESARROLLO DE APLICACIONES MVC CON MICROSOFT.NET (C# - SQL) Y SCRUM TABLA DE CONTENIDOS

Monitoring and Operating a Private Cloud with System Center 2012

PROGRAMA DE MAGISTER EN EDUCACIÓN (IV VERSIÓN) UNIVERSIDAD INTERNACIONAL SEK 2012

INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO HUAYCÁN (Decreto Supremo No ED y Resolución Directoral No ED)

Capítulo III. Fundamentos de la Manufactura Global. 3.1 Definición de manufactura Global

MARCO LÓGICO (sujeto a posibles ajustes en documentos finales del Programa) PROGRAMA DE APOYO A LA DIRECCIÓN NACIONAL DE ADUANAS (UR-L1037)

Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.

C O N T E N I D O. 1. Propósito. 2. Alcance. 3. Responsabilidad y autoridad. 4. Normatividad aplicable. 5. Políticas.

Sistemas Operativos I

II. SECCIONES PRINCIPALES Figura1: Partes principales de un Informe Técnico

Dirección y Gestión de Proyectos

Fundación Pro Universidad Virtual Dominicana FUVF/ISED primer Centro Operativo Virtual Acreditado por el INFOTEP DIPLOMADO

Sistema de Medición de Temperatura Manipulado

CUESTIONARIO PLANIFICACIÓN INICIAL DE IMPLANTACIÓN ISO 9001:2008

CBmedic Gestión Ocupacional. Tabla de contenido. Introducción. Funcionalidades. Módulos. Vigilancia Ocupacional. Examenes Ocupacionales

CAPÍTULO 1. Introducción. la competitividad exige actualización y mejora continua por parte de todos y cada uno

PROGRAMA DE ASIGNATURA DE ANÁLISIS Y DISEÑO DE SISTEMAS

UCH seminario de gestión 1

Diseño de adaptación del proceso productivo en Ghana para la exportación de cables eléctricos de baja tensión Joan Masarnau, Ma.

UNVERSIDAD FRANCISCO DE PAULA SANTANDER BIBLIOTECA EDUARDO COTE LAMUS RESUMEN TESIS DE GRADO

La Estadística Médica. Descripción General de la Bioestadística. Esquema de la presentación. La Bioestadística. Ejemplos de fuentes de Incertidumbre

Módulo 4: Estándares de gestión de la seguridad de la información

COOPERACIÓN Y DESARROLLO INTERNACIONAL

Práctica 1: Una primera aproximación a la programación de sistemas concurrentes y distribuidos en C++

Transcripción:

Introducción a Extreme Programming Ingeniería del Software II Gerardo Fernández Escribano 9-12-2002 Índice 1. Qué es extreme Programming (XP)? 2. Introducción a la metodología XP 3. Fases de la metodología XP 4. Introducción a la Prueba Unitaria del software 5. Conclusiones

1. Qué es extreme Programming? Problema de la Entrega Problema de la Integración 1. Qué es extreme Programming? En qué consiste XP? La Programación Extrema es una metodología ligera de desarrollo de software que se basa en la simplicidad, la comunicación y la realimentación o reutilización del código desarrollado. Origen de la metodología XP Desarrollada por Kent Beck. «Todo en el software cambia. Los requisitos cambian. El diseño cambia. El negocio cambia. La tecnología cambia. El equipo cambia. Los miembros del equipo cambian. El problema no es el cambio en sí mismo, puesto que sabemos que el cambio va a suceder; el problema es la incapacidad de adaptarnos a dicho cambio cuando éste tiene lugar.» Kent Beck.

2. Introducción a la metodología XP Las cuatro variables Coste: Máquinas, especialistas y oficinas Tiempo: Total y de Entregas Calidad: Externa e Interna Alcance: Intervención del cliente 2. Introducción a la metodología XP El coste del cambio Requisitos Análisis Diseño Implementación Pruebas Producción

2. Introducción a la metodología XP Uso de la metodología XP XP surgío como respuesta y posible solución a los problemas derivados del cambio en los requerimientos XP se plantea como una metodología a emplear en proyectos de riesgo XP aumenta la productividad 2. Introducción a la metodología XP Trabajando con Extreme Programming Historias de usuarios Requerimientos Escenarios de test Nuevas historias de usuarios Velocidad del proyecto Depuración de errores Metáfora del sistema Architectural Spike Plan de entregas Planes de iteración Iteración Última versión Aprobación Pruebas de del cliente aceptación Pequeñas entregas Estimaciones dudosas Estimaciones seguras Spike Siguiente iteración Skike = Pequeño programa que explora posibles soluciones potenciales

3. Fases del la Metodología XP Trabajando con Extreme Programming Extreme Programming I. Planificación II. Diseño III. Desarrollo IV. Pruebas 1. Historias de Usuario 1. Metáfora del Sistema 1. Disponibilidad del cliente 1. Implantación 2. Plan de Entregas 2. Tarjetas CRC 2. Unidad de Pruebas 2. Pruebas de Aceptación 3. Velocidad de Proyecto 3. Soluciones Puntuales 3. Programación por parejas 4. Iteraciones 4. Funcionalida mínima 4. Integración 5. Rotaciones 5. Reciclaje 6. Reuniones 3. Fases de la Metodología XP

3. Fases de la Metodología XP (planificación) Historias 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 del sistema. Las historias de usuario son similares al empleo de escenarios, con la excepció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 sido implementadas correctamente). Existen diferencias entre estas y la tradicional especificación de requisitos. La principal diferencia es el nivel de detalle. Las historias de usuario solamente proporcionaran los detalles sobre la estimación del riesgo y cuánto tiempo conllevará la implementación de dicha historia de usuario. 3. Fases de la Metodología XP (planificación)

3. Fases de la Metodología XP (planificación) Escribir una Historia (cliente) "Demasiado compleja" Estimar la Historia (programador) "No sé cómo" Dividir una Historia (cliente) Spike (programador) Análisis Planificación Clasificar las historias en 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 las Historias Detallar las Tareas Tormenta de ideas Reparto de Tareas Tareas sin asignar Seleccionar y estimar las Tareas "Estoy demasiado ocupado" "Es demasiado grande" Programador 1 Programador 2 Programador 3 Programador 4

3. Fases de la Metodología XP (planificación) Iteraciones y planes de iteración 3. Fases de la Metodología XP (planificación) Rotaciones La rotaciones evitarán que las personas se conviertan en si mismas en un cuello de botella. Las rotaciones permitirán que todo el mundo conozca cómo funciona el sistema. Reuniones Reuniones de seguimiento diarias Correcciones 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 de prueba de cada módulo que se desarrolle.

3. Fases de la Metodología XP (diseño) Simplicidad La simplicidad es la llave Elegir una metáfora para el sistema La tarea de elegir una metáfora para el sistema nos permitirá mantener la coherencia de nombres de todo aquello que se va a implementar. Tarjetas CRC 3. Fases de la Metodología XP (diseño) Spike Un programa Spike, es un programa muy simple que explora una posible solución al problema Limitando la funcionalidad Las mejoras al final Reciclaje El reciclaje implicará mantener el código limpio y fácil de comprender, modificar y ampliar

3. Fases de la Metodología XP (desarrollo) Disponibilidad del usuario Estándares de implementación Unidades de prueba o test Programación parejas Integración del código Frecuencia en la integración del código El código es propiedad de todos Dejar la optimizaciones para el final No a las horas extras 3. Fases de la Metodología XP (desarrollo) El ciclo de XP análisis test codificación diseño

3. Fases de la Metodología XP (desarrollo) 3. Fases de la Metodología XP (pruebas) Unidades de test o pruebas: Pilar básico Implantación:El código será implantado cuando supere sus correspondientes unidades de test Protección contra fallos: Solución, un test Pruebas de aceptación: Evaluación del cliente

3. Fases de la Metodología XP (pruebas) Un día de trabajo con XP 4. Introducción a la Prueba Unitaria del software

5. Conclusiones Un buen diseño establece una forma directa y planificada de construir una aplicación,el diseño es la actividad predominante en XP (diseño diario). XP, y otras metodologías livianas parten de una serie de suposiciones bastante 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. El trabajo de los desarrolladores con las personas que tienen la experiencia en el negocio es regular, no eventual. Conviene recordar que ninguna metodología hará el trabajo por ti, porque ninguna metodología trabaja sola. 6. Trabajando con XP

6. Trabajando con XP 6. Trabajando con XP