Sabás Martín Mendívil Alvarado José Luis Robles Reyes Ariadna Lucía Ochoa Morales Fausto Alberto Acuña López
โ ข Este modelo se describe como una alternativa de enfoque para la definiciรณn de los requerimientos de desarrollo que consiste en capturar un conjunto inicial de necesidades e implementarlas rรกpidamente con la intenciรณn declarada de expandirlas y refinarlas iterativamente al ir aumentando la comprensiรณn que del sistema tienen los usuarios y quien lo desarrolla.
• Este modelo comienza con la recolección de requisitos, el desarrollador y el cliente definen los objetivos globales para el software, originándose un diseño rápido que se centra en una representación de esos aspectos del software que sean visibles para el usuario/cliente. De este diseño surge la construcción de un prototipo y este es evaluado por el cliente/usuario. La interacción ocurre cuando el prototipo satisface las necesidades del cliente.
Las etapas del modelo son: •A) Investigación preliminar. •B) Colecta y refinamiento de los requerimientos y proyecto rápido: • - Análisis y especificación del prototipo. • - Diseño y construcción del prototipo. • - Evaluación del prototipo por el cliente. • - Renacimiento del prototipo. • •C) Diseño técnico. •D) Programación y test. •E) Operación y mantenimiento.
• Evaluar la solicitud del software para determinar si el sistema es candidato para la construcción de un prototipo. Considerando si es necesario presentar la interacción usuario-sistema y tomando en cuenta la complejidad del desarrollo del propio prototipo. • Elaborar una representación abreviada de los requisitos. Utilizando alguno de los modelos mencionados anteriormente (usuario/cliente – cliente/usuario).
• Crear un conjunto de especificaciones de diseño para el prototipo. Centrándose en los aspectos de mas alto nivel y no en el detalle. • Crear y probar el software del prototipo. De ser posible utilizar herramientas automatizadas para tal efecto, como lenguajes de cuarta generación, módulos de código reusables, herramientas RAD o paquetes especializados en prototipos.
• Presentar el prototipo al usuario y orientarlo a que sea él quien lo “opere”. Aquí es donde el usuario podrá validar sus propios requerimientos y sugerir las modificaciones necesarias.
• Repetir los pasos IV y V hasta que todos los requisitos queden formalizados.
โ ข El modelo de construcciรณn de prototipos se recomienda especialmente cuando los requerimientos cambian frecuentemente, cuando no se tiene la suficiente participaciรณn del usuario o cuando no se tienen suficientemente especificados los requerimientos.
• Dentro del enfoque de prototipos se pretende que el modelo sea operante, es decir, una colección de programas de computadora que simulan algunas o todas las funciones que el usuario desea. Para lograr lo anterior se utilizan las siguientes herramientas de software: • • • • • •
- Un diccionario de datos integrado - Un generador de pantallas - Un generador de reportes no guiado por procedimientos - Un lenguaje de programación de cuarta generación - Un lenguaje de consultas no guiado por procedimientos - Medios poderosos de administración de base de datos
• Una buena pregunta es: ¿Quién está mas capacitado para desarrollar un modelo prototipo?. • Los buenos candidatos son aquellos que tienen las siguiente características: • El usuario no puede o no está dispuesto a examinar modelos abstractos en papel, tales como diagramas de flujo de datos. • El usuario no puede o no está dispuesto a articular sus requerimientos de ninguna forma y sólo se pueden determinar sus requerimientos mediante un proceso de tanteo, o ensayo y error.
• Se tiene la intención de que el sistema sea en línea y con operación total por la pantalla, en contraposición con los sistemas de edición, actualización y reportes operados por lote. • El sistema no requiere la especificación de grandes cantidades de detalles algorítmicos, ni de muchas especificaciones de procesos para describir los algoritmos con los cuales se obtienen resultados.
• Una ventaja importante es que el usuario va “viendo” la evolución del sistema • Permite corregir errores y con este podemos envolvernos en el tema y hacer una participación interactiva cliente – proveedor. • Consiste en un procedimiento que permite al equipo de desarrollo diseñar y analizar una aplicación que representa el sistema que sería implementado. • El empleo de prototipos para el desarrollo de software son útiles para comunicar, discutir y definir las ideas entre los diseñadores y las partes responsables (clientes).
• El principal inconveniente es que se desconoce el tiempo que se tardará en crear un producto aceptable. • No se sabe cuantas iteraciones se tendrán que realizar. • Otro inconveniente es que se pueden adoptar prácticas de programación de prueba-y-error, sin un análisis y diseño formales previos. • Por otro lado, este esquema presiona al ingeniero a trabajar bajo mucha presión pues la creación de los prototipos debe ser muy rápida y eso tal vez podría ocasionar que nos equivoquemos y tengamos que volver a hacer otro y otro prototipo
• Es frecuente que los clientes no sepan lo que quieren, pero cuando ven algo y lo utilizan, pronto saben lo que no quieren. Es por esto que un prototipo nos es de gran ayuda. • Los prototipos responden a preguntas y apoyan el trabajo de los diseñadores probando ideas, clarificando requisitos o definiendo alternativas. • Hay dos clases de prototipos el desechable y el evolucionario. • El desechable nos sirve para eliminar dudas sobre lo que realmente quiere el cliente además para desarrollar la interfaz que más 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 documentación y calidad.
• http://cflores334.blogspot.es/1192848180/ • http://sistemas.itlp.edu.mx/tutoriales/analisis/25.htm • http://rguerrero334.blogspot.es/1192897080/ • http://www.mitecnologico.com/Main/ModeloConstruccionD ePrototipos • http://msilva334.blogspot.es/1192766340/