Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Programación extrema(XP)

455 views

Published on

Programación Extrema, Metodología de desarrollo de Software.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Programación extrema(XP)

  1. 1. Programación Extrema(XP)
  2. 2. Programación Extrema(XP) La programación extrema(XP) es una metodología de desarrollo de software, la cual pertenece al grupo de metodologías de procesos agiles. A diferencia de las metodologías tradicionales, XP es una metodología capaz de adaptarse a los cambios en el desarrollo de software.
  3. 3. XP parte del hecho de que los cambios en los requisitos de un proyecto en construcción son algo natural e inevitable.
  4. 4. Características Desarrollo iterativo e incremental ◦ Entregas parciales del proyecto. ◦ Mejoras una tras otra. Pruebas unitarias continuas ◦ Las pruebas ayudan a mejorar la calidad del producto. ◦ Las pruebas deben de ser escritas antes de la codificación.
  5. 5. Desarrollo en parejas ◦ Se recomienda que los equipos de trabajo sean conformados por 2 personas, ya que de esta manera es posible discutir el código mientras se escribe y ejecutar las pruebas unitarias en tiempo real. Integración Cliente-Equipo de desarrollo
  6. 6. Refactorización de código ◦ Se debe de crear código mas compacto que permita aumentar su legibilidad y mantenga su mismo comportamiento. ◦ Las pruebas unitarias son una forma de comprobar que durante la refactorización de código no se introdujeron errores. Corrección de errores ◦ Se deben de corregir todos los errores antes de comenzar a construir una nueva funcionalidad.
  7. 7. Código compartido ◦ Promueve que cualquier miembro del equipo de desarrollo pueda extender o corregir cualquier parte modular del proyecto. Simplicidad en el código ◦ Es mas sencillo hacer algo simple que requiera un poco de trabajo extra para cambiarlo en caso de ser necesario, que realizar algo complicado y quizás nunca
  8. 8. Valores XP XP se fundamenta en 5 valores para su implementación. Comunicación Retroalimentación Coraje Respeto Simplicidad
  9. 9. Simplicidad El diseño debe ser sencillo para agilizar su desarrollo y mantenimiento. El código debe de ser refactorizado/reducido. El código debe de ser documentado.
  10. 10. Comunicación El contacto con el cliente es lo mas importante. El cliente pasa a formar parte del equipo de desarrollo. Los desarrolladores se comunican constantemente al estar trabajando en parejas. Para los desarrolladores el código comunica mejor cuando mas simple y claro sea.
  11. 11. Retroalimentación El cliente al estar formando parte del equipo, es capaz de dar su opinión sobre el estado del proyecto en tiempo real. Al realizarse entregas parciales del proyecto, se minimiza el problema de tener que rehacer partes que no cumplan con los requerimientos.
  12. 12. Coraje El coraje permite a los desarrolladores afrontar los cambios en las tecnologías y requerimientos. El desarrollador debe de estar consiente de que su código puede llegar a ser reconstruido en caso de ser necesario.
  13. 13. Respeto Debe de existir respeto mutuo entre los miembros del equipo. Los miembros del equipo deben de respetar el trabajo del resto, no haciendo menos a otros. Un buen autoestima en el equipo fomenta una mejor productividad.
  14. 14. XP en la practica
  15. 15. Historias de usuario Es la representación de un requerimiento del usuario escrito en 1 o 2 frases utilizando el lenguaje común del usuario. Son una forma rápida de administrar los requerimientos de los usuarios, evitando tener que generar gran cantidad de documentos formales que requieran de mayor tiempo para administrarlos. Deben de ser escritas por los clientes*.
  16. 16. Una historia de usuario debe de ser:  Independiente  Negociable  Valorada por el cliente  Estimable  Pequeña  Verificable
  17. 17. Tarjetas CRC  Las tarjetas CRC(Clase- Responsabilidad-Colaborador) son documentos que representan las responsabilidades que tiene una clase y que objetos colaboran con ella para cumplir las responsabilidades.

×