Instituto Tecnológico de la Laguna Análisis y Diseño Orientado a Objetos 3.5 RESUMEN Ingeniería de software orientado a objetos OOSE, (Ivar Jacobson) El método desarrollado por Ivar Jacobson OOSE ha sido llamado “un enfoque para el manejo de casos de uso”, en este enfoque el modelo de casos de uso sirve como un modelo central del cual todos los otros modelos son derivados. Un modelo de casos de uso describe la funcionalidad completa del sistema, identificando como, todo lo que esta fuera del sistema, interactúa con él. El modelo de casos de uso de acuerdo con Jacobson, es la base en la etapa de análisis, construcción y prueba. OOSE presenta cinco técnicas para modelar un sistema: ! ! ! ! ! Modelo de requerimientos: delimita el sistema y define su funcionalidad. Modelo de análisis: estructura el sistema, modelando tres tipos de objetos (objetos de interfase, objetos entidad y objetos de control). Modelo de diseño: refina el modelo de análisis y lo adapta a un ambiente de implementación. Consiste de diagramas de interacción y diagramas de transición de estados. Modelo de implementación: consiste en el código fuente de los objetos especificados en el modelo de diseño. Modelo de prueba: es llevado acabo mediante la realización de pruebas al modelo de implementación. La idea básica de estos modelos es capturar el concepto inicial de todos los requerimientos funcionales y usar sus perspectivas. Es por eso que la relación entre ellos es importante. Para ser posible el mantenimiento del sistema es también necesario que los modelos sean tangibles. Técnica de modelado de objetos OMT, (James Rumbaugh) El OMT describe el análisis y diseño orientado a objetos como una forma de organizar software dentro de una correlación de objetos discretos que incorporan tanto comportamiento como estructuras de datos. La esencia del desarrollo orientado a objetos en OMT es la identificación y organización de conceptos en el dominio del problema. Este método tiene muchas notaciones, aunque para el desarrollo de muchos sistemas solamente algunas son usadas. De acuerdo a Rumbaugh en el OMT, el sistema es descrito a partir de 3 modelos diferentes: un modelo de objetos, un modelo dinámico, y un modelo funcional. El modelo de objetos describe los objetos a los cuales le sucede algo, el modelo funcional describe lo que sucede, mientras que el modelo dinámico describe cuando sucede. ! ! ! Modelo de objetos: describe la estructura estática de los objetos en un sistema, y sus relaciones. Consiste de diagramas de objetos. Modelo dinámico: describe aspectos de control de un sistema y muestra la parte dinámica de cada clase mediante diagramas de estados. Modelo funcional: describe el flujo de datos en el sistema mediante diagramas de flujo de datos. Cada modelo describe un aspecto del sistema pero contiene referencias a los demás modelos. Lo cual indica que los tres no son totalmente independientes. Paola Romero Guillén 85 Instituto Tecnológico de la Laguna Análisis y Diseño Orientado a Objetos Metodología Booch La realización de modelos es muy importante para la construcción de sistemas complejos. Booch propone 4 modelos de desarrollo orientado a objetos: estructura física y lógica y su semántica estática y dinámica. La parte más importante en el análisis y diseño orientado a objetos de acuerdo a Booch es la identificación de clases y objetos. Las técnicas para capturar la parte lógica / estática según Booch son las siguientes: ! ! Diagrama de objetos: muestran los objetos existentes y sus relaciones entre ellos, incluyendo visibilidad y sincronización. Diagramas de clases: muestran las clases existentes y sus relaciones entre ellas, incluyendo aspectos de cardinalidad, persistencia y visibilidad. Las técnicas para capturar la vista lógica / dinámica son las siguientes: ! ! Diagrama de transición de estados: muestra los estados de un objeto, transiciones y las acciones que son resultado de ellas. Diagramas de interacción: describen como los escenarios son ejecutados en el mismo contexto, además de mostrar los aspectos dinámicos. Técnicas para capturar la vista física / estática. ! ! Diagramas de módulos: muestran la asignación de clases y objetos a módulos, en el diseño físico de un sistema. Diagramas de procesos: muestran la asignación de procesos a procesadores en el diseño físico de un sistema. Tarjetas CRC La técnica de las tarjetas de Clase-Responsabilidad-Colaboración (CRC), fue desarrollada por dos programadores renombrados de Smalltalk, Ward Cunningham y Kent Beck. Cunningham y Beck representaron las clases en tarjetas de 4x6 pulgadas, y en lugar de indicar atributos y métodos en las tarjetas, escribieron responsabilidades. Las técnicas utilizadas en el método CRC son: ! ! ! ! Tarjeta CRC: describen las clase con sus super y subclases, responsabilidades y colaboraciones. Tarjetas de subsistema: en ellas se describe los subsistemas y contratos. Diagramas de jerarquía y diagramas de Ven: muestran y descubren la herencia entre clases. Diagramas de colaboración: muestran las clases, subsistemas y las colaboraciones cliente / servidor entre ellas. Las actividades involucradas en este método son: ! ! ! ! ! ! Identificar clases. Identificar las responsabilidades para cada clase. Identificar las colaboraciones. Identificar herencia. Identificar subsistemas. Identificar protocolos. Paola Romero Guillén 86 Instituto Tecnológico de la Laguna Análisis y Diseño Orientado a Objetos 3.6 CUESTIONARIO 1. La metodología OMT se divide en 3 modelos, explique cada uno de ellos. 2. Mencione los diagramas que deben realizarse en el modelo de objetos, perteneciente a la metodología OMT. 3. Describa los pasos del proceso de desarrollo, utilizados en la metodología OMT. 4. Explique los modelos en que se divide la metodología BOOCH. 5. Explique los diagramas que deben de realizarse en el modelo estático y dinámico de la metodología BOOCH. 6. ¿Cuál es la diferencia entre el microproceso y el macroproceso? 7. ¿En qué se basa la metodología CRC? 8. Defina responsabilidad. 9. Defina colaboración. 10. ¿Cuáles son los modelos en que se divide la metodología OOSE? 11. ¿En qué se basa la metodología OOSE? 12. Defina caso de uso, escenario y actor. Paola Romero Guillén 87