05 masmodelosdeprocesodesoftware isi

Click here to load reader

  • date post

    05-Aug-2015
  • Category

    Software

  • view

    80
  • download

    0

Embed Size (px)

Transcript of 05 masmodelosdeprocesodesoftware isi

1. Otros Modelos / 1 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Modelos de Proceso de Software Ingeniera de Software I FIEC03046 Sesin 05 2. Otros Modelos / 2 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Agenda Terminologa Modelo de desarrollo gil Scrum Otros enfoques Prototipo Ingeniera Concurrente El mejor ciclo de vida para un proyecto 3. Otros Modelos / 3 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Terminologa 4. Otros Modelos / 4 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Terminologa Una metodologa es un framework para la organizacin sistemtica de una coleccin de mtodos. Algunos ejemplos son: Structured Systems Analysis and Design SSADM Unified Software Development Process USDP o Rational Unified Process RUP Extreme Programming XP SCRUM Dynamic Systems Development DSDM 5. Otros Modelos / 5 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Modelo de desarrollo gil 6. Otros Modelos / 6 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Modelo de desarrollo gil Es un tipo de modelo iterativo e incremental. El software es desarrollado en incrementos de ciclos cortos. Cada pequeo entregable es construido sobre los anteriores entregables. Cada release es cuidadosamente probado para asegurar que se mantenga la calidad del sofware. 7. Otros Modelos / 7 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Modelo de desarrollo gil Es un modelo para desarrollo de software iterativo e incremental en el cual los incrementos son pequeos y usualmente una nueva versin es presentada al usuario cada 2 o 3 semanas. Se minimizan documentacin y reuniones formales para dar paso a reuniones con comunicaciones informales. 7 8. Otros Modelos / 8 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Modelo de desarrollo gil Fuente: http://istqbexamcertification.com/ 9. Otros Modelos / 9 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Modelo de desarrollo gil 10. Otros Modelos / 10 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Modelo de desarrollo gil 11. Otros Modelos / 11 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Ventajas del modelo de desarrollo gil Entregables frecuentes (semanas en vez de meses) Se enfatiza las personas y sus interacciones ms que procesos y herramientas Satisfaccin del cliente por las entregas constantes y rpidas de software. Cooperacin cercana entre los expertos de la lgica del negocio y los desarrolladores. 12. Otros Modelos / 12 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Desventajas del modelo de desarrollo gil Falta de nfasis en diseo y documentacin necesaria. Solo desarrolladores senior son capaces de tomar las decisiones requeridas durante el proceso de desarrollo. Por lo tanto, no hay lugar para novatos, a menos que se mezclen con recursos experimentados. 13. Otros Modelos / 13 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Modelo de desarrollo gil Conveniente cuando Existe una alta frecuencia de cambios. Se requiere muy poca planificacin para iniciar el proyecto. 14. Otros Modelos / 14 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Modelo de desarrollo gil Metodologas de desarrollo gil: Scrum Extreme programming (XP) Test-driven development (TDD) Agile Unified Process (AUP) 15. Otros Modelos / 15 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Scrum 16. Otros Modelos / 16 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Metodologa Scrum Es una metodologa de desarrollo gil que estructura el desarrollo de aplicaciones en ciclos llamados Sprints. Ciclo de Sprint Seleccionar Desarrollar Revisar Evaluar Bosquejo de planeacin y diseo de la arquitectura Cierre del proyecto 16 17. Otros Modelos / 17 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Roles en Scrum El Product Owner describe los requerimientos del software en el Product Backlog. El Scrum Master es el facilitador que coordina reuniones diarias, hace seguimiento del Sprint Backlog, y se comunica con el Product Owner para evitar interrupciones. El Equipo de Desarrollo Scrum est conformado por las personas que desarrollan el software. 17 18. Otros Modelos / 18 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Caractersticas de Scrum Un Sprint es la fase central de Scrum, en donde se evala el trabajo, se seleccionan las caractersticas a ser desarrolladas y el software es implementado. Al final de un sprint, la funcionalidad producida es liberada a los usuarios. Los Sprints tienen una duracin fija [1 4 semanas] y finalizan en la fecha establecida independiente de si se haya completado el trabajo o no. 18 19. Otros Modelos / 19 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Caractersticas de Scrum Sprint Planning: es la reunin que se realiza al inicio de cada Sprint entre el Product Owner y el Equipo de Desarrollo con la facilitacin del Scrum Master para definir la lista de tareas en el Sprint Backlog. Daily Scrum Meeting: Es una reunin diaria de 15 minutos en la cual el equipo de desarrollo analiza el avance de tareas y define si es necesaria una replanificacin de las mismas. 19 20. Otros Modelos / 20 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Documentos de Scrum El Product Backlog es un documento que contiene todos los requerimientos del software a desarrollar. Est abierto a modificaciones. El Sprint Backlog es un documento que contiene las tareas que el equipo va a desarrollar en el siguiente sprint. Ninguna tarea es mayor a 16 horas de trabajo. 20 21. Otros Modelos / 21 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Documentos de Scrum 21 Ejemplo de Sprint BackLog Fuente: Scrum Training Institute Press 22. Otros Modelos / 22 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Documentos de Scrum El burn down chart es una grfica que muestra la cantidad de requisitos pendientes en el product backlog al inicio de cada sprint. 22 Scrum Fuente: http://en.wikipedia.org 23. Otros Modelos / 23 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Documentos de Scrum 23 Burn down chart Fuente: http://en.wikipedia.org 24. Otros Modelos / 24 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Beneficios del uso de Scrum Entrega de un producto funcional al final de cada Sprint El producto es dividido en subconjuntos plenamente manejables y entendibles. Requerimientos inestables son identificados a tiempo. Todo el equipo de desarrollo conoce el estado del proyecto. Se establece una relacin de confianza entre clientes y desarrolladores. 24 25. Otros Modelos / 25 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Limitaciones del uso de Scrum Difcil de aplicar en grandes proyectos Requiere de un equipo con habilidades transversales Presupone un cliente muy activo e involucrado continuamente en el desarrollo. No se genera documentacin que diversas normativas internacionales solicitan. 25 26. Otros Modelos / 26 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Otros enfoques a considerar 27. Otros Modelos / 27 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Prototipo Identifica los requerimientos del cliente ms explcitamente o evala la factibilidad del diseo de una solucin. Muy til cuando los requerimientos son inciertos o para clarificar la interfaz de usuario. Podra ser tambin utilizada en pruebas ya que los resultados de las pruebas podran ser verificados con el prototipo. Mejora el involucramiento del usuario a travs de un modelo tangible del sistema. 28. Otros Modelos / 28 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Ingeniera Concurrente Utilizado para acelerar la entrega de desarrollos incrementales en paralelo. Usado cuando el tiempo es esencial. Los problemas surgen cuando los primeros incrementos son inmediatamente incorporados en los siguientes incrementos. Incrementa esfuerzo en trminos de planificacin y comunicacin. Requiere el involucramiento del cliente en un nmero de iteraciones concurrentes. 29. Otros Modelos / 29 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 El mejor ciclo de vida para un proyecto 30. Otros Modelos / 30 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 El mejor ciclo de vida para un proyecto Cascada Proyectos medianos/pequeos Requerimientos claros y bien entendidos Restricciones de tiempo y costo Incremental Proyecto puede ser divididos en una serie de mini proyectos til para proyectos de alto riesgo o cuando los recursos son limitados Bosquejo de requerimientos puede ser bien entendido Tiempo y restricciones de costo pueden ser especificados para cada incremento 31. Otros Modelos / 31 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 El mejor ciclo de vida para un proyecto Iterativo o Evolutivo Proyectos con requerimientos inciertos til cuando la calidad es ms importante que el tiempo o costo til para equipos colaborativos pequeos de usuarios/desarrolladores con restricciones de tiempo y costo Tienden a ser inapropiados para sistemas de misin crticos y sistemas con requerimientos regulatorios. Enfoques hbridos son posibles Proyectos grandes para los cuales una arquitectura estable puede ser definida pero an existe cierta incertidumbre. 32. Otros Modelos / 32 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 David Boddys project profile tool 33. Otros Modelos / 33 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 David Boddys project profile tool 34. Otros Modelos / 34 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Puntos para recordar Scrum es una metodologa de desarrollo gil La principal fase del modelo Scrum es el Sprint Los roles de Scrum son Product Owner, Scrum Master y el Equipo de Desarrollo Scrum entrega un producto funcional al final de cada Sprint Scrum es difcil de aplicar en grandes proyectos David Boddys project profile tool 34 35. Otros Modelos / 35 Ingeniera de Software I MSc. Carlos Mera Gmez 2013 Prxima Sesin Visin y gestin de proyectos