Please enable JavaScript.
Coggle requires JavaScript to display documents.
Metodología Ágil de Desarrollo de Software XP - Coggle Diagram
Metodología Ágil de Desarrollo de Software XP
Las metodologías ágiles, dan mayor valor al individuo, a la colaboración con el cliente y al desarrollo incremental del software con iteraciones muy cortas
Que es XP?
XP es una metodología ágil para el desarrollo de software y consiste básicamente en ajustarse estrictamente a una serie de reglas que se centran en las necesidades del cliente para lograr un producto de buena calidad en poco tiempo
Integra al cliente como una
parte más del equipo de desarrollo
Promueve el trabajo en equipo, preocupándose en todo momento del aprendizaje de los desarrolladores y estableciendo un buen clima de trabajo
XP está diseñada para el desarrollo de aplicaciones que requieran un grupo de programadores pequeño donde la comunicacion es mas facil
VALORES DE XP
Comunicación
Prevalece en todas las prácticas de Extreme Programming. Comunicación cara a cara es la mejor forma de comunicación, entre los desarrolladores y el cliente.
Simplicidad
La simplicidad ayuda a que los desarrolladores de software encuentren soluciones más simples a problemas, según el cliente lo estipula.
Retroalimentación
La retroalimentación continua del cliente permite a los desarrolladores llevar y dirigir el proyecto en una dirección correcta hacia donde el cliente quiera.
Valentía
Requiere que los desarrolladores vayan a la par con el cambio, por que sabemos que este cambio es inevitable, pero el estar preparado con una metodología ayuda a ese cambio.
Respeto
El equipo debe trabajar como uno, sin hacer decisiones repentinas. Extreme Programming promueve el trabajo del equipo. Cada integrante del proyecto (cliente, desarrolladores, etc.) forman parte integral del equipo.
ROLES XP
Programador
El programador escribe las pruebas unitarias y
produce el código del sistema
Cliente
El cliente escribe las historias de usuario y las pruebas funcionales para validar su implementación. Además, asigna la prioridad a las historias de usuario y decide cuáles se implementan en cada iteración centrándose en aportar mayor valor al negocio
Encargado de pruebas (Tester)
El encargado de pruebas ayuda al cliente a escribir las pruebas funcionales. Ejecuta las pruebas regularmente, difunde los resultados en el equipo y es responsable de las herramientas de soporte para pruebas
Encargado de seguimiento (Tracker)
El encargado de seguimiento proporciona
realimentación al equipo en el proceso XP
Entrenador (Coach)
Es responsable del proceso global. Es necesario que conozca a fondo el proceso XP para proveer guías a los miembros del equipo de forma que se apliquen las prácticas XP y se siga el proceso correctamente.
Consultor
Es un miembro externo del equipo con un conocimiento específico en algún tema necesario para el proyecto. Guía al equipo para resolver un problema específico.
Gestor (Big boss)
Es el vínculo entre clientes y programadores, ayuda a que el equipo trabaje efectivamente creando las condiciones adecuadas.
MODELO XP
Define Variables para cualquier proyecto de software: costo, tiempo, calidad y
alcance.
Se trata de realizar ciclos de desarrollo cortos (llamados iteraciones), con entregables funcionales al finalizar cada ciclo.
En cada iteración se realiza un ciclo completo de análisis, diseño, desarrollo y pruebas.
PROCESO XP
Exploración
En esta fase, los clientes plantean a grandes rasgos las historias de usuario que son de interés para la primera entrega del producto. Al mismo tiempo el equipo de desarrollo se familiariza con las herramientas y tecnología
Planificación de la Entrega (Release)
En esta fase el cliente establece la prioridad de cada historia de usuario, y correspondientemente, los programadores realizan una estimación del esfuerzo necesario de cada una de ellas
Iteraciones
Esta fase incluye varias iteraciones sobre el sistema antes de ser entregado.
Producción
La fase de producción requiere de pruebas adicionales y revisiones de rendimiento antes de que el sistema sea trasladado al entorno del cliente
Mantenimiento
Mientras la primera versión se encuentra en producción, el proyecto XP debe mantener el sistema en funcionamiento al mismo tiempo que desarrolla nuevas iteraciones
Muerte del Proyecto
Es cuando el cliente no tiene más historias para ser incluidas en el sistema. Esto requiere que se satisfagan las necesidades del cliente en otros aspectos como rendimiento y confiabilidad del sistema
REGLAS Y PRÁCTICAS
La metodología XP tiene un conjunto importante de
reglas y prácticas.
Reglas y prácticas para la Planificación
Comienza con la captura de historias de usuario - requisitos de usuario
Plan de entrega - Historias de usuario agrupadas para una entrega
Plan de iteraciones- historias de usuario desarrolladas y testeadas en cada iteración
Reuniones de seguimiento - Mantiene la comunicación dentro del equipo
Reglas y prácticas para el Diseño
Diseño simple , mas fácil de implementar
Programas de prueba para ver soluciones a programas
Recodificación , código mas simple pero sin cambiar funcionalidad.
Metaforas , Claridad en nombres para no recurrir a explicaciones
Reglas y prácticas para el Desarrollo
Trabajar con la versión mas nueva posible
Programación basada en estándares
Participación del cliente es fundamental de la metodología
Programación pensada para la realización de futuros tests
Programación en pares en un mismo ordenador
Propiedad colectiva del código , ya que el todo el equipo contribuye y puede cambiar el codigo
Mantener un ritmo constante de trabajo , para no crear lagunas en el desarrollo
Reglas y prácticas para las Pruebas
Pruebas unitarias, cada modulo debe de ser testeado y aprobado antes de ser liberados
Detección y corrección de bugs de forma inmediata para evitar problemas futuros
Comprobación de que las historias de usuario fueron correctamente implementadas
Ventajas y desventajas
Ventajas
Productos finales 'Inmediatos' debido a la rapidez, Facilidad debido al proceso de integración, Las necesidades del usuario son atendidas con mayor precisión
Desventajas
No aplicable a proyectos de gran escala, complejidad en la medición del avance del proyecto y la planificación inicial de este