Upload
yuri
View
37
Download
0
Embed Size (px)
DESCRIPTION
Ingeniería de Software I. Evolutionary Prototyping VS Throwaway Prototyping. Evolutionary Prototyping VS Throwaway Prototyping. Ingeniería de Software I. Evolutionary Prototyping VS Throwaway Prototyping. Ingeniería de Software I. Evolutionary Prototyping VS Throwaway Prototyping. - PowerPoint PPT Presentation
Citation preview
Evolutionary Prototyping VS
Throwaway Prototyping
1
Ingeniería de Software I
Evolutionary Prototyping VS Throwaway Prototyping Evolutionary Prototyping Throwaway Prototyping
Qué es? Es un ciclo de vida en el cual el sistema es desarrollado incrementalmente ya que va modificándose en base a la respuesta del cliente o del usuario final
Es un ciclo de vida en el cual el código es desarrollado para explorar factores críticos del éxito del sistema y luego es tirado
Magnitud del Proyecto
•Se recomienda utilizarlo en proyectos pequeños
•Se recomienda utilizarlo en Proyectos grandes
Desarrollador •Con mucha experiencia•Interacción continua con el cliente
•Inexperto
2
Ingeniería de Software I
Evolutionary Prototyping VS Throwaway Prototyping Evolutionary Prototyping Throwaway 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 interactúan constantemente con el usuario.
•Se puede usar en:1. Interfaz de Usuario2. Formato de Reportes3. Formato de Gráficos4. Organización de base
de datos5. Performance de base
de datos6. Exactitud e
implantación de cálculos complejos
7. Desarrollar partes criticas en el momento
8. Performance del sistema
• Desarrolladores sin experiencia
3
Ingeniería de Software I
Evolutionary Prototyping VS Throwaway Prototyping Evolutionary Prototyping Throwaway Prototyping
Efectos •Progreso visible para todos•El temprano feedback determina una mayor probabilidad de que el sistema final será aceptable•Disminución general de líneas de código•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
Interacción con otras Practicas
Combinado con otras prácticas 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
Ingeniería de Software I
Evolutionary Prototyping VS Throwaway Prototyping Evolutionary Prototyping Throwaway Prototyping
Ventajas •Reducción de calendario•Le provee al usuario final o al cliente constante visibilidad, signos de avance y da la impresión de rápido 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 rápidamente.
•Velocidad de desarrollo•Se puede usar en cualquier etapa del proyecto•Reduce potencialmente los riesgos
5
Ingeniería de Software I
Evolutionary Prototyping VS Throwaway Prototyping Evolutionary Prototyping Throwaway Prototyping
Eficacia •Reducción del calendario•Visibilidad de progreso•Efecto sobre el riesgo de calendario
•Reducción del calendario•Visibilidad de progreso•Efecto sobre el riesgo de calendario
Major Risks •Calendario Irreal•Falsas expectativas•Falsas expectativas de performance•Diseño Pobre•Mantenibilidad Pobre
•Conservar el prototipo•Ineficiente uso del tiempo para prototipar •Calendario irreal y falsas expectativas
Riesgos •Calendario 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
Ingeniería de Software I
Evolutionary Prototyping VS Throwaway Prototyping Evolutionary Prototyping Throwaway Prototyping
Riesgos mayor performance que el producto final.•Diseño 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
Ingeniería de Software I
Evolutionary Prototyping VS Throwaway Prototyping Evolutionary Prototyping Throwaway Prototyping
Claves para el éxito
•Seleccionarlo al inicio del proyecto•Limitar la interacción entre el prototipo y el usuario final o cliente.•Manejar explícitamente las expectativas del usuario final o cliente•Usar desarrolladores con experiencia•Usar checklist de diseño en cada etapa•Usar chacklist de codigo en cada etapa•Considerar temprano la performance
•Elegir un lenguaje de prototipado basado en que tan rápido te permitirá crear el código que vas a tirar.•Asegurarse de que tanto el manager como el staff técnico se comprometan a tirar el prototipo•Enfocarse en áreas o modules pobremente entendidos•Tratar las actividades como experimentos y monitorearlas y controlarlas
8
Ingeniería de Software I