Modelo de Prototipo.

El mundo se maneja con un software Universidad Tecnológica de Puebla Organismo Público Descentralizado Carrera: Ingeni

Views 39 Downloads 1 File size 463KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

El mundo se maneja con un software

Universidad Tecnológica de Puebla Organismo Público Descentralizado

Carrera: Ingeniería en Tecnologías de la Información y Comunicación

Materia: Introducción al análisis y diseño de sistemas

Prof. Areli Torres Gonzales

Tema: Modelo de desarrollo de software para proyecto

Equipo 5: Leticia Benítez Rendón Silvia Ramírez Bautista Luis Alfredo Lucas Dorantes Luis Enrrique Huerta Mora Juan Onofre Romero

Elección de modelo:

Modelo de prototipo Este modelo es utilizado para trabajar con clientes hasta evolucionar a un sistema final, a partir de una especificación inicial. Junto con el cliente necesitaremos definir los objetivos globales para el software. Después crearemos un diseño rápido que se centra en una representación de esos aspectos del software que serán visibles para el usuario/cliente. Así el cliente podrá ver el avance que se va dando conforme a los datos obtenidos. Será más fácil ajustar pequeños detalles o modificar algunos de los requerimientos. El cliente se sentirá más a gusto porque podrá ir evaluando los avances que se van dando de acuerdo al software por medio de maquetas. No es necesario que el cliente tenga que esperar hasta que el software este hecho para poder analizarlo. Con las maquetas podrá saber la manera en que funcionara el software como tal y modificar algo si es que no se siente cómodo con alguna cuestión.

JUSTIFICACION DEL PROYECTO Partiendo de una necesidad suscitada en un depósito de la cervecería Cuauhtémoc se ha optado por desarrollar un modelo de diseño de software ajustado a cada una de las necesidades tanto del cliente como de las necesidades del local. En tanto este equipo preocupado por el problema que se tiene ahora en el depósito, se está realizando un software que le permita al usuario llevar el control tanto de entrada de producto al local como la salida del mismo y la falta de este. Pues sin darse cuenta se tiene un descontrol del producto en general y esto nos lleva a poder controlar y así tener una mejor administración al decir administración también nos referimos a la administración económica. Resulta para esta empresa ser un software eficiente y de calidad aunque este mismo lleve al desempleo a muchos trabajadores los cuales llevaban el control manual del producto, sin embargo resulta ser muy importante para la empresa.

Ventajas y desventajas: Modelo de prototipos Modificación del Sistema en etapas tempranas de su desarrollo: El éxito del uso del prototipo depende de qué tan pronto y con qué frecuencia se reciba la retroalimentación del usuario para hacer cambios y adecuarlos a las necesidades actuales. Los cambios iníciales durante el desarrollo de un proyecto son menos costosos que si se realizan en etapas tardías, como el prototipo puede cambiar varias veces la flexibilidad y adaptabilidad son su esencia, la pauta del cambio la da la retroalimentación, la cual nos permite conocer la opinión del usuario sobre cambios a la entrada o salida de un proceso, que al evaluarla nos permite obtener los requerimientos y mejorar el sistema. El desarrollo de prototipos implica una inversión en tiempo y en dinero, siempre es menor a la del sistema completo. Los problemas y descuidos de sistemas son más fáciles de detectar en un prototipo. 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 humanomáquina. La construcción de prototipos se puede utilizar como un modelo del proceso independiente, se emplea más comúnmente como una técnica 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 construcción de prototipos ayuda al desarrollador de software y al cliente a entender de mejor manera cuál será el resultado de la construcción cuando los requisitos estén satisfechos. De esta manera, este ciclo de vida en particular, involucra al cliente más profundamente para adquirir el producto. Desventajas: Administración difícil: Dicha dificultad radica en manejar el prototipo como un proyecto dentro del Ciclo de Desarrollo de Sistema sin perder de vista cuál era su propósito. Adoptarlo como el sistema final: Los usuarios y profesionales de sistemas pueden considerar al prototipo como el sistema final cuando aún es incompleto e inadecuado.

El Desarrollo de software por Prototipos Las metodologías de desarrollo de software permiten al desarrollador hacer aplicaciones con estándares de calidad. Una de las metodologías más conocidas es el desarrollo de software basado en prototipos.

