y diseño orientado a objetos y MDA Martín Guzmán, 08041 Karen Andrea Tojin, 08091 Kevin Sánchez, 08302 Héctor Hurtarte, 08119 Metodología de Booch
Análisis y Diseño Orientado a
Objetos (ADOO) ¿De dónde surgió? GENERALIDADES E HISTORIA Metodología de Booch • Surge debido a los objetivos de la ingeniería de software – Entregar un producto Software que satisfaga las necesidades del usuario, de forma eficiente y predecible. • Abarca un «microproceso de desarrollo» y un «macroproceso de desarrollo». • Fue creado por Grady Booch en 1994, mientras estuvo en Rational Software ¿Qué es, cómo funciona, para qué sirve? ASPECTOS RELEVANTES Modelos del Método de Booch • Modelo de Lógica: está representado en la estructura clase-objeto.
• Modelo Estático: es representado por el diagrama
de clase, en el que se construye la arquitectura que se definirá para el sistema.
• Modelo Dinámico: es representado por el
diagrama de objeto que muestra cómo las clases interactúan unas con otras. El Método de Booch
• Está orientado a analizar el modo, los
documentos y requisitos del sistema en desarrollo.
• Booch, para desarrollar este método unió
conceptos del su anterior trabajo con los conceptos de Objectory, OMT, y otros métodos. Notación en el Método de Booch
• La notación “es el pegamento que mantiene
unido el proceso”.
• Cumple con las siguientes funciones:
– Comunicar decisiones. – Proporciona semántica suficiente. – Manipulación de herramientas El Método de Booch
• Es un ciclo de vida iterativo e incremental, en
el cual se mira el desarrollo del producto como una serie de despacho (releases) de arquitectura que evolucionan hacia el sistema final. • El cambio se prevé en todas las fases. Se trata de una reducción del riesgo en el proceso impulsado. Macro-Proceso
• Engloba una actividad de planificación
arquitectónica, que agrupa capas de objetos por nivel de abstracción. • Identifica situaciones relevantes. • Crea un prototipo de diseño y valida el prototipo aplicándolo a situaciones de uso. • Es un proceso de alto nivel. Pasos del Macro-Proceso Micro-Proceso • Define un conjunto de “reglas” que regulan el uso de operaciones y atributos, de reglas y políticas. • Desarrolla situaciones que describen la semántica de las reglas y políticas. • Crea un prototipo para cada política. • Instrumenta y refina el prototipo. • Es un proceso de bajo nivel Pasos del Micro-Proceso Metodología de Rumbaugh
Object Modeling Technique (OMT)
¿De dónde surgió? GENERALIDADES E HISTORIA James Rumbaugh • Creador y principal desarrollador de OMT junto con Blaha, Bill Premerlani, Fred Eddy, y Bill Lorensen.
• Trabajó con Ivar Jacobson y Grady Booch en
Rational Software para desarrollar UML.
• Fusionaron sus metodologías: OMT, OOSE y
Booch en el Proceso Unificado Racional (RUP). ¿Qué es, cómo funciona, para qué sirve? ASPECTOS RELEVANTES • OMT es una de las metodologías de análisis y diseño de desarrollo de software orientado a objetos más eficiente que existe en la actualidad.
• Es uno de los precursores de UML.
• Esta metodología se extiende del análisis,
al diseño, a la implementación durante sus etapas. Etapas de OMT
1. Análisis: es una abstracción concisa y precisa
de qué debe hacer el sistema deseado, no cómo debe ser hecho.
2. Diseño del Sistema: en esta etapa se deben
decidir las características del funcionamiento para optimizar el sistema, así como escoger una estrategia para atacar el problema. 3. Diseño de Objetos: se agregan los detalles de implementación al modelo de diseño y las clases de objetos son reforzadas con las estructuras de datos y algoritmos escogidos.
4. Implementación: las clases de objetos y las
relaciones entre ellas definidas durante el diseño de objetos son trasladadas a un lenguaje de programación, a una base de datos o implementación de hardware. Modelos de OMT
• Modelo de Objetos: describe la estructura
estática de los objetos de un sistema y sus relaciones. Utiliza diagramas de clases. • Modelo Dinámico: determina cómo los aspectos del sistema que cambian a través del tiempo. Utiliza diagramas de estado. • Modelo Funcional: describe las trasformaciones de los valores de los datos dentro de un sistema. Utiliza diagramas de flujo de datos. ¿Qué productos la soportan? HERRAMIENTAS O SISTEMAS QUE LA EMPLEEN Algunas de las herramientas que lo soportan son:
• SmartDraw, Software Design Center
• Excelerator II Intersolv Inc. • MetaEdit MetaCASE Consulting YO • ObjectMarker, Mark V Software • BOCS, Berard Software Eng. • ObjectTeam, Candre Technologies, Inc. • OMTool, Martin Marietta. • Paradigm Plus, Protosoft. • Software Through Pictures, Interactive Development Enviroment • System Architect, Popkin Software. MDA (Model Driven Architecture) MDA • Significa: Model Driven Architecture. • OMG (Object Management Group). • Surgio en 1996. • Hasta 1997 adoptaron las facilidades. – UML (Lenguaje unificado de modelado). – MOF (Facilidades del metaobjeto). • Se basa en un (PIM). • Sirve para llevar a cabo el retorno de la inversion (ROI). Para que sirve • Desarrollar usos • Escribir especificaciones. – Modelo independiente de plataformas (PIM) • Puede tener varios. • Sirve para establecer requerimientos. – Modelo especifico de plataformas (PSM) • Una o mas. – Una serie de definiciones de interfaces. • Una por cada plataforma especifica (PSM). Beneficios • La arquitectura basada en MDA está siempre lista para hacer frente a la "próxima gran cosa" de ayer, de hoy y de mañana. Además hace más fácil la integración de aplicaciones de middleware y servicios a través de las fronteras. Beneficios • El dominio de las especificaciones definidas en el MDA por OMG del control de grupos de trabajo mucho más amplios facilitará la interoperabilidad de siempre estar disponible en un dominio preferido de la plataforma, a través de múltiples plataformas y cuando es necesario. Aplicaciones que lo usan • Java – JavaEE – J2ME • .NET • CORBA • Servicios Web • BlueAge • Eclipse Modeling framework Conclusiones • La metodología OMT (Object Modeling Technique) desarrollada por James Rumbaugh es base para el desarrollo de software orientado a objetos y se extiende del análisis, al diseño, a la implementación • La metodología OMT posee cuatro etapas: análisis, diseño del sistema, diseño de objetos e implementación definidas por tres modelos: el modelo de objetos, el modelo dinámico y el modelo funcional. Conclusiones • La principal utilidad de MDA (Model Driven Architecture) es que separa los negocios de la lógica de la aplicación, además de que cuenta con varios tipos de diagramas que ayudan a que la aplicación sea más eficiente y se pueda desarrollar de una manera más ordenada • El método de Análisis y Diseño Orientado a Objetos, desarrollado por Grady Booch, se basa en dividir un solo proceso en un microproceso y un macroproceso. Conclusiones • Grady Booch para desarrollar el método de Análisis y Diseño Orientado a Objetos, unió conceptos de otras metodologías, incluyendo su trabajo anterior, Objectory, OMT, entre otros. • El método de Booch se basa en el desarrollo iterativo de un sistema, en el cual se mira el producto como una serie de arquitecturas que evolucionan hacia el sistema el desarrollo final.