Modelado Orientado a Objetos
Upcoming SlideShare
Loading in...5
×
 

Modelado Orientado a Objetos

on

  • 3,481 views

El siguiente documento contiene las definiciones de las metodologias de desarrollo de software orientado a objetos.

El siguiente documento contiene las definiciones de las metodologias de desarrollo de software orientado a objetos.

Statistics

Views

Total Views
3,481
Views on SlideShare
3,481
Embed Views
0

Actions

Likes
0
Downloads
85
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft Word

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Modelado Orientado a Objetos Modelado Orientado a Objetos Document Transcript

    • Por: Rafael Miranda CarranzaMODELO ORIENTADO A OBJETOS.El modelo orientado a objetos utiliza el paradigma de la orientación a objetos para eldesarrollo de software. Este enfoque realiza la construcción de modelos de un sistema pormedio de la identificación y la especificación de un conjunto de objetos relacionados, quecolaboran entre si de acuerdo a los requerimientos establecidos para el sistema deobjetos.La definición del modelado orientado a objetos puede claramente dividir el enfoque en tresdimensiones: La dimensión estructural. La dimensión dinámica. La dimisión funcional.Este tipo de modelado implica la realización de las siguientes actividades: 1. Identificar las clases, modelos y objetos. (objetos y atributos). 2. Asociar estáticamente los objetos. (relaciones dependientes del dominio del problema). 3. Especificación del comportamiento de los objetos. (Definir como se comportaran los objetos). 4. Definir la jerarquía de herencia de las clases. (Definir la jerarquía de clases, para que el sistema quede lo más abstracto posible).Características de los modelos Orientados a Objetos. EL modelado Orientado a Objetos está basado en el paradigma orientado a objetos. Trata el almacenamiento de objetos (persistencia de los objetos). Define un lenguaje para le definición y manipulación de objetos. Incluye mecanismos para optimizar el acceso (Indexación y Clustering), el control de la concurrencia, seguridad y gestión de usuarios, facilidad de consulta y recuperación ante fallos. Debido a que es un esquema orientado a objetos incluye: Encapsulamiento, herencia, polimorfismo, etc.
    • MODELO DINÁMICO.El modelo dinámico está basado y constituido en aquellos aspectos de un sistemarelacionados con el tiempo (objetos y cambio de los mismos) a lo largo del tiempo. Elmodelo dinámico describe el control del sistema, esto quiere decir, las secuencias queocurren como consecuencia del uso de los usuarios finales, sin tener en cuenta lo quehacen las operaciones sobre que operan y como se implementan. Como ocurre en elmodelo orientado a objetos los objetos se comunican entre sí a través del paso demensajes (parámetros), a esta acción el modelo dinámico se denomina interacción entreobjetos.Los desgramas de estado, interacción (secuencia, comunicación, tempo y visión deconjunto) son utilizados para describir como los objetos interactúan dinámicamente.Elmodelo dinámicoestá constituido principalmente por los diagramas de estado y deactividad, a continuación se presentan las principales características de casa uno de ellos: Diagrama de Estado: Este tipo de diagrama indica de qué manera se comportan los objetos durante su ciclo de vida, define el comportamiento del sistema completo. Características de los diagramas de estado: o Los principales conceptos de un diagrama de estado son: los eventos los estados. Un estado es un valor de los atributos de los objetos. o El modelo dinámico consiste en múltiples diagramas de estado y muestra el patrón de actividad para el sistema completo. o Éste tipo de diagramas contienen transiciones que son las relaciones entre los objetos y los eventos que ocurren entra ellos. Diagramas de actividad: Son utilizados para especificar el flujo de trabajo dentro del sistema, a diferencia del diagrama de secuencia el diagrama de actividad no modela el comportamiento de un sistema de software si no los procesos y los flujos de un muy alto nivel. El diagrama de actividad define las siguientes características: o Proceso de negocio: Utilizado para definir como los objetos cambian para definir una vista de alto nivel. o Cartas de estados: Capturan los cambios del sistema a lo largo del tiempo.En resumen el UML contiene las herramientas necesarias para la definición del modelodinámico de los sistemas de software mediante diversas herramientas que ayudan adefinir el comportamiento del sistema durante lo largo del tiempo. Cada tipo de diagramaayuda a capturar la información de los sistemas como un todo con todos los detalles delmismo a través de diagramas que definen el comportamiento.
    • MODELO FUNCIONAL.El modelo funcional representa todos los factores esenciales del desarrollo de softwareignorando aquellos que forman parte de los detalles más específicos de sistema. Estemodelo parte de un propósito general bien especificado y de la manera más simplificadaposible.Desde una perspectiva más general el modelo funcional se relaciona con el modeloorientado a objetos, este modelo se relaciona con una entidad existente. Éste modelotiene tres principios fundamentales: Particionamiento Abstracción ProyecciónEste modelo está basado en conceptos de funciones o procesos, de modo que estos seconviertan en el elemento más importante de este enfoque. Este modelo describe loscálculos dentro del sistema, es decir lo que sucede. Comprende los siguientes tipos defunciones: Función asíncrona: Una función asincrónica puede ser activado por otro objeto o función para realizar alguna acción. Función asíncrona dependiente de un estado: Un asíncrono dependiente del estado es generalmente una función "one-shot" de acción, que se ejecuta durante una transición de un estado a otro estado. Esta función se activa mediante una transformación de control Función periódica: Una función periódica se activa a intervalos regulares para realizar alguna acción. La frecuencia con la que se activa una función específica depende de la aplicación Función periódica dependiente de un estado: Una función periódica se activa a intervalos regulares para realizar alguna acción. La frecuencia con la que se activa una función específica depende de la aplicación. Esta función se activa mediante una transformación de controlUn ejemplo de programas que utilizan este tipo de modelado pueden ser compiladores, yaque por lo general este tipo de programas realizan cálculos de las operaciones que tieneque realizar un sistema. Por otra parte, las bases de datos a menudo tienen un modelofuncional trivial, ya que su finalidad es almacenar y organizar datos, no transformarla.
    • METODOLOGÍA OOHDMEs una metodología orientada a objetos la cual comprende 5 fases: 1. Obtención de requerimientos. 2. Modelo conceptual. 3. Diseño navegacional. 4. Diseño de la interfaz abstracta. 5. Implementación.Fase 1 (obtención de requerimientos): La herramienta en la cual se fundamenta esta faseson los diagramas de casos de usos, los cuales son diseñados por escenarios con lafinalidad de obtener de manera clara los requerimientos y acciones del sistema.Fase 2 (Modelo conceptual): Se construye un modelo orientado a objetos que representeel dominio de la aplicación usando las técnicas propias de la orientación a objetos.Fase 3 (Diseño navegacional): La estructura de navegación de una aplicación hipermediaestá definida por un esquema de clases de navegación específica, que refleja una posiblevista elegida.Fase 4 (diseño de la interfaz abstracta): En esta fase se definen qué objetos de interfaz vaa percibir el usuario, el camino en el cuál aparecerán los diferentes objetos denavegación, qué objeto de interfaz actuarán en la navegación, la forma de sincronizaciónde los objetos multimedia y el interfaz de transformaciones.Fase 5 (Implementación): Una vez cumplidas las 4 fases anteriores solo queda llevar losobjetos a un lenguaje concreto de programación.SOHDMPropone un proceso para el modelo conceptual del sistema, que es representadomediante un diagrama de clases. El proceso de SOHDM continúa reagrupando estasclases para conseguir un modelo de clases navegacionales del sistema. Consiste en seisfases: análisis del dominio, modelado del objeto, diseño de la visión, diseño de lanavegación, diseño de la puesta en práctica y construcción. Esta metodología tienesemejanzas con, OOHDM y EORM donde se diferencian en el uso de panoramas, quedescriben las actividades en los acontecimientos y primitivas de flujos de actividades. Lospanoramas se definen en la fase de análisis y se utilizan para modelar los objetosRUPEl Proceso Unificado Racional, consiste en un proceso de desarrollo de software y juntocon el Lenguaje Unificado de Modelado (UML), este proceso constituye la metodologíaestándar más utilizada para el análisis, implementación y documentación de sistemasorientados a objetos. Este modelo tiene 4 fases principales:
    • Inicio: Se hace un plan de fases, donde se identifican los principales casos de uso y seidentifican los riesgos. Se concreta la idea, la visión del producto, como se enmarca en elsistema, el alcance del proyecto.Elaboración: Se realiza el plan que seguirá el proyecto desoftware, donde se contemplan todos los casos de uso del sistema. Construcción: Serealiza un producto totalmente operativo y se elabora el manual de usuario, es en estafase donde se define la arquitectura del proyecto. Transición: Se implementa el proyecto,en esta fase se entrena a los usuarios como deben utilizar el producto, en esta fase se elproyecto pasa del desarrollador el usuario (transición).UMLEl lenguaje de modelado unificado es una especificación de notación orientada a objetos,el cual se compone de diferentes diagramas, los cuales representan las diferentes etapasdel desarrollo del proyecto. UML no preescribe un proceso o método estándar paradesarrollar un sistema, es decir no especifica una sola forma de realizar una operación, sino que brinda las herramientas necearías para definir, crear y modelar las diferentesetapas de un proyecto mediante una serie de diagramas. Hay varias metodologíasexistentes; entre las más populares se incluyen las siguientes:Catalysis: Un método orientado a objetos que fusiona mucho del trabajo reciente enmétodos orientados a objetos, y además ofrece técnicas específicas para modelarcomponentes distribuidos.Objetory: Un método de Caso de Uso guiado para el desarrollo, creado por Ivar Jacobson.Shlaer/Mellor: El método para diseñar sistemas de tiempo real.Fusion: Desarrollado en Hewlett Packard a mediados de los noventa como primer intentode un método de diseño orientado a objetos estándar.OMT: La Técnica de Modelado de Objetos fue desarrollada por James Rumbaugh y otros,y publicada en el libro de gran influencia. Un método que propone análisis y diseño‘iterative’, más centrado en el lado del análisis.Booch: Parecido al OMT con características adicionales.MODELADO DE CASOS DE USOUn caso de uso se modela para todos los procesos que el sistema debe llevar a cabo. Losprocesos se describen dentro del caso de uso por una descripción textual o unasecuencia de pasos ejecutados. Una vez que el comportamiento del sistema está captadode esta manera, los casos de uso se examinan y amplían para mostrar qué objetos seinterrelacionan para que ocurra este comportamiento.Los casos de uso son la forma másefectiva y fácil de modelar los requisitos de un usuario desde el punto de vista de este.Los casos de uso son la herramienta que describen como debe funcionar un sistema ocomo se desearía que funcione. No es realmente una aproximación a la orientación aobjetos; es realmente una forma de modelar procesos. Los casos de uso songeneralmente el punto de partida del análisis orientado a objetos con UML.
    • MODELADO ORIENTADO A OBJETOS MODELO DEFINICIÓN CARACTERÍSTICASOrientado a Objetos Este enfoque realiza la Utiliza clases, asocia construcción de modelos de objetos, define una un sistema por medio de la jerarquía de cases. identificación y la Utiliza el paradigma OO: especificación de un clases, objetos, herencia, conjunto de objetos polimorfismo, relacionados, que colaboran encapsulamiento, etc. entre si de acuerdo a los requerimientos establecidos para el sistema de objetos.Modelo Dinámico. El modelo dinámico está Diagrama de estado: define basado y constituido en la manera en cómo se aquellos aspectos de un comportan los objetos. sistema relacionados con el Diagramas de actividad: tiempo (objetos y cambio de Especifican el flujo de los mismos) a lo largo del trabajo dentro del sistema. tiempo.Modelo Funcional El modelo funcional Se basa en tres principios: representa todos los particionamiento, factores esenciales del abstracción, proyección. desarrollo de software Está basado en conceptos ignorando aquellos que de funciones o procesos forman parte de los detalles (siendo estos el elemento más específicos de sistema. más importante del Este modelo parte de un enfoque) propósito general bien especificado y de la manera más simplificada posible
    • METODOLOGÍAS METODOLOGÍA DEFINICIÓN CARACTERÍSTICASOOHDM Metodología orientada a Fases: Obtención de objetos que contempla 5 requerimientos. fases en las cuales se Modelado conceptual. define una parte del Diseño Navegacional. desarrollo de proyectos con Diseño de interfaz el enfoque orientado a abstracta. objetos. Implementación.SOHDM Propone un proceso para el Fases: Análisis del dominio, modelo conceptual del modelado del objeto, diseño sistema, que es de la visión, diseño de la representado mediante un navegación, diseño de la diagrama de clases, el cual puesta en práctica y continúa reagrupándose construcción hasta conseguir el modelo de clases navegacionales. Consta de 6 fases.RUP El Proceso Unificado Fases: Racional, consiste en un Inicio, Elaboración, proceso de desarrollo de construcción y transición. software y junto con el Lenguaje Unificado de Modelado (UML), este proceso constituye la metodología estándar más utilizada para el análisis, implementación y documentación de sistemas orientados a objetos, consta de 4 fases principales.UML El lenguaje de modelado Metodologías: unificado es una Catalisys, Objetory, Shlaer, especificación de notación Fusion, OMT, Booch. orientada a objetos, el cual se compone de diferentes diagramas, los cuales representan las diferentes etapas del desarrollo del proyecto. Puede ser aplicado a diversas metodologías.
    • REFERENCIAS. • Software Requirements: Objects, Functions, and States’ by Al. Davis, 1993 • Diseño Orientado a Objetos, con Aplicaciones (Benjamin Cummings, 1991 y 1994), (Object-OrientedDesign, WithApplications) • Diseño y Modelado Orientado a Objetos (Prentice Hall, 1991) • Software Design Methods for Concurrent and Real-Time Systems’ by H. Gomaa, Addison-Wesley, 1993 • Software Engineering R. Pressman, Prentice-Hall, 2001 • Objetos, componentes y Estructuras con UML, The Catalysis Aproach, por Desmond F. D’Souza y Alan C. Wills, Addison Wesley Longman, 1998.