El Prototipo El Prototipo consiste en construir un modelo del software a fabricar para que lo evalúe el cliente en conjunto con el programador. La construcción de un prototipo suele ser muy adecuado al comienzo de la etapa de análisis, ya que el modelo es el único medio a través del cual se pueden obtener de una manera más eficaz los requisitos. El modelo evoluciona después hacia la producción del software. Existen dos enfoques para utilizar prototipos, el denominado enfoque cerrado también denominado prototipo desechable tiene como único objetivo el poder demostrar y recolectar requisitos, luego este se desecha y se encara el desarrollo con un paradigma diferente. Por su parte el enfoque abierto o Prototipo evolutivo, utiliza el mismo en las primeras etapa de análisis y luego se continúa con el diseño y la construcción. Muchos usuarios finales suelen mostrar gran entusiasmo cuando se le presenta un prototipo del futuro software por lo que la situación suele ser adecuada para evaluar como seria la futura interacción entre el usuario y el software a construirse. Los prototipos suelen ser adecuados cuando se evalué el proceso de procesamiento sin considerar errores como así también cuando se desarrolla solo él núcleo de la aplicación solo con los procesos básicos del software en construcción. El ciclo comienza con la recolección de requisitos. El cliente y el desarrollador definen los objetivos globales para el software, identifican los requisitos conocidos y que áreas del problema requiere una atención. Luego se procede a realizar un “diseño rápido”. Este diseño rápido busca una representación sobre aspectos del software que serán importantes para el cliente/usuario como ser el diseño de pantallas y operatividad. A seguir se construye el prototipo. Este prototipo lo evalúa el cliente/usuario y se utiliza para refinar los requisitos del software a desarrollar. Cuando el prototipo satisface las necesidades del usuario/cliente y el programador tiene una clara comprensión de lo que se necesita hacer se procede a una nueva iteración.

Muchas veces el prototipo termina siendo la primera implementación del sistema, lo que no suele ser conveniente ya que el prototipo construido puede ser muy lento, muy grande o difícil de utilizar, por ello es mucho mejor desecharlo y comenzar la construcción de una versión nueva que resuelva estos inconvenientes. Cuando sea necesario introducir una nueva tecnología

que reemplace al sistema viejo o que implique que el usuario deba adaptarse a una nueva manera de trabajar con la información, e implique que se deba empezar a dejar a un lado casi por completo la manera en que realizando su trabajo diario, los prototipos suelen ser un gran aliado para evaluar el impacto que esa nueva tecnología traerá o podría trae aparejado. Es aquí donde los desarrolladores y analistas deberán decidir si construir una versión desechable o hacer una para poder entregársela a los clientes de manera evolutiva es decir un prototipo evolutivo. Una vez que la implementación del prototipo pasa los criterios de prueba, se podrá empezar a desplegar la implementación en un entorno de producción. Normalmente, el entorno de producción se despliega por fases. EL despliegue por fases es especialmente importante para las implementaciones que son de gran tamaño y afectan a un número importante usuarios. La implementación por fases suele iniciarse con un pequeño conjunto de usuarios y con el tiempo se amplía el alcance a los demás usuarios hasta que se abarque a todos ellos. Este mismo enfoque suele ser utilizado también para los servicios que brindará el sistema.

Fases del ciclo de vida por Prototipos

MODELO DEL PROTOTIPO FASES:

RECOLECCIÓN Y REFINAMIENTO DE REQUISITOS. COMIENZO: La recolección de datos de lo que se requiere para el software a desarrollar. Los puntos que requiere el usuario en su sistema para llevar un buen funcionamiento. Refinar la asignación de software y representar el dominio de la información que será tratada por el programa. REQUERIMIENTOS FUNCIONALES DE SOFTWARE 1.-Guardar ventas 2.-imprimir facturas 3.-Registro de producto a través de código de barra 4.-Registro de empleados por código 5.-cantidad existente en la bodega 6.-Registro de merma 7.-Registro de productos exportados

8.- Registros de todos los pagos pendientes 9.-Reporte de inventarios 10.- Encargado de bodega

REQUERIMIENTOS NO FUNCIONALES DE SOFTWARE

1.-Registro por fecha, código, en una base de datos. 2.-Impresora HP3500. 3.-Scanear el código con pistola de laser. 4.-Lector de tarjeta con cuatro números. 5.- Con verificación telson. 6.-Registrar con la telson cada producto dañado. 7.-Verificacion de la base de datos. 8.-Buscar por hora, fecha, día. 9.-Reportar el inventario de alguna anomalía. 10.-Registro del personal por medio de lector de tarjeta. DISEÑO RÁPIDO Refina los requisitos del software a desarrollar, en el cual ya se tienen bien en cuenta en lo que consiste cada uno de los requerimientos para que sea mejor entendido por el cliente o usuario. CONSTRUCCIÓN DEL PROTOTIPO Después de haber obtenido lo anterior se realizara la construcción del prototipo. La construcción se realiza cuando enfocamos este modelo dentro del proyecto e introducimos cada una de sus fases englobándolo de la manera correcta y teniendo cierta coherencia.

