Este
modelo es básicamente prueba y error ya que si al usuario no le gusta una parte
del prototipo significa que la prueba fallo por lo cual se debe corregir el
error que se tenga hasta que el usuario quede satisfecho.
Su ciclo de vida abarca las siguientes
actividades:
- Recolección y refinamiento de requisitos
- Modelado, diseño rápido
- Construcción del Prototipo
- Desarrollo, evaluación del prototipo por el cliente
- Refinamiento del prototipo
- Producto de Ingeniería
El
prototipo es una versión funcional de un sistema de información o de parte de
éste, pero su propósito es el de servir de modelo preliminar.
Una vez
en operación, el prototipo se refinará más aún hasta que cumpla con precisión
los requerimientos del usuario.
Una
vez finalizado el diseño, el prototipo se puede convertir en un sistema en producción
refinado.
La
creación de prototipos consiste en construir rápida y económicamente un sistema
experimental para que lo evalúen los usuarios finales.
Además el
prototipo debe ser construido en poco tiempo, usando los programas adecuados y
no se debe utilizar mucho dinero pues a partir de que este sea aprobado
nosotros podemos iniciar el verdadero desarrollo del software.
Pero eso si al construir el prototipo nos asegura
que nuestro software sea de mejor calidad, además de que su interfaz sea de agrado para el usuario. Un prototipo podrá ser construido solo si
con el software es posible experimentar.
La iteración ocurre cuando el prototipo se pone a
punto para satisfacer las necesidades del
cliente, permitiendo al mismo tiempo que el desarrollador comprenda mejor lo
que necesita hacer.
Lo ideal sería que el prototipo sirviera como un
mecanismo para identificar los requisitos de software.
Ventajas
No modifica el flujo del ciclo de vida
- Reduce el riesgo de construir productos que no satisfagan las necesidades de los usuarios
- Reduce costo y aumenta la probabilidad de éxito
- Exige disponer de las herramientas adecuadas
- Este modelo es útil cuando el cliente conoce los objetivos generales para el software, pero no identifica los requisitos detallados de entrada, procesamiento o salida.
- También ofrece un mejor enfoque cuando el responsable del desarrollo del software está inseguro de la eficacia de un algoritmo, de la adaptabilidad de un sistema operativo o de la forma que debería tomar la interacción humano-máquina.
- Útil cuando los requerimientos son inciertos o cuando la interfaz del usuario final es muy importante.
- Promueve la participación del usuario.
- Se puede reutilizar el código.
- Ayuda al desarrollador de software y al cliente a entender de mejor manera cuál sera el resultado de la construcción cuando los requisitos estén satisfechos.
Desventajas
- Debido a que el usuario ve que el prototipo funciona piensa que este es el producto terminado y no entienden que recién se va a desarrollar el software.
- El desarrolador puede caer en la tentación de ampliar el prototipo para construir el sistema final sin tener en cuenta los compromisos de calidad y mantenimiento que tiene con el cliente.
Características
- El prototipo funcional evolutivo desarrolla un comportamiento que satisface los requisitos y necesidades que se han entendido claramente.
- Se va modificando y desarrollando sobre la marcha, según las apreciaciones del cliente. Esto ralentiza el proceso de desarrollo y disminuye la fiabilidad, puesto que el software está constante mente variando, pero, a la larga, genera un producto más seguro, en cuanto a la satisfacción de las necesidades del cliente.
- Impropio para sistemas complejos y grandes.
- Puede omitir pasos en el análisis, la documentación y las pruebas.
No hay comentarios:
Publicar un comentario