Online Mind Mapping and Brainstorming

Create your own awesome maps

Online Mind Mapping and Brainstorming

Even on the go

with our free apps for iPhone, iPad and Android

Get Started

Already have an account? Log In

METODOLOGÍA PROGRAMACIÓN EXTREMA (XP) by Mind Map: METODOLOGÍA PROGRAMACIÓN  EXTREMA          (XP)
5.0 stars - 1 reviews range from 0 to 5

METODOLOGÍA PROGRAMACIÓN EXTREMA (XP)

DEFINICION

shifts in consumer tastes away from the firm's products emergence of substitute products new regulations increased trade barriers

Es una metodología de desarrollo ligero (o ágil) basada en una serie de valores y de prácticas de buenas maneras que persigue el objetivo de aumentar la productividad a la hora de desarrollar programas.

CARACTERISTICAS

lack of patent protection a weak brand name poor reputation among customers high cost structure lack of access to the best natural resources lack of access to key distribution channels

 Desarrollo iterativo e incremental: pequeñas mejoras, unas tras otras.

 Pruebas unitarias: frecuentemente repetidas y automatizadas, incluyendo pruebas de regresión. Se aconseja escribir el código de la prueba antes de la codificación.

 Programación en parejas: se recomienda que las tareas de desarrollo se lleven a cabo por dos personas en un mismo puesto.

 Corrección de todos los errores antes de añadir nueva funcionalidad. Hacer entregas frecuentes.

 Refactorización del código, es decir, reescribir ciertas partes del código para aumentar su legibilidad y mantenibilidad pero sin modificar su comportamiento. Las pruebas han de garantizar que en la Refactorización no se ha introducido ningún fallo.

 Simplicidad en el código: es la mejor manera de que las cosas funcionen. Cuando todo funcione se podrá añadir funcionalidad si es necesario.

 Propiedad del código compartida: en vez de dividir la responsabilidad en el desarrollo de cada módulo en grupos de trabajo distintos, este método promueve el que todo el personal pueda corregir y extender cualquier parte del proyecto.

PRINCIPIOS BASICOS LOS CIASUALES SON 12 PRINCIPALES DIVIDIDOS EN CUATRO CATEGORIAS

patents strong brand names good reputation among customers cost advantages from proprietary know-how exclusive access to high grade natural resources favorable access to distribution networks  

RETROALIMENTACION A ESCALA FINA

PROCESO CONTINUO EN LUGAR DE POR LOTES

ENTENDIEMIENTO COMPARTIDO

BIENESTAR DEL PROGRAMADOR

PROCESO DE DESARROLLO

an unfulfilled customer need arrival of new technologies loosening of regulations removal of international trade barriers

La programación extrema parte del caso habitual de una compañía que desarrolla software normalmente a medida, en la que hay diferentes roles: un equipo de gestión (o diseño), uno de desarrollo y los clientes finales

La relación entre el equipo de diseño, los que desarrollan el software y clientes es totalmente diferente al que se ha producido en las metodologías tradicionales, que se basaba en una fase de captura de los requisitos previa al desarrollo, y de una fase de validación posterior al mismo.

ITERACCION CON EL CLIENTE

En este tipo de programación el cliente pasa a ser parte implicada en el equipo de desarrollo. Su importancia es máxima en el momento de tratar con los usuarios y en efectuar las reuniones de planificación.

Tiene un papel importante de interacción con el equipo de programadores, sobre todo después de cada cambio, y de cada posible problema localizado, mostrando las prioridades, expresando sus sensaciones... En este tipo de programación existirán pruebas de aceptación de la programación que ayudarán a que su labor sea lo más provechosa posible.

PLANIFICACION DEL PROYECTO

En este punto se tendrá que elaborar la planificación por etapas, donde se aplicarán diferentes iteraciones. Para hacerlo será necesaria la existencia de reglas que se han de seguir por las partes implicadas en el proyecto para que todas las partes tengan voz y se sientan realmente partícipes de la decisión tomada.

DISEÑO, DESARROLLO Y PRUEBAS

El desarrollo es la parte más importante en el proceso de la programación extrema. Todos los trabajos tienen como objetivo que se programen lo más rápidamente posible, sin interrupciones y en dirección correcta.

También es muy importante el diseño, y se establecen los mecanismos, para que éste sea revisado y mejorado de manera continuada a lo largo del proyecto, según se van añadiendo funcionalidades al mismo.

Antes de empezar a codificar se tienen que hacer pruebas unitarias, es decir: Cada vez que se quiere implementar una parte de código, en XP, se tiene que escribir una prueba sencilla, y después escribir el código para que la pase.