Prototipo
El Modelo de prototipos, en Ingeniera 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 diseo rpido se centra en una representacin de aquellos aspectos del
software que sern visibles para el cliente o el usuario final. Este diseo conduce a
la construccin de un prototipo, el cual es evaluado por el cliente para una
retroalimentacin; gracias a sta se refinan los requisitos del software que se
desarrollar. La interaccin 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.
Plan rpido.
Modelado, diseo rpido
Construccin del Prototipo
Desarrollo, entrega y retroalimentacin
Comunicacin
Entrega del desarrollo final
Ventajas[editar]
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.
Tambin 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 debera tomar la interaccin
humano-mquina
Se puede reutilizar el cdigo
La construccin de prototipos se puede utilizar como un modelo del proceso
independiente, se emplea ms comnmente como una tcnica susceptible de
implementarse dentro del contexto de cualquiera de los modelos del proceso
expuestos. Sin importar la forma en que ste se aplique, el paradigma de
construccin de prototipos ayuda al desarrollado de software y al cliente a
entender de mejor manera cul ser el resultado de la construccin cuando los
requisitos estn satisfechos. De esta manera, este ciclo de vida en particular,
involucra al cliente ms profundamente para adquirir el producto.
Inconvenientes[editar]
El usuario tiende a crearse unas expectativas cuando ve el prototipo de
cara al sistema final. A causa de la intencin de crear un prototipo de forma
rpida, se suelen desatender aspectos importantes, tales como la calidad y
el mantenimiento a largo plazo, lo que obliga en la mayor parte de los casos
a reconstruirlo una vez que el prototipo ha cumplido su funcin. Es
frecuente que el usuario se muestre reaccin a ello y pida que sobre ese
prototipo se construya el sistema final, lo que lo convertira en un prototipo
evolutivo, pero partiendo de un estado poco recomendado.
En aras de desarrollar rpidamente el prototipo, el desarrollador suele
tomar algunas decisiones de implementacin poco convenientes (por
ejemplo, elegir un lenguaje de programacin incorrecto porque proporcione
un desarrollo ms rpido). Con el paso del tiempo, el desarrollador puede
olvidarse de la razn 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...
Etapas
Recoleccin y refinamiento de requisitos
Modelado, diseo rpido
Construccin del Prototipo
Desarrollo, evaluacin del prototipo por el cliente
Refinamiento del prototipo
Producto de Ingeniera
Cmo se lleva a cabo
Se comienza elaborando un prototipo del producto final: qu aspecto tendr, cmo
funcionar. Para muchas interfaces de usuario, este modelo puede resultar tan
simple como unos dibujos con lpiz y papel o tan complejo como el propio cdigo
operativo final. Para interfaces de hardware o estaciones de trabajo, el modelo
puede consistir en maquetas de espuma, caucho, cartn o cartulina. Cuanto ms
prximo se encuentre el prototipo al producto real, mejor ser la evaluacin, si
bien se pueden obtener magnficos resultados con prototipos de baja fidelidad.
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.
Tambin 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 debera tomar la interaccin
humano-mquina.
Para que sea efectivo
Debe ser un sistema con el que se pueda experimentar
Debe ser comparaticamente barato(menor que el 10%)
Debe desarrollarse rapidamente
Enfasis en la interfaz de usuario
Equipo de desarrollo reducido
Herramientas y lenguajes adecuadas
Desventajas
Debido a que el usuario ve que el prototipo funciona piensa que este es el
producto terminado y no entienden que recin se va a desarrollar el
software.
El desarrolador puede caer en la tentacin de ampliar el prototipo para
construir el sistema final sin tener en cuenta los compromisos de calidad y
mantenimiento que tiene con el cliente
Tipos de Modelo de Prototipos
Modelo de Prototipos rpido: Metodologa de diseo que desarrolla
rpidamente nuevos diseos, los evala y prescinde del prototipo cuando el
prximo diseo es desarrollado mediante un nuevo prototipo.
Modelo de Prototipos reutilizable: Tambin conocido como "Evolutionary
Prototyping"; no se pierde el esfuerzo efectuado en la construccin 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 diseo de moldes en la fabricacin con plsticos o en el
diseo de carroceras de automviles.
Modelo de Prototipos Modular: Tambin conocido como Prototipado
Incremental (Incremental prototyping); se aaden nuevos elementos sobre
el prototipo a medida que el ciclo de diseo progresa.
Modelo de Prototipos Horizontal: El prototipo cubre un amplio nmero de
aspectos y funciones pero la mayora no son operativas. Resulta muy til
para evaluar el alcance del producto, pero no su uso real.
Modelo de Prototipos Vertical: El prototipo cubre slo un pequeo nmero
de funciones operativas. Resulta muy til para evaluar el uso real sobre una
pequea parte del producto.
Modelo de Prototipos de Baja-fidelidad: El prototipo se implementa con
papel y lpiz, emulando la funcin 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 ms cercana posible al diseo real en trminos de aspecto,
impresiones, interaccin y tiempo.
Tipos de prototipos
Hay dos clases de prototipos el desechable y el evolucionario.
El desechable: nos sirve para eliminar dudas sobre lo que realmente quiere
el cliente adems para desarrollar la interfaz que ms le convenga al
cliente.
El evolucionario: es un modelo parcialmente construido que puede pasar de
ser prototipo a ser software pero no tiene una buena documentacin y
calidad.