Prototipos informaticos
dayanagalviz17 de Junio de 2014
2.999 Palabras (12 Páginas)171 Visitas
PROTOTIPOS INFORMATICOS
Es un modelo del comportamiento del sistema que puede ser usado para entenderlo completamente o ciertos aspectos de él y así clarificar los requerimientos. Un prototipo es una representación de un sistema, aunque no es un sistema completo, posee las características del sistema final o parte de ellas”
Modelo o maqueta del sistema que se construye para comprender mejor el problema y sus posibles soluciones:
• Evaluar mejor los requisitos.
• Probar opciones de diseño.
Características de los prototipos
• Funcionalidad limitada.
• Poca fiabilidad.
• Características de funcionalidad pobres.
• Alto grado de participación del usuario el cual evalúa los prototipos, propone mejoras y detalla requisitos.
• Alto grado de participación del analista de sistemas, ya que en muchos casos los usuarios no pueden indicar los requisitos sin tener experiencia con el sistema.
• El prototipo da mayor conocimiento al usuario y analistas ayudando a que el usuario aprenda a utilizar el sistema.
Uso de prototipo
Se presenta al cliente un prototipo para su experimentación.
• Ayuda al cliente a establecer claramente los requisitos.
Ayuda a los desarrolladores a:
• Validar corrección de la especificación.
• Aprender sobre problemas que se presentarán durante el diseño e implementación del sistema.
• Mejorar el producto.
• Examinar viabilidad y utilidad de la aplicación.
Tipos de prototipos
Prototipado de interfaz de usuario: modelos de pantallas.
Prototipado funcional (operacional): implementa algunas funciones, y a medida que se comprueba que son las apropiadas, se corrigen, refinan, y se añaden otras.
Modelos de rendimiento: evalúan el rendimiento de una aplicación crítica (no sirven al análisis de requisitos).
Rápido o desechable:
• Sirve al análisis y validación de los requisitos.
• Después se redacta la especificación del sistema y se desecha el prototipo.
• La aplicación se desarrolla siguiendo un paradigma diferente.
• Problema: cuando el prototipo no se desecha, y termina convirtiéndose en el sistema final.
Evolutivos:
• Comienza con un sistema relativamente simple que implementa los requisitos más importantes o mejor conocidos.
• El prototipo se aumenta o cambia en cuanto se descubren nuevos requisitos.
• Finalmente, se convierte en el sistema requerido.
• Actualmente se usa en el desarrollo de sitios Webs y en aplicaciones de comercio electrónico.
Vertical
• Desarrolla completamente alguna de las funciones.
Horizontal
• Desarrolla parcialmente todas las funciones.
Herramientas de prototipado.
• Lenguajes dinámicos de alto nivel.
• Lenguajes de cuarta generación (4GLs) (programación de BBDD).
• Ensamblaje de componentes y aplicaciones.
Lenguajes Dinámicos de alto nivel.
Muy usados:
• Smalltalk (basado en objetos, sistemas interactivos)
• Java (basado en objetos, sistemas interactivos)
• Prolog (lógico, procesamiento simbólico)
• LISP (basado en listas, procesamiento simbólico)
Elección del lenguaje:
• ¿Cuál es el dominio de aplicación?
• ¿Cuál es la interacción de usuario requerida?
• (Java, Smalltalk se integran bien con las interfaces Web.)
• ¿Cuál es el entorno proporcionado para el lenguaje
Lenguajes de 4ª Generación.
• La mayoría de aplicaciones de gestión son interactivas e implican la manipulación de una BD y la producción de salidas que involucran organizar y dar formato a esos datos.
• 4GL: lenguaje de programación de BBDD (y su entorno de desarrollo), que contiene conocimiento de la BD y operaciones para manipulación de la misma.
• 4GL: lenguaje no Procedimental.
• Reducen claramente los costos del desarrollo.
• Muy usados en prototipado evolutivo.
• Muchos 4GLs permiten el desarrollo de interfaces de
• BBDD basadas en navegadores Web.
• Generan SQL.
• Menos eficientes que los lenguajes de programación convencionales.
• Reducen claramente los costos del desarrollo.
Ensamblaje de componentes y aplicaciones.
El desarrollo de prototipos con reutilización comprende dos niveles:
1. El nivel de aplicación, en el que una aplicación completa se integra con el prototipo
• P.ej., si el prototipo requiere procesamiento de textos, se puede integrar un sistema estándar de procesamiento de textos (MS Office).
B. El nivel de componente, en el que los componentes se integran en un marco de trabajo estándar.
• Visual Basic, TCL/TK, Python, Perl…
- Lenguajes de alto nivel sin tipos, con kits de herramientas gráficas.
- Desarrollo rápido de aplicaciones pequeñas y relativamente sencillas, construidas por una persona o conjunto de personas.
- No existe una arquitectura explícita del sistema.
• CORBA, DCOM, JavaBeans
- Junto con un marco arquitectónico, es más apropiado para sistemas grandes.
Prototipos de Interface de Usuario.
Las descripciones textuales y los diagramas no son suficientemente buenos para expresar los requisitos de la interfaz.
La construcción de prototipos evolutivos con la participación del usuario final es la forma más sensata de desarrollar una interfaz.
Los usuarios deben estar implicados en la evaluación y evolución del prototipo.
Herramientas:
• Generadores de interfaz (4GLs, Visual Basic, etc.).
• Editores de páginas Web.
• Herramientas CASE.
- Formularios, pantallas, generación de código…
• Bocetos en papel.
• Aplicaciones de dibujo
- Harward Graphics, etc.
• MS PowerPoint.
• Etc.
FASES
Las fases que comprende el método de desarrollo orientado a prototipos serían:
• Investigación preliminar. Las metas principales de esta fase son: determinar el problema y su ámbito, la importancia y sus efectos potenciales sobre la organización por una parte y, por otro lado, identificar una idea general de la solución para realizar un estudio de factibilidad que determine la factibilidad de una solución software.
• Definición de los requerimientos del sistema. El objetivo de esta etapa es registrar todos los requerimientos y deseos que los usuarios tienen en relación al proyecto bajo desarrollo. Esta etapa es la más importante de todo el ciclo de vida, es aquí donde el desarrollador determina los requisitos mediante la construcción, demostración y retroalimentaciones del prototipo. Por lo mismo esta etapa será revisada con más detalle luego de esta descripción.
• Diseño técnico. Durante la construcción del prototipo, el desarrollador ha obviado el diseño detallado. El sistema debe ser entonces rediseñado y documentado según los estándares de la organización y para ayudar a las mantenciones futuras. Esta fase de diseño técnico tiene dos etapas: por un lado, la producción de una documentación de diseño que especifica y describe la estructura del software, el control de flujo, las interfaces de usuario y las funciones y, como segunda etapa, la producción de todo lo requerido para promover cualquier mantención futura del software.
• Programación y prueba. 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.
• Operación y mantención. La instalación del sistema en ambiente de explotación, en este caso, resulta de menor complejidad, ya que se supone que los usuarios han trabajado con el sistema al hacer las pruebas de prototipos. Además, la manutenció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, por lo cual las mantenciones perfectivas se reducirían. Si eventualmente se requiriese una manutención entonces el proceso de prototipado es repetido y se definirá un nuevo conjunto de requerimientos.
La fase más importante corresponde a la definición de requerimientos, la cual correspondería a un proceso que busca aproximar las visiones del usuario y del desarrollador mediante sucesivas iteraciones. La definición de requerimientos consiste de cinco etapas entre dos de las cuales se establece un ciclo iterativo:
• Análisis grueso y especificación. El propósito de esta subfase es desarrollar un diseño básico para el prototipo inicial.
• Diseño y construcción. El objetivo de esta subfase es obtener un prototipo inicial. El desarrollador debe concentrarse en construir un sistema con la máxima funcionalidad, poniendo énfasis en la interface del usuario.
• Evaluación. Esta etapa tiene dos propósitos: extraer a 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. Si los usuarios identifican fallas en el prototipo, entonces el desarrollador simplemente corrige el prototipo antes de la siguiente evaluación. El prototipo es repetidamente modificado y evaluado hasta que todos los requerimientos del sistema han sido satisfechos. El proceso de evaluación puede ser dividido en
...