Introducción:
A partir de la ingeniería tradicional de construir productos de software
nace la ingeniería de software como aplicación de modelos y formas para
realizarlos, la cual nos condiciona a tener como norte precisiones y
seguridades que en otros ámbitos tiene la ingeniería.
Anteriormente existían varios enfoques los cuales buscaban abordar de
manera sistemática la planificación, análisis, diseño e implementación de los
productos, proyectos de desarrollo de software ya sean de gran escala y
aplicaciones pequeñas, lo que buscaban es la mejora de los enfoques
precedentes.
En este apartado vamos a trabajar, analizar y explicar la metodología de
desarrollo orientada a prototipos las ventajas y desventajas que presenta esta
metodología.
En muchos casos esta metodología se considera como un método
independiente, este método pertenece a los ..
Prototipo es una representación o modelo del sistema a desarrollar que,
a diferencia de un modelo de simulación, incorpora componentes del producto
real, este será una.
Un prototipo tiene un funcionamiento limitado en cuanta a capacidades,
confiabilidad o eficiencia.
En la utilización de este método se inicia con la definición de los
objetivos globales para el software para luego pasar a identificar los
requisitos conocidos y las áreas del esquema en donde es necesaria más definición.
Entonces se plantea con rapidez una iteración de construcción de prototipos y
se presenta el modelado.
Con todo esto que se realiza llegamos a obtener un diseño rápido de lo
que necesitamos para realizar nuestro proyecto.
El objetivo de este diseño es centrarse en una representación de los
aspectos del software que sean visibles para el cliente o para el usuario final
lo que podrá ser la configuración de la interfaz con el usuario y el formato de
los despliegues de salida.
Con este diseño rápido nos conducimos a la construcción de un prototipo,
este a su vez es evaluado por el cliente o por el usuario para una
retroalimentación, con esta ayuda por parte de los usuarios se logra refinar
los requisitos del software que se desarrollara.
FASES PARA LA METODO DE PROTOTIPOS
1.- Investigación preliminar
En esta etapa lo esencial es determinar el problema y su ámbito, la
importancia y los efectos potenciales que tendrán sobre la organización,
identificar una idea general de la solución para realizar un estudio de
factibilidad que determine la factibilidad de una solución software.
2.- Definición de los requerimientos del sistema
Esta es la fase mas importante de todo el ciclo de vida del método de
prototipos, el objetivo en esta fase es determinar todos los requerimientos y
deseos que los usuarios tienen en relación al proyecto que se esta deseando
implementar.
Aquí el desarrollador interactúa con el usuario y sus necesidades
mediante la construcción, demostración y retroalimentaciones del prototipo.
2.1.- Análisis de los requerimientos
Esta etapa es un proceso que busca aproximar las visiones del usuario y
del desarrollador mediante sucesivas iteraciones.
Para la definición de los requerimientos
tenemos cinco etapas entre dos de las cuales se establece un ciclo interactivo
- Análisis grueso y especificación
En esta fase se busca desarrollar un
diseño básico para el prototipo inicial.
Lo que se consigue en esta fase en
obtener un prototipo inicial, aquí el desarrollador debe concentrarse en
construir un sistema con la máxima funcionalidad, poniendo énfasis en la
interfaz del usuario.
Los objetivos de esta etapa son obtener
por parte de los usuarios la especificación de los requerimientos adicionales
del sistema y verificar que el prototipo desarrollado lo haya sido en
concordancia con la definición de requerimientos del sistema.
En el saco de que los usuarios
identifiquen fallas en el prototipo el desarrollador corrige dichas fallas
antes de continua con la siguiente evaluación.
Se modifica y se evalúa cuantas veces
sea necesario hasta que los requerimientos del sistemas sean satisfechos.
En el proceso de evaluación se efectúan
cuatro pasos separados:
- Preparación.
- Demostración.
- Uso del prototipo.
- Discusión de comentarios.
Esta es la fase en donde se decide si el
prototipo es aceptado o modificado.
Se da cuando la definición de
requerimientos del sistema es alterada en la etapa de evaluación. El
desarrollador entonces debe modificar el prototipo de acuerdo a los comentarios
hechos por los usuarios.
Una vez que se ha desarrollado un
prototipo estable y completo, es necesario ponerse de acuerdo en relación a
aspectos de calidad y de representación del sistema.
3.- Diseño técnico
En esta etapa el sistema debe ser rediseñado y tener la respectiva
documentación guiándose en los estándares que tiene la organización la cual
servirá como ayuda en mantenciones futuras del mismo.
En este punto existen dos etapas:
- Producción de una documentación de
diseño la cual específica y describe la estructura del software,
interfaces de usuario, funciones y el control de flujo.
- Producción de todo lo requerido para
promover cualquier mantención futura del software.
4.- Programación y prueba
En esta etapa es donde los cambios identificados en el diseño técnico
son implementados y probados para asegurar la corrección y completitud de los
mismos con respecto a los requerimientos.
Las pruebas serán de realizarse tantas veces sea necesarias para
verificar cualquier tipo de anomalía en el sistema.
5.- Operación y mantención
En esta fase se realiza ya la instalación y mantención del software, la
complejidad en esta caso resulta menor ya que en las etapas anteriores los
usuarios han trabajado con el sistemas al momento de hacer las pruebas de
prototipos, además la mantención también debería ser una fase menos importante,
ya que se supone que el refinamiento del prototipo permitiría una mejor
claridad en los requerimientos, mediante lo cual las mataciones perfectivas se
reducirían.
Si existiese el caso en el cual se requiera una manutención entonces el
proceso de prototipo es repetido y se definirá un nuevo conjunto de
requerimientos.
La siguiente figura nos indica el ciclo de vida de los modelos
orientados a prototipos.
RAZONES PARA USAR ESTE MODELO
- Con este modelo se puede ilustrar
los formatos de datos de entrada, mensajes, informes y diálogos al
usuario, mediante lo cual se logra un mejor entendimiento de las necesidades.
Se logra una exploración de los aspectos técnicos del producto propuesto.
- Otra de las razones para usar un
prototipo es cuando el modelo de fases análisis - diseño - instrumentación
es inapropiado, es decir cuando el sistema se lo puede realizar solamente
con esta metodología.
VENTAJAS:
- Útil cuando el cliente conoce los
objetivos generales para el software, pero no identifica los requisitos
detallados de entrada, procesamiento o salida.
- Existe una reducción de la
incertidumbre y del riesgo.
- Se reduce el tiempo y costos.
- Hay incremento en la aceptación del
nuevo sistema.
- Mejora la administración de
proyectos.
- Existe mayor comunicación entre los
desarrolladores y el usuario.
DESVENTAJAS:
- Se depende de las herramientas de
software para el éxito ya que la necesidad de disminución de incertidumbre
depende de las iteraciones del prototipo, entre más iteraciones existan
mejor y este último se logra mediante el uso de mejores herramientas lo
que hace a este proceso dependiente de las mismas.
- No es posible usar la metodología en
a todos los sistemas.
Puede existir una mala interpretación que pueden hacer los usuarios del
prototipo, al cual pueden confundir con el sistema terminado