EVALUACIÓN DEL PROTOTIPO POR EL CLIENTE El cliente evalúa cada uno de los resultados de software que se desarrollo y se ve si, si está bien cada uno de los pasos y si se cumple lo que se requirió.

REFINAMIENTO DEL PROTOTIPO Se refinan los requisitos del software a desarrollar. Se abstrae de los que se requirió y solo lo necesario para el desarrollo, y se analizan los puntos que se realizaron. PRODUCTO DE INGENIERA Esta se lleva acabo como vemos desde el inicio, ya que es cuando elegimos el modelo que se llevara a cabo a lo largo del proyecto, y para k este se lleve a cabo como vemos siempre irá acompañado de la ingeniera ya que es una base para que se realice. PARADA: Con esto concluimos nuestro modelo de prototipo.

CARACTERÍSTICAS DE PROTOTIPO:  Para que sea efectivo

Debe ser un sistema con el que se pueda experimentar. Debe ser comparativamente barato (< 10%). Debe desarrollarse rápidamente. Énfasis en la interfaz de usuario. Equipo de desarrollo reducido. Herramientas y lenguajes adecuados.

DESVENTAJAS: No modifica el flujo del ciclo de vida Reduce el riesgo de construir productos que no Satisfagan las necesidades de los usuarios Reduce costos y aumenta la probabilidad de éxito Exige disponer de las herramientas adecuadas No presenta calidad ni robustez Una vez identificados todos los requisitos mediante el prototipo, se construye el producto de ingeniería. Con la prisa de hacer que funcione el prototipo no se ha tenido en cuenta la calidad del software global o la facilidad de mantenimiento a largo plazo. El desarrollador a menudo hace compromisos de implementación para hacer que el prototipo funcione rápidamente. Se puede utilizar un sistema operativo o lenguaje de programación inadecuado. RIESGOS  El cliente ve funcionando lo que para él es la primera versión del prototipo que ha sido construido con “plastilina y alambres”, y puede desilusionarse al decirle que el sistema aun no ha sido construido.  El desarrollador puede caer en la tentación de ampliar el prototipo para construir el sistema final sin tener en cuenta los compromisos de calidad y de mantenimiento que tiene con el cliente.

Artefactos o Instrumentos: Inicio:  

Documento Visión Especificación de Requisitos

Elaboración: 

Diagramas de caso de uso

Construcción: 

Documento Arquitectura que trabaja con las siguientes vistas: Vista Lógica o o

Diagrama de clases Modelo E-R (Si el sistema así lo requiere)

Vista de Implementación o o o

Diagrama de Secuencia Diagrama de estados Diagrama de Colaboración

Vista Conceptual o

Modelo de dominio

Vista física o

Mapa de comportamiento a nivel de hardware.

Conclusiones: Este trabajo realizado durante este cuatrimestre en esta materia nos sirvió para darnos una visión al querer iniciar un proyecto de software, de cuáles son los requisitos y los medios para llevarlo a cabo en un tiempo determinado haciendo énfasis en el proceso de la administración (Planeación, Organización, Dirección, Control, Modelos de desarrollo de software y el proceso unificado). La investigación que realizamos ha contribuido de manera muy importante para identificar y resaltar los puntos que hay que cubrir y considerar para llevar a cabo un análisis exhaustivo y exitoso de los sistemas de información. Dentro de los puntos que consideramos tienen más importancia dentro de un proyecto de esta naturaleza son el detectar cuáles son los requerimientos entre usuario; las personas que trabajan día a día con los sistemas y programador; que a través de técnicas diseños, modelos y el conocimiento proveniente de las ciencias puede resolver problemas y satisfacer necesidades humanas. Otro punto que consideramos clave para llevar a cabo un proyecto como este, consiste en dar una buena capacitación a los usuarios de los sistemas, si hacemos todo correctamente para desarrollar e implementar los sistemas pero no le damos herramientas a la gente para qué trabaje con ellos es muy probable que todo el trabajo realizado se venga abajo y encuentren la manera de realizar sus tareas sin usarlos; haciendo que todos los beneficios que se tenían en mente no se cumplan. Conforme fuimos realizando este proyecto nos fuimos percatando de muchas cosas que antes no habíamos considerado, que ignorábamos. Pudimos percatarnos como lo hemos venido mencionando de la importancia de saber las necesidades de los usuarios. Nos dejo muchas cosas importantes que reflexionar al querer iniciar un proyecto de software cuales son las ventajas y desventajas de usar un proceso ordenado secuencialmente lógico en el nivel de ver y pensar diferente para poder dar soluciones efectivas en una determinada organización.