8
Evolutionary Prototyping VS Throwaway Prototyping 1 Ingeniería de Software I

Evolutionary Prototyping VS Throwaway Prototyping 1 Ingeniería de Software I

Embed Size (px)

Citation preview

  • Diapositiva 1
  • Evolutionary Prototyping VS Throwaway Prototyping 1 Ingeniera de Software I
  • Diapositiva 2
  • Evolutionary Prototyping VS Throwaway Prototyping Evolutionary PrototypingThrowaway Prototyping Qu es?Es un ciclo de vida en el cual el sistema es desarrollado incrementalmente ya que va modificndose en base a la respuesta del cliente o del usuario final Es un ciclo de vida en el cual el cdigo es desarrollado para explorar factores crticos del xito del sistema y luego es tirado Magnitud del Proyecto Se recomienda utilizarlo en proyectos pequeos Se recomienda utilizarlo en Proyectos grandes Desarrollador Con mucha experiencia Interaccin continua con el cliente Inexperto 2 Ingeniera de Software I
  • Diapositiva 3
  • Evolutionary Prototyping VS Throwaway Prototyping Evolutionary PrototypingThrowaway Prototyping Uso Primero se desarrollan partes del sistema que luego se integran al resto del sistema El prototipo termina siendo el software final. Al principio no siempre se sabe que es lo que se va a construir. Se comienza con las partes mas riesgosas o visibles (interfaz de usuario) Se desarrolla y luego se refina tantas veces como sea necesario en base al feedback del cliente o usuario final. Los desarrolladores del sistema interactan constantemente con el usuario. Se puede usar en: 1.Interfaz de Usuario 2.Formato de Reportes 3.Formato de Grficos 4.Organizacin de base de datos 5.Performance de base de datos 6.Exactitud e implantacin de clculos complejos 7.Desarrollar partes criticas en el momento 8.Performance del sistema Desarrolladores sin experiencia 3 Ingeniera de Software I
  • Diapositiva 4
  • Evolutionary Prototyping VS Throwaway Prototyping Evolutionary PrototypingThrowaway Prototyping Efectos Progreso visible para todos El temprano feedback determina una mayor probabilidad de que el sistema final ser aceptable Disminucin general de lneas de cdigo Baja tasa de defectos Menor curva de esfuerzo Reduce el riesgo del proyecto Mejora la mantenibilidad Provee resistencia a los requerimientos progresivos Provee la posibilidad de entrenar programadores inexpertos Interaccin con otras Practicas Combinado con otras prcticas es un efectivo removedor de defectos que genera bajo costo, eficiencia y corto calendario. Se puede utilizar en muchas clases de proyectos sin tener en cuenta que otras practicas son usadas en l. 4 Ingeniera de Software I
  • Diapositiva 5
  • Evolutionary Prototyping VS Throwaway Prototyping Evolutionary PrototypingThrowaway Prototyping Ventajas Reduccin de calendario Le provee al usuario final o al cliente constante visibilidad, signos de avance y da la impresin de rpido desarrollo. Puede combinarse con User-Interface Prototypaing and Throwaway Prototypaing Sirve como base para Evoluptionary Delivery Disminuy el esfuerzo de desarrollo de un 45% a un 80% Otorga beneficios rpidamente. Velocidad de desarrollo Se puede usar en cualquier etapa del proyecto Reduce potencialmente los riesgos 5 Ingeniera de Software I
  • Diapositiva 6
  • Evolutionary Prototyping VS Throwaway Prototyping Evolutionary PrototypingThrowaway Prototyping Eficacia Reduccin del calendario Visibilidad de progreso Efecto sobre el riesgo de calendario Reduccin del calendario Visibilidad de progreso Efecto sobre el riesgo de calendario Major Risks Calendario Irreal Falsas expectativas Falsas expectativas de performance Diseo Pobre Mantenibilidad Pobre Conservar el prototipo Ineficiente uso del tiempo para prototipar Calendario irreal y falsas expectativas RiesgosCalendario irreal y falsas expectativas Poco control de proyecto Feedback pobre por parte del usuario final o cliente Pobre performance Expectativas de Performance irreales, debido que el prototipo posee Quedarse con el prototipo Uso ineficiente del tiempo de prototipado Calendario irreal y falsas expectativas 6 Ingeniera de Software I
  • Diapositiva 7
  • Evolutionary Prototyping VS Throwaway Prototyping Evolutionary PrototypingThrowaway Prototyping Riesgosmayor performance que el producto final. Diseo pobre: el producto final puede no tener los parches del prototipo, no tener en cuenta el feedback de los usuarios finales o clientes, enfocarse solo en la interface, usar un lenguaje de prototipado que no lo contemple Pobre mantenibilidad: desarrollo descuidado Incremento de funcionalidades Uso ineficiente del tiempo de prototipado: al ser un proceso explorativo e iterativo debe manejarse cuidadosamente. 7 Ingeniera de Software I
  • Diapositiva 8
  • Evolutionary Prototyping VS Throwaway Prototyping Evolutionary PrototypingThrowaway Prototyping Claves para el xito Seleccionarlo al inicio del proyecto Limitar la interaccin entre el prototipo y el usuario final o cliente. Manejar explcitamente las expectativas del usuario final o cliente Usar desarrolladores con experiencia Usar checklist de diseo en cada etapa Usar chacklist de codigo en cada etapa Considerar temprano la performance Elegir un lenguaje de prototipado basado en que tan rpido te permitir crear el cdigo que vas a tirar. Asegurarse de que tanto el manager como el staff tcnico se comprometan a tirar el prototipo Enfocarse en reas o modules pobremente entendidos Tratar las actividades como experimentos y monitorearlas y controlarlas 8 Ingeniera de Software I