av milena mora 4 år siden
492
Mer som dette
El objetivo es representar el problema de diseño como el flujo de datos a trávez de un sistema. Un sistema se compone de procesos que transforman a los datos. Estos procesos y los datos que los enlazan forman los cimientos para definir los componentes del programa.
El enfoque de Coad y Yourdon para el análisis orientado a objetos esta basado en cinco capas. Esas cinco capas consisten de capa clase /objeto, capa de estructura, capa de atributos, capa de servicios, y capa de tema. Estas capas dan mayor poder a la representación de la complejidad del análisis y el diseño en sistemas flexibles.
1. Capa Clase Objeto: Esta capa del análisis y diseño indica las clases y objetos. 2. Capa de Estructura: Esta capa captura diversas estructuras de clases y objetos, como las relaciones uno a muchos. 3. Capa de Atributos: Esta capa detalla los atributos de las clases. 4. Capa de Servicios: Esta capa indica los mensajes y comportamientos de los objetos. 5. Capa de Tema: Esta capa divide el diseño en unidades de implementación o asignaciones de equipos.
OMT es una de las metodologías de análisis y diseño orientadas a objetos, más maduras y eficientes que existen en la actualidad. La gran virtud que aporta esta metodología es su carácter de abierta (no propietaria), que le permite ser de dominio público y , en consecuencia, sobrevivir con enorme vitalidad.
El uso del análisis y diseño orientado a objetos puede facilitar mucho la creación de prototipos, y las técnicas de desarrollo evolutivo de software. Los objetos son inherentemente reutilizables, y se puede crear un catálogo de objetos que podemos usar en sucesivas aplicaciones. De esta forma, podemos obtener rápidamente un prototipo del sistema, que pueda ser evaluado por el cliente, a partir de objetos analizables, diseñados e implementados en aplicaciones anteriores.
La metodología OMT emplea tres clases de modelos para describir el sistema: Modelo de objetos. Describe la estructura estática de los objetos del sistema (identidad, relaciones con otros objetos, atributos y operaciones). El modelo de objetos proporciona el entorno esencial en el cual se pueden situar el modelo dinámico y el modelo funcional. Modelo dinámico. Describe los aspectos de un sistema que tratan de la temporización y secuencia de operaciones (sucesos que marcan los cambios, secuencias de sucesos, estados que definen el contexto para los sucesos) y la organización de sucesos y estados. Modelo funcional. Describe las transformaciones de valores de datos (funciones, correspondencias, restricciones y dependencias funcionales) que ocurren dentro del sistema.
diseño
Esta fase es iterativa. Un diseño lógico es establecido a un diseño físico, donde detalles de hilos de ejecución, procesos, rendimiento, tipo de datos, ubicación, estructuras de datos, visibilidad y distribución son establecidas. Un prototipo se crea y es probado. El proceso se repite entre diseño lógico, diseño físico, prototipos y pruebas.
Analisis
comienza por un análisis de flujo de datos, que se utiliza entonces como ayuda para identificar objetos, buscando tanto objetos concretos como objetos abstractos en el espacio del problema
Tiene como objetivo un crecimiento progresivo de la funcionalidad. Es decir, el producto va evolucionando con cada una de las entregas previstas hasta que se amolda a lo requerido por el cliente o destinatario.
• Cada incremento agrega funcionalidad adicional o mejorada sobre el sistema • Cada etapa debe cumplir con los requisitos de las desarrolladas • La propuesta del modelo es diseñar sistemas que puedan entregarse por piezas. • A partir de la evaluación se planea el siguiente incremento y así sucesivamente. • Es interactivo
El modelo incremental combina la forma secuencial e iterativo a través de prototipos funcionales, es decir, cada evolución del proyecto se considera un incremento. El primer incremento que sale (primera versión del software), contiene elementos básicos (Core) del proyecto hasta seguir con los siguientes incrementos para mejorar su funcionalidad, priorizando los requerimientos más importantes.
Es un enfoque de desarrollo de software que puede ser considerado como una respuesta a los inconvenientes del desarrollo en cascada, además es genérico y puede combinarse con otros métodos de desarrollo clásicos y ágiles, por lo que también se denomina modelo o desarrollo de segundo orden.
-Se trata de un modelo evolutivo que, conforme avancen los ciclos, aumentará el tiempo de ejecución, así como el volumen de código fuente desarrollado y la complejidad de la gestión de riesgos y de la planificación.
-Es más costoso de aplicar. -Es muy complicada de realizar. -Consiste en seguir ciclos crecientes de cuatro fases cada uno, que se van realizando siguiendo una forma de espiral.
-Los proyectos ejecutados con el modelo en espiral empiezan siendo pequeños, investigando los mayores riesgos que se pueden tolerar, para pasar a agrandarse poco a poco, en base a elementos clave sobre los que se construyen las siguientes fases de la espiral.
Es una combinación entre el modelo lineal o de cascada y el modelo iterativo o basado en prototipos, Se utiliza con éxito en proyectos donde el coste de un fallo es un gran riesgo, de ahí que su principal aportación sea considerar la gestión de esos riesgos, algo que en los modelos anteriores ni siquiera se menciona.
La idea principal es entregar sistemas de alta calidad, en poco tiempo y con un coste bajo de inversión. Para conseguir esto, hay que seguir determinadas pautas que harán que estemos ante una auténtica metodología DRA (las siglas en castellano: Desarrollo Rápido de Aplicaciones)
Adaptabilidad Comentarios constantes de los usuarios Avances medibles Productivos más pronto Integración temprana de sistemas
Planificación de necesidades: Diseño y feedback con el usuario: Construcción: Transición:
-Desarrollar un software robusto a largo plazo -Se ha utilizado con éxito durante décadas, pero ahora sólo se utiliza para proyectos más pequeños en los que las especificaciones son claras.
Una fase no comienza hasta que la anterior ha terminado.
Cada fase genera documentación para la siguiente. Esta documentación debe ser aprobada.
Se disponga de unos requisitos completos y consistentes al principio del desarrollo.
Consiste en la ejecución secuencial de una serie de fases que se suceden, lo que da nombre al modelo.
El desarrollo en cascada (en inglés, waterfall model) es un procedimiento lineal que se caracteriza por dividir los procesos de desarrollo en sucesivas fases de proyecto. Al contrario que en los modelos iterativos, cada una de estas fases se ejecuta tan solo una vez. Los resultados de cada una de las fases sirven como hipótesis de partida para la siguiente.