miércoles, 3 de abril de 2013

Modelo de prototipo

Modelo de prototipos
 en Ingeniería de software, pertenece a los modelos de desarrollo evolutivo. El prototipo debe ser construido en poco tiempo, usando los programas adecuados y no se debe utilizar muchos recursos.
El diseño rápido se centra en una representación de aquellos aspectos del software que serán visibles para el cliente o el usuario final. Este diseño conduce a la construcción de un prototipo, el cual es evaluado por el cliente para una retroalimentación; gracias a ésta se refinan los requisitos del software que se desarrollará. La interacción ocurre cuando el prototipo se ajusta para satisfacer las necesidades del cliente. Esto permite que al mismo tiempo el desarrollador entienda mejor lo que se debe hacer y el cliente vea resultados a corto plazo.
El paradigma de construcción de prototipos tiene tres pasos:
Análisis de requisitos del sistema· Análisis de requisitos del software· Diseño, desarrollo e implementación del prototipo· Prueba del prototipo.· Refinamiento iterativo del prototipo· Refinamiento de las especificaciones del prototipo· Diseño e implementación del sistema final· Explotación (u operación) y mantenimiento
Tipos de modelo de prototipos
•Modelo de Prototipos rápido: Metodología de diseño que desarrolla rápidamente nuevos diseños, los evalúa y prescinde del prototipo cuando el próximo diseño es desarrollado mediante un nuevo prototipo.
•Modelo de Prototipos reutilizable: También conocido como "Evolutionary Prototyping"; no se pierde el esfuerzo efectuado en la construcción del prototipo pues sus partes o el conjunto pueden ser utilizados para construir el producto real. Mayormente es utilizado en el desarrollo de software, si bien determinados productos de hardware pueden hacer uso del prototipo como la base del diseño de moldes en la fabricación con plásticos o en el diseño de carrocerías de automóviles.
•Modelo de Prototipos Modular: También conocido como Prototipado Incremental (Incremental prototyping); se añaden nuevos elementos sobre el prototipo a medida que el ciclo de diseño progresa.
•Modelo de Prototipos Horizontal: El prototipo cubre un amplio número de aspectos y funciones pero la mayoría no son operativas. Resulta muy útil para evaluar el alcance del producto, pero no su uso real.
•Modelo de Prototipos Vertical: El prototipo cubre sólo un pequeño número de funciones operativas. Resulta muy útil para evaluar el uso real sobre una pequeña parte del producto.
•Modelo de Prototipos de Baja-fidelidad: El prototipo se implementa con papel y lápiz, emulando la función del producto real sin mostrar el aspecto real del mismo. Resulta muy útil para realizar tests baratos.
•Modelo de Prototipos de Alta-fidelidad: El prototipo se implementa de la forma más cercana posible al diseño real en términos de aspecto, impresiones, interacción y tiempo.




Este modelo es útil cuando:
El cliente no identifica los requisitos detallados.
El responsable del desarrollo no está seguro de la eficiencia de un algoritmo, sistema operativo o de la interface hombre-máquina.
Al usar prototipos, las etapas del ciclo de vida clásico quedan modificadas de la siguiente manera:· 
Etapas para la elaboración del Modelo de Prototipo.


http://scruz334.blogspot.es/img/construcciondeprototipos.gif
Desarrollo de prototipo
Permite a los usuarios conocer lo que se espera y del proceso de desarrollo.
•Lenguaje que se va a implementar.
•Pantalla y formatos para la entrada de datos
•Módulos esenciales de procesamiento.
•Salida del sistema.
Fin del prototipo
•Que el usuario incluya elementos suficientes para permitir a las personas utilizar el sistema propuesto, para determinar que les gusta y  que no, e identificar aquellas características que deben cambiar o añadir.
Ventajas
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
Desventajas
A los usuarios les gusta el sistema real y a los desarrolladores les gusta construir algo de inmediato. Sin embargo, la construcción de prototipos se torna problemática por las siguientes razones:
  El cliente ve funcionando lo que para el es la primera versión del prototipo que ha sido construido con “chicle y cable para embalaje”, y puede decepcionarse al indicarle que el sistema aun no ha sido construido.
   El desarrollador puede caer en la tentación de aumentar el prototipo para construir el sistema final sin tener en cuenta los obligaciones de calidad y de mantenimiento que tiene con el cliente.
Inconvenientes
El usuario tiende a crearse una perspectiva cuando le muestran prototipo de cara al sistema final. A causa de la intención de crear un prototipo de forma rápida, se suelen dejar de lado ciertos aspectos importantes, tales como la calidad y el mantenimiento a largo plazo y corto plazo, lo que obliga en la mayor parte de los casos a reconstruirlo una vez que el modelo prototipo ha cumplido con su objetivo. Es común que el usuario se muestre reacción y pida que sobre el prototipo se construya el sistema final, lo que lo convertiría en un
prototipo evolutivo
, pero iniciándose de un estado muy poco recomendado.En apuro de desarrollar rápidamente el prototipo, el desarrollador suele tomar algunas decisiones de implementación poco convenientes (por ejemplo, elegir un lenguaje de programación incorrecto porque proporcione un desarrollo más rápido o manejo menos complejo ). Con el paso del tiempo, el desarrollador puede olvidarse de la razón que le llevó a tomar tales decisiones, con lo que se corre el riesgo de que dichas elecciones pasen a formar parte del sistema final.

No hay comentarios:

Publicar un comentario