domingo, 28 de febrero de 2016

MiniQuest 4



 Programacion extrema

¿Qué es la Programación Extrema?
Es una metodología de desarrollo ligera basada en una serie de valores y una docena de prácticas de, llamémoslas así, buenas maneras que propician un aumento en la productividad a la hora de generar software.

¿Cuáles son los valores y principios de la  Programación Extrema?
Valores:

  • comunicación
  • simplicidad
  • realimentació
  • coraje

Principios:

  • realimentación veloz
  • modificaciones incrementales
  • trabajo de calida
  • asunción de simplicidad.

¿Cuáles son las actividades, recursos y prácticas de la Programación Extrema?

  • El juego de la planificación
  • Pequeñas entregas
  • Metáfora
  • Diseño simple
  • Pruebas
  • Refactorización
  • Programación por parejas
  • Propiedad colectiva
  • Integración continua
  • 40 horas semanales
  • Cliente en casa
  • Estándares de codificación

¿Cuál son las fases del proceso de desarrollo de XP?
  • Planificación del proyecto
  • Diseño,
  • Desarrollo
  • Pruebas
¿Qué es una historia de usuario?
Es una forma de expresar y describir las tareas que realizara el software. Estas historias de usuario son precisamente hechas por el cliente, expresa lo que desea que haya el sistema. Hacer una historia de usuario se divide en 3 partes:
El usuario escribe en una tarjeta la tarea que quiere que haga el software.
Entre el cliente y los programadores dialogan sobre la acción que se planea hacer, se resuelven dudas y se aclaran los detalles
Por último la confirmación de la historia de usuario donde el cliente comprueba que la tarea resultara como él espera

Mapa conceptual

Presentacion en slideshare: https://es.slideshare.net/secret/pxSUpjuOU3xFak

MiniQuest 3



Sesión 3. Los métodos ágiles del desarrollo de software MiniQuest



¿Qué son las metodologías ágiles de desarrollo de software?
son una serie de técnicas para la gestión de proyectos, bajo la idea de dar entregas parciales del software funcionando en las que el cliente determina si va por el camino correcto o si requiere alguna modificación 

¿Cuáles son las características en las que se basan las metodologías ágiles?
    Los individuos y su interacción, por encima de los procesos y las herramientas. Quiere decir que se requiere un buen trabajo en equipo
    El software que funciona, frente a la documentación exhaustiva. Se prioriza el producto final, que el software funcione frente a una documentación detallada
    La colaboración con el cliente, por encima de la negociación contractual. El cliente entra en la definición de que desea del software y no les deja este trabajo a los analistas
    La respuesta al cambio, por encima del seguimiento de un plan. Se plantean fechas de entrega pero hay cierta flexibilidad ante la necesidad de una modificación

¿Cuáles son las ventajas y desventajas del empleo de las metodologías ágiles respecto a  las tradicionales?
ventajas
  • El desarrollo ágil aumenta la productividad
  • Simplifica el manejo de la sobrecarga de procesos
  • El proceso es mas flexible y da una mejor respuesta al cambio
  • No se tienen tantos problemas en el anilisis de los requerimientos
Desventajas
  • Falta de documentación del diseño. La documentación tiene menor dedicación
  • Problemas derivados de la comunicación oral
  • Fuerte dependencia de las personas
¿Cuándo es recomendable utilizar metodologías ágiles  en el desarrollo de software?
En proyectos cortos, que necesiten un desarrollo rápido, también proyectos donde los requisitos son difíciles de obtener y en proyectos donde excista una continua modificacion y encesite adaptarse constantemente

¿Cuáles son algunos tipos de metodologías ágiles?
  • Programación Extrema
  • Scrum
  • Crystal
  • Evolutionary Project Management (Evo)
  • Lean Development (LD)
  • Lean Software Development (LSD)
 Mapa conceptual
 Presentacion en slideshare: https://es.slideshare.net/secret/3gupkT0yTRC8ku