SlideShare ist ein Scribd-Unternehmen logo
1 von 6
TIPOS DE MODELO Y METODOLOGIAS

Por Josafat Martínez Martínez

LA METODOLOGÍA OOHDM (Método de Diseño Hipermedia Orientado a Objetos)

Es una metodología de diseño de aplicaciones hipermedia en particular para aplicaciones web.

Se puede representar gráficamente usando diagramas de clase, Diagrama navegacional +
contexto, y diagrama de configuración ADV (Vista de Datos Abstracta).

Existe una clara identificación de los tres diferentes niveles de diseño en forma independiente de
la implementación.

En OOHDM, el esquema conceptual está construido por clases, relaciones y subsistemas. Las
clases son descritas como en los modelos orientados a objetos tradicionales. Sin embargo, los
atributos pueden ser de múltiples tipos para representar perspectivas diferentes de las mismas
entidades del mundo real [1].

Se usa notación similar a UML (Lenguaje de Modelado Unificado), tarjetas de clases y relaciones
similares a las tarjetas CRC (Clase Responsabilidad Colaboración). El esquema de las clases consiste
en un conjunto de clases conectadas por relaciones. Los objetos son instancias de las clases. Las
clases son usadas durante el diseño navegacional para derivar nodos y las relaciones que son
usadas para construir enlaces.

La principal estructura primitiva del espacio navegacional es la noción de contexto navegacional.
Un contexto navegacional es un conjunto de nodos, enlaces, clases de contextos, y otros contextos
navegacionales (contextos anidados). Pueden ser definidos por comprensión o extensión, o por
enumeración de sus miembros.

El modelo de interfaz ADV (Vista de Datos Abstracta) especifica la organización y comportamiento
de la interfaz, pero la apariencia física real o de los atributos, y la disposición de las propiedades de
las ADV en la pantalla real son hechas en la fase de implementación.

SOHDM (MÉTODO QUE DESARROLLA DISEÑO EN PANORAMAS (ESCENARIO) ORIENTADA A
OBJETOS EN HIPERMEDIA)

Es un Método que Desarrolla Diseño en panoramas o escenariosorientada a objetos en
Hipermedia (Scenario - basedObjectoriented Hypermedia Desi gn Methodology). Presenta la
necesidad de disponer de un proceso que permita capturar l as necesidades del sistema. Para ello,
propone el uso de escenarios [2].

Esta propuesta ofrece un modelo de escenarios denominado SAC (ScenarioActivity Chart) para
representar los requisitos.

Hace uso del diagrama de contexto propuestos en los DFD (Diagrama de flujo de Datos).
Es una de las primeras propuestas para la web y brinda el tratamiento de requisitos.

El proceso de definición de requisitos parte de la realización de un diagrama de contexto tal y
como se propone en los diagramas de flujo de datos.

Utiliza panoramas que describen las actividades en los acontecimientos y primitivas de flujo.

RATIONAL UNIFIED PROCESS (RUP)

Captura varias de las mejores prácticas en el desarrollo moderno de software en una forma que es
aplicable para un amplio rango de proyectos y organizaciones.

Es una guía de cómo utilizar de manera efectiva UML.Provee a cada miembro de un equipo un fácil
acceso a una base de conocimiento con guías, plantillas y herramientas para todas las actividades
críticas de desarrollo [3].

Crea y mantiene modelos, en lugar de enfocarse en la producción de una gran cantidad de papeles
de documentación.

RUP describe como utilizar de forma efectiva procedimientos comerciales probados en el
desarrollo de software para equipos de desarrollo de software, conocidos como “mejores
prácticas”.

Reconoce que las necesidades del usuario y sus requerimientos no se pueden definir
completamente al principio.

Reduce el costo del riesgo a los costos de un solo incremento.
Acelera el ritmo del esfuerzo de desarrollo en su totalidad debido a que los desarrolladores
trabajan para obtener resultados claros a corto plazo.

Distribuye la carga de trabajo a lo largo del tiempo del proyecto ya que todas las disciplinas
colaboran en cada iteración.
Requiere conocimientos del proceso y de UML. Progreso visible en las etapas tempranas.

El uso de Iteraciones (actividades) permite evaluar tempranamente los riesgos en lugar de
descubrir problemas en la integración final del sistema.

Facilita la reutilización del código teniendo en cuenta que se realizan revisiones en las primeras
iteraciones lo cual además permite que se aprecien oportunidades de mejoras en el diseño.

Una principal desventaja es que el grado de complejidad puede no resultar muy adecuado puesto
que esta enfocado para proyecto grandes.

Metodología OMT.

La metodología de modelado de objetos OMT (ObjectModelingTechnique) descrito por
[Rumbaugh]. Se basa en tres modelos fundamentales y ortogonales [4].
Modelo Objeto
        Modelo dinámico
        Modelo Funcional

OMT considera que todo lo necesario y suficiente para el desarrollo de sistemas OO se puede
representar en alguno de estos tres modelos:

Fases de la metodología OMT:

Análisis: Su objetivo es desarrollar un modelo de lo que va a hacer el sistema. El modelo se
expresa en términos de objetos y de relaciones entre ellos, flujo dinámico de control y las
transformaciones funcionales [5].

    A. Se construye el modelo de objetos y sus relaciones.

Su objetivo es describir la estructura estática del software.
Se abstraen los conceptos de los datos que son más importantes para la aplicación.
Se describen gráficamente por los diagramas de objetos que definen las clases y sus relaciones

Los pasos que se llevan a cabo para el modelo de objetos son:

1. Identificar las clases

        El documento que genera el modelo de objetos es el siguiente:
        Modelo de objetos = diagrama del modelo de objetos + diccionario de datos

    Se seleccionan los sustantivos de la descripción del problema como posibles clases
    candidatas. Se construye una lista [5].
    Se eliminan las clases redundantes, irrelevantes o vagas o bien por ser atributos, operaciones
    o construcciones de implementación.
    Las clases se representan por rectángulos con tres compartimientos, en el primero se pone el
    nombre de la clase, en el segundo los atributos y en el tercero las operaciones o métodos.

       1. Preparar un diccionario de clases (datos)

           Es muy importante definir que se entiende con mayor detalle por cada clase que
           quedó en la lista anterior.

       2. Identificar las asociaciones entre objetos.

           Una asociación es una dependencia entre dos o más clases. Las asociaciones, se
           representan por líneas que unen a las clases sobre las cuales se puede escribir el
           nombre de la asociación.
           A los diagramas se les agrega la multiplicidad correcta. Puede ser "uno a uno"; "uno a
           muchos" representada por una bolita rellena del lado de los "muchos"; o "muchos a
           muchos" representada por bolitas rellenas a ambos extremos de la línea.
3. Identificar atributos.

       Los atributos son propiedades de los objetos tales como nombre, peso, velocidad, etc.

   4. Organizar y simplificar clases usando herencia.

       La herencia se puede usar para generalizar los aspectos comunes de las clases
       existentes construyendo una superclase, o para refinar una clase en subclases
       especializadas.
       La notación de OMT para la herencia es un triángulo debajo de la superclase.

   5. Verificar que existan trayectorias en el modelo de objetos para preguntas probables.

       En los pasos anteriores se construyó un diagrama de objetos, ahora se hace una
       revisión verificando que estén representadas todas las relaciones siguiéndolo para
       preguntas probables.

   6. Iterar y refinar el modelo.

2. Se desarrolla el modelo dinámico.

   El documento que genera el modelo dinámico es:
   Modelo dinámico = diagramas de estados + diagrama global de trazado de eventos

       Se captura el aspecto concerniente a la secuencia de las operaciones en el tiempo.
       Se muestra el control sin importar que hacen exactamente las operaciones.
       Se representa por un diagrama de estados. El estado de un objeto es un conjunto de
       valores para sus atributos, en un cierto momento, el cual cambia al recibir un estímulo
       llamado evento.

                       Un diagrama de estados es una gráfica de estados representados por
                       círculos y eventos representados por flechas.

               Los pasos que se siguen en el modelo dinámico son:

   1. Preparar escenarios de una interacción típica.
   2. Identificar eventos entre objetos preparando un trazado de eventos para cada
      escenario.
   3. Construir los diagramas de estados.
   4. Revisar los eventos entre los objetos para verificar su consistencia.

3. Se construye el modelo funcional.

   El documento que genera el modelo funcional es:
   Modelo funcional = diagramas de flujo de datos + restricciones
Especifica el significado de las operaciones o métodos en el modelo de objetos y de las
        acciones en el modelo dinámico.
        Muestra como se calculan los valores sin importar la secuencia, las decisiones ni la
        estructura de los objetos.
        Se utilizan diagramas de flujo de datos para mostrar las dependencias funcionales.

SE VERIFICAN, ITERAN Y REFINAN LOS TRES MODELOS.

El documento que genera el análisis contiene:

Documento de análisis = definición del problema + modelo de objetos + modelo dinámico +
modelo funcional.

UML

El lenguaje unificado de diagrama o notación (UML) sirve para especificar, visualizar y documentar
esquemas de sistemas de software orientado a objetos. UML no es un método de desarrollo, lo
que significa que no sirve para determinar qué hacer en primer lugar o cómo diseñar el sistema,
sino que simplemente le ayuda a visualizar el diseño y a hacerlo más accesible para otros. UML
está controlado por el grupo de administración de objetos (OMG) y es el estándar de descripción
de esquemas de software [8].

UML está diseñado para su uso con software orientado a objetos, y tiene un uso limitado en otro
tipo de cuestiones de programación.

UML se compone de muchos elementos de esquematización que representan las diferentes partes
de un sistema de software. Los elementos UML se utilizan para crear diagramas, que representa
alguna parte o punto de vista del sistema.Soporta los siguientes tipos de diagramas:

Diagrama de casos de uso que muestra a los actores (otros usuarios del sistema), los casos de uso
(las situaciones que se producen cuando utilizan el sistema) y sus relaciones.

Diagrama de clases que muestra las clases y la relaciones entre ellas.

Diagrama de secuencia muestra los objetos y sus múltiples relaciones entre ellos.

Diagrama de colaboración que muestra objetos y sus relaciones, destacando los objetos que
participan en el intercambio de mensajes.

Diagrama de estado muestra estados, cambios de estado y eventos en un objeto o en parte del
sistema.

Diagrama de actividad que muestra actividades, así como los cambios de una a otra actividad
junto con los eventos que ocurren en ciertas partes del sistema.

Diagrama de componentes que muestra los componentes de mayor nivel de la programación
(cosas como Kparts o Java Beans).
Diagrama de implementación que muestra las instancias de los componentes y sus relaciones.

Diagrama de relaciones de entidad que muestra los datos y las relaciones y restricciones entre
ellos.



Bibliografía

[1] Silva Darío Andrés, Mercerat Bárbara;Construyendo aplicaciones web con una metodología de
    diseño                       orientada                      a                      objetos,
    http://www.unab.edu.co/editorialunab/revistas/rcc/pdfs/r22_art5_c.pdf, Febrero 2002.

[2] SCHWABE, D. ROSI, G.; BARBOSA, S. Systematic Hypermedia Application Design with OOHDM.
    Proceedings of the ACM International Conference on Hypertext (Hypertext'96). Washington DC,
    March, 16-20, 1996. http://www-di.inf.puc-rio.br/schwabe//papers/TAPOSRevised.pdf

[3] MejíaÁlvarez Pedro, F. Ibarra Armando,Rational Unified Process.

[4] http://www.mcc.unam.mx/~cursos/Objetos/Omt/omt.html

[5] Juan Marcelo Flores Solís, OMT Análisis 2001, url: docentes.umss.edu.bo/fcyt/mflores/OMT-
   Analisis-6-mar-2002.ppt

[6]      Modelo     Dinámico  en     Orientación    a Objetos,      Alejandro   Hossian,     url:
      http://www.itescam.edu.mx/principal/sylabus/fpdb/recursos/r18525.PDF

[7] Modelo Estático, Dinámico y Funcional en OMT, Gustavo Tarrico Martínez, url: http://cup-
   coffe.blogspot.mx/2009/06/modelo-estatico-dinamico-y-funcional-en.html

[8] Aguilar, A. L. (2005). Desarrollo de Aplicaciones Web Usando UML. Puebla: Universidad de
   Puebla.

[9]         http://www.itlalaguna.edu.mx/academico/carreras/sistemas/Analisis%20y%20dise%
   F1o%20orientado%20a%20objetos/rumbaugh.pdf

[10]http://www.hipertexto.info/documentos/oohdm.htm

Weitere ähnliche Inhalte

Was ist angesagt?

Ventajas y desventajas de moprosoft
Ventajas y desventajas de moprosoftVentajas y desventajas de moprosoft
Ventajas y desventajas de moprosoft
Chuyito Alvarado
 
Historia y aplicaciones de la graficacion
Historia y aplicaciones de la graficacionHistoria y aplicaciones de la graficacion
Historia y aplicaciones de la graficacion
Victor Eduardo Gomez
 
Mapa conceptual de telecomunicaciones
Mapa conceptual de telecomunicacionesMapa conceptual de telecomunicaciones
Mapa conceptual de telecomunicaciones
ClelianG
 
Medidas de precaución y mantenimiento (modem)
Medidas de precaución y mantenimiento (modem)Medidas de precaución y mantenimiento (modem)
Medidas de precaución y mantenimiento (modem)
Itt'szeel FLeetcher
 
Comandos del sistema operativo
Comandos del sistema operativoComandos del sistema operativo
Comandos del sistema operativo
JUANGUILLERMO17
 

Was ist angesagt? (20)

Von neumann vs harvard
Von neumann vs harvardVon neumann vs harvard
Von neumann vs harvard
 
366822968 paso-5-examen-final
366822968 paso-5-examen-final366822968 paso-5-examen-final
366822968 paso-5-examen-final
 
MULTIMEDIA
MULTIMEDIAMULTIMEDIA
MULTIMEDIA
 
Ventajas y desventajas de moprosoft
Ventajas y desventajas de moprosoftVentajas y desventajas de moprosoft
Ventajas y desventajas de moprosoft
 
Historia y aplicaciones de la graficacion
Historia y aplicaciones de la graficacionHistoria y aplicaciones de la graficacion
Historia y aplicaciones de la graficacion
 
Clase10 2-lenguaje ensamblador
Clase10 2-lenguaje ensambladorClase10 2-lenguaje ensamblador
Clase10 2-lenguaje ensamblador
 
Arquitectura de memorias RAM Y ROM
Arquitectura de memorias RAM Y ROMArquitectura de memorias RAM Y ROM
Arquitectura de memorias RAM Y ROM
 
Metodologia oohdm
Metodologia oohdmMetodologia oohdm
Metodologia oohdm
 
Tecnologia analogica y digital
Tecnologia analogica y digitalTecnologia analogica y digital
Tecnologia analogica y digital
 
Mapa conceptual de telecomunicaciones
Mapa conceptual de telecomunicacionesMapa conceptual de telecomunicaciones
Mapa conceptual de telecomunicaciones
 
Ejemplo Desarrollo Factibilidad Operativa
Ejemplo Desarrollo Factibilidad OperativaEjemplo Desarrollo Factibilidad Operativa
Ejemplo Desarrollo Factibilidad Operativa
 
Sistemas operativos y aplicaciones de usuario
Sistemas operativos y aplicaciones de usuarioSistemas operativos y aplicaciones de usuario
Sistemas operativos y aplicaciones de usuario
 
Ventajas y desventajas
Ventajas y desventajas Ventajas y desventajas
Ventajas y desventajas
 
Arquitectura del procesador
Arquitectura del procesadorArquitectura del procesador
Arquitectura del procesador
 
Medidas de precaución y mantenimiento (modem)
Medidas de precaución y mantenimiento (modem)Medidas de precaución y mantenimiento (modem)
Medidas de precaución y mantenimiento (modem)
 
Tema manejo de la entrada
Tema manejo de la entradaTema manejo de la entrada
Tema manejo de la entrada
 
Chipset
ChipsetChipset
Chipset
 
Procesamiento paralelo
Procesamiento paraleloProcesamiento paralelo
Procesamiento paralelo
 
Estilos de programación y sus lenguajes
Estilos de programación y sus lenguajesEstilos de programación y sus lenguajes
Estilos de programación y sus lenguajes
 
Comandos del sistema operativo
Comandos del sistema operativoComandos del sistema operativo
Comandos del sistema operativo
 

Andere mochten auch

Esquema comparativo de los tipos de modelos y metodologías
Esquema comparativo de los tipos de modelos y metodologíasEsquema comparativo de los tipos de modelos y metodologías
Esquema comparativo de los tipos de modelos y metodologías
Leo Jm
 
Positivismo CláSico
Positivismo CláSicoPositivismo CláSico
Positivismo CláSico
equipon2
 
Metodologias agiles de gestion de proyecto. ¿agile.vs.pmi?
Metodologias agiles de gestion de proyecto. ¿agile.vs.pmi?Metodologias agiles de gestion de proyecto. ¿agile.vs.pmi?
Metodologias agiles de gestion de proyecto. ¿agile.vs.pmi?
Alejandro Gabay
 
Modelo De Desarrollo Evolutivo
Modelo De Desarrollo EvolutivoModelo De Desarrollo Evolutivo
Modelo De Desarrollo Evolutivo
camilosena89
 
Metodologia de entrenamiento en funcion del modelo tactico
Metodologia de entrenamiento en funcion del modelo tacticoMetodologia de entrenamiento en funcion del modelo tactico
Metodologia de entrenamiento en funcion del modelo tactico
Livio Contessotto
 
Procedimientos de laboratorio en ppr clase 4
Procedimientos de laboratorio en ppr clase 4Procedimientos de laboratorio en ppr clase 4
Procedimientos de laboratorio en ppr clase 4
A-estudiar
 

Andere mochten auch (20)

Análisis de los tipos de modelos y metodologías del modelado orientado a objetos
Análisis de los tipos de modelos y metodologías del modelado orientado a objetosAnálisis de los tipos de modelos y metodologías del modelado orientado a objetos
Análisis de los tipos de modelos y metodologías del modelado orientado a objetos
 
Esquema comparativo de los tipos de modelos y metodologías
Esquema comparativo de los tipos de modelos y metodologíasEsquema comparativo de los tipos de modelos y metodologías
Esquema comparativo de los tipos de modelos y metodologías
 
Metología Agiles Desarrollo Software (XP)
Metología Agiles Desarrollo Software (XP)Metología Agiles Desarrollo Software (XP)
Metología Agiles Desarrollo Software (XP)
 
Introducción a las Metodologías Ágiles
Introducción a las Metodologías ÁgilesIntroducción a las Metodologías Ágiles
Introducción a las Metodologías Ágiles
 
Modelos concurrentes
Modelos concurrentesModelos concurrentes
Modelos concurrentes
 
Vaciado de modelos ,impresiones funcionales
Vaciado de modelos ,impresiones funcionalesVaciado de modelos ,impresiones funcionales
Vaciado de modelos ,impresiones funcionales
 
4. Desarrollo ágil de software
4. Desarrollo ágil de software4. Desarrollo ágil de software
4. Desarrollo ágil de software
 
METODOLOGIAS AGILES
METODOLOGIAS AGILESMETODOLOGIAS AGILES
METODOLOGIAS AGILES
 
Unidad 2. metodologías de desarrollo DE SOFTWARE
Unidad 2. metodologías de desarrollo DE SOFTWAREUnidad 2. metodologías de desarrollo DE SOFTWARE
Unidad 2. metodologías de desarrollo DE SOFTWARE
 
Positivismo CláSico
Positivismo CláSicoPositivismo CláSico
Positivismo CláSico
 
Estructuración del modelo de análisis
Estructuración del modelo de análisisEstructuración del modelo de análisis
Estructuración del modelo de análisis
 
Modelado del análisis
Modelado del análisisModelado del análisis
Modelado del análisis
 
Metodologias agiles de gestion de proyecto. ¿agile.vs.pmi?
Metodologias agiles de gestion de proyecto. ¿agile.vs.pmi?Metodologias agiles de gestion de proyecto. ¿agile.vs.pmi?
Metodologias agiles de gestion de proyecto. ¿agile.vs.pmi?
 
Metodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliudMetodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliud
 
Sesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de procesoSesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de proceso
 
Modelo De Desarrollo Evolutivo
Modelo De Desarrollo EvolutivoModelo De Desarrollo Evolutivo
Modelo De Desarrollo Evolutivo
 
Metodología orientadas a objetos
Metodología orientadas a objetosMetodología orientadas a objetos
Metodología orientadas a objetos
 
Metodologia de entrenamiento en funcion del modelo tactico
Metodologia de entrenamiento en funcion del modelo tacticoMetodologia de entrenamiento en funcion del modelo tactico
Metodologia de entrenamiento en funcion del modelo tactico
 
Cuadro comparativo modelos para el desarrollo de software
Cuadro comparativo modelos para el desarrollo de softwareCuadro comparativo modelos para el desarrollo de software
Cuadro comparativo modelos para el desarrollo de software
 
Procedimientos de laboratorio en ppr clase 4
Procedimientos de laboratorio en ppr clase 4Procedimientos de laboratorio en ppr clase 4
Procedimientos de laboratorio en ppr clase 4
 

Ähnlich wie Tipos de modelo y metodologias

Metodologã­a orientada-a-objetos-omt.-rumbaugh
Metodologã­a orientada-a-objetos-omt.-rumbaughMetodologã­a orientada-a-objetos-omt.-rumbaugh
Metodologã­a orientada-a-objetos-omt.-rumbaugh
viisistemas
 
Modelado del AnáLisis
Modelado del AnáLisisModelado del AnáLisis
Modelado del AnáLisis
Carolina Rojas
 

Ähnlich wie Tipos de modelo y metodologias (20)

Metodologã­a orientada-a-objetos-omt.-rumbaugh
Metodologã­a orientada-a-objetos-omt.-rumbaughMetodologã­a orientada-a-objetos-omt.-rumbaugh
Metodologã­a orientada-a-objetos-omt.-rumbaugh
 
Metodología orientada a objetos (omt). rumbaugh
Metodología orientada a objetos (omt). rumbaughMetodología orientada a objetos (omt). rumbaugh
Metodología orientada a objetos (omt). rumbaugh
 
Modelado del AnáLisis
Modelado del AnáLisisModelado del AnáLisis
Modelado del AnáLisis
 
Metodologia uml
Metodologia umlMetodologia uml
Metodologia uml
 
Metodologia uml
Metodologia umlMetodologia uml
Metodologia uml
 
Metodologia UML
Metodologia UMLMetodologia UML
Metodologia UML
 
0 todo
0 todo0 todo
0 todo
 
Metodologia de iconix jhon poo
Metodologia de iconix jhon pooMetodologia de iconix jhon poo
Metodologia de iconix jhon poo
 
aplicado al analisis y diseño de REA diseño computacional
aplicado al analisis y diseño de REA diseño computacionalaplicado al analisis y diseño de REA diseño computacional
aplicado al analisis y diseño de REA diseño computacional
 
Modelado Orientado a Objetos
Modelado Orientado a ObjetosModelado Orientado a Objetos
Modelado Orientado a Objetos
 
Darwis gonzalez ci18115710
Darwis gonzalez ci18115710Darwis gonzalez ci18115710
Darwis gonzalez ci18115710
 
Darwis gonzalez ci18115710
Darwis gonzalez ci18115710Darwis gonzalez ci18115710
Darwis gonzalez ci18115710
 
6.modelado de los requerimientos escenarios y clases
6.modelado de los requerimientos  escenarios y clases6.modelado de los requerimientos  escenarios y clases
6.modelado de los requerimientos escenarios y clases
 
Metodología Estructurada
Metodología EstructuradaMetodología Estructurada
Metodología Estructurada
 
Metodologia para el proyecto
Metodologia para el proyectoMetodologia para el proyecto
Metodologia para el proyecto
 
Uml
UmlUml
Uml
 
UML
UMLUML
UML
 
Diagramas
DiagramasDiagramas
Diagramas
 
Diagramas uml
Diagramas umlDiagramas uml
Diagramas uml
 
Densy yuli
Densy yuliDensy yuli
Densy yuli
 

Tipos de modelo y metodologias

  • 1. TIPOS DE MODELO Y METODOLOGIAS Por Josafat Martínez Martínez LA METODOLOGÍA OOHDM (Método de Diseño Hipermedia Orientado a Objetos) Es una metodología de diseño de aplicaciones hipermedia en particular para aplicaciones web. Se puede representar gráficamente usando diagramas de clase, Diagrama navegacional + contexto, y diagrama de configuración ADV (Vista de Datos Abstracta). Existe una clara identificación de los tres diferentes niveles de diseño en forma independiente de la implementación. En OOHDM, el esquema conceptual está construido por clases, relaciones y subsistemas. Las clases son descritas como en los modelos orientados a objetos tradicionales. Sin embargo, los atributos pueden ser de múltiples tipos para representar perspectivas diferentes de las mismas entidades del mundo real [1]. Se usa notación similar a UML (Lenguaje de Modelado Unificado), tarjetas de clases y relaciones similares a las tarjetas CRC (Clase Responsabilidad Colaboración). El esquema de las clases consiste en un conjunto de clases conectadas por relaciones. Los objetos son instancias de las clases. Las clases son usadas durante el diseño navegacional para derivar nodos y las relaciones que son usadas para construir enlaces. La principal estructura primitiva del espacio navegacional es la noción de contexto navegacional. Un contexto navegacional es un conjunto de nodos, enlaces, clases de contextos, y otros contextos navegacionales (contextos anidados). Pueden ser definidos por comprensión o extensión, o por enumeración de sus miembros. El modelo de interfaz ADV (Vista de Datos Abstracta) especifica la organización y comportamiento de la interfaz, pero la apariencia física real o de los atributos, y la disposición de las propiedades de las ADV en la pantalla real son hechas en la fase de implementación. SOHDM (MÉTODO QUE DESARROLLA DISEÑO EN PANORAMAS (ESCENARIO) ORIENTADA A OBJETOS EN HIPERMEDIA) Es un Método que Desarrolla Diseño en panoramas o escenariosorientada a objetos en Hipermedia (Scenario - basedObjectoriented Hypermedia Desi gn Methodology). Presenta la necesidad de disponer de un proceso que permita capturar l as necesidades del sistema. Para ello, propone el uso de escenarios [2]. Esta propuesta ofrece un modelo de escenarios denominado SAC (ScenarioActivity Chart) para representar los requisitos. Hace uso del diagrama de contexto propuestos en los DFD (Diagrama de flujo de Datos).
  • 2. Es una de las primeras propuestas para la web y brinda el tratamiento de requisitos. El proceso de definición de requisitos parte de la realización de un diagrama de contexto tal y como se propone en los diagramas de flujo de datos. Utiliza panoramas que describen las actividades en los acontecimientos y primitivas de flujo. RATIONAL UNIFIED PROCESS (RUP) Captura varias de las mejores prácticas en el desarrollo moderno de software en una forma que es aplicable para un amplio rango de proyectos y organizaciones. Es una guía de cómo utilizar de manera efectiva UML.Provee a cada miembro de un equipo un fácil acceso a una base de conocimiento con guías, plantillas y herramientas para todas las actividades críticas de desarrollo [3]. Crea y mantiene modelos, en lugar de enfocarse en la producción de una gran cantidad de papeles de documentación. RUP describe como utilizar de forma efectiva procedimientos comerciales probados en el desarrollo de software para equipos de desarrollo de software, conocidos como “mejores prácticas”. Reconoce que las necesidades del usuario y sus requerimientos no se pueden definir completamente al principio. Reduce el costo del riesgo a los costos de un solo incremento. Acelera el ritmo del esfuerzo de desarrollo en su totalidad debido a que los desarrolladores trabajan para obtener resultados claros a corto plazo. Distribuye la carga de trabajo a lo largo del tiempo del proyecto ya que todas las disciplinas colaboran en cada iteración. Requiere conocimientos del proceso y de UML. Progreso visible en las etapas tempranas. El uso de Iteraciones (actividades) permite evaluar tempranamente los riesgos en lugar de descubrir problemas en la integración final del sistema. Facilita la reutilización del código teniendo en cuenta que se realizan revisiones en las primeras iteraciones lo cual además permite que se aprecien oportunidades de mejoras en el diseño. Una principal desventaja es que el grado de complejidad puede no resultar muy adecuado puesto que esta enfocado para proyecto grandes. Metodología OMT. La metodología de modelado de objetos OMT (ObjectModelingTechnique) descrito por [Rumbaugh]. Se basa en tres modelos fundamentales y ortogonales [4].
  • 3. Modelo Objeto Modelo dinámico Modelo Funcional OMT considera que todo lo necesario y suficiente para el desarrollo de sistemas OO se puede representar en alguno de estos tres modelos: Fases de la metodología OMT: Análisis: Su objetivo es desarrollar un modelo de lo que va a hacer el sistema. El modelo se expresa en términos de objetos y de relaciones entre ellos, flujo dinámico de control y las transformaciones funcionales [5]. A. Se construye el modelo de objetos y sus relaciones. Su objetivo es describir la estructura estática del software. Se abstraen los conceptos de los datos que son más importantes para la aplicación. Se describen gráficamente por los diagramas de objetos que definen las clases y sus relaciones Los pasos que se llevan a cabo para el modelo de objetos son: 1. Identificar las clases El documento que genera el modelo de objetos es el siguiente: Modelo de objetos = diagrama del modelo de objetos + diccionario de datos Se seleccionan los sustantivos de la descripción del problema como posibles clases candidatas. Se construye una lista [5]. Se eliminan las clases redundantes, irrelevantes o vagas o bien por ser atributos, operaciones o construcciones de implementación. Las clases se representan por rectángulos con tres compartimientos, en el primero se pone el nombre de la clase, en el segundo los atributos y en el tercero las operaciones o métodos. 1. Preparar un diccionario de clases (datos) Es muy importante definir que se entiende con mayor detalle por cada clase que quedó en la lista anterior. 2. Identificar las asociaciones entre objetos. Una asociación es una dependencia entre dos o más clases. Las asociaciones, se representan por líneas que unen a las clases sobre las cuales se puede escribir el nombre de la asociación. A los diagramas se les agrega la multiplicidad correcta. Puede ser "uno a uno"; "uno a muchos" representada por una bolita rellena del lado de los "muchos"; o "muchos a muchos" representada por bolitas rellenas a ambos extremos de la línea.
  • 4. 3. Identificar atributos. Los atributos son propiedades de los objetos tales como nombre, peso, velocidad, etc. 4. Organizar y simplificar clases usando herencia. La herencia se puede usar para generalizar los aspectos comunes de las clases existentes construyendo una superclase, o para refinar una clase en subclases especializadas. La notación de OMT para la herencia es un triángulo debajo de la superclase. 5. Verificar que existan trayectorias en el modelo de objetos para preguntas probables. En los pasos anteriores se construyó un diagrama de objetos, ahora se hace una revisión verificando que estén representadas todas las relaciones siguiéndolo para preguntas probables. 6. Iterar y refinar el modelo. 2. Se desarrolla el modelo dinámico. El documento que genera el modelo dinámico es: Modelo dinámico = diagramas de estados + diagrama global de trazado de eventos Se captura el aspecto concerniente a la secuencia de las operaciones en el tiempo. Se muestra el control sin importar que hacen exactamente las operaciones. Se representa por un diagrama de estados. El estado de un objeto es un conjunto de valores para sus atributos, en un cierto momento, el cual cambia al recibir un estímulo llamado evento. Un diagrama de estados es una gráfica de estados representados por círculos y eventos representados por flechas. Los pasos que se siguen en el modelo dinámico son: 1. Preparar escenarios de una interacción típica. 2. Identificar eventos entre objetos preparando un trazado de eventos para cada escenario. 3. Construir los diagramas de estados. 4. Revisar los eventos entre los objetos para verificar su consistencia. 3. Se construye el modelo funcional. El documento que genera el modelo funcional es: Modelo funcional = diagramas de flujo de datos + restricciones
  • 5. Especifica el significado de las operaciones o métodos en el modelo de objetos y de las acciones en el modelo dinámico. Muestra como se calculan los valores sin importar la secuencia, las decisiones ni la estructura de los objetos. Se utilizan diagramas de flujo de datos para mostrar las dependencias funcionales. SE VERIFICAN, ITERAN Y REFINAN LOS TRES MODELOS. El documento que genera el análisis contiene: Documento de análisis = definición del problema + modelo de objetos + modelo dinámico + modelo funcional. UML El lenguaje unificado de diagrama o notación (UML) sirve para especificar, visualizar y documentar esquemas de sistemas de software orientado a objetos. UML no es un método de desarrollo, lo que significa que no sirve para determinar qué hacer en primer lugar o cómo diseñar el sistema, sino que simplemente le ayuda a visualizar el diseño y a hacerlo más accesible para otros. UML está controlado por el grupo de administración de objetos (OMG) y es el estándar de descripción de esquemas de software [8]. UML está diseñado para su uso con software orientado a objetos, y tiene un uso limitado en otro tipo de cuestiones de programación. UML se compone de muchos elementos de esquematización que representan las diferentes partes de un sistema de software. Los elementos UML se utilizan para crear diagramas, que representa alguna parte o punto de vista del sistema.Soporta los siguientes tipos de diagramas: Diagrama de casos de uso que muestra a los actores (otros usuarios del sistema), los casos de uso (las situaciones que se producen cuando utilizan el sistema) y sus relaciones. Diagrama de clases que muestra las clases y la relaciones entre ellas. Diagrama de secuencia muestra los objetos y sus múltiples relaciones entre ellos. Diagrama de colaboración que muestra objetos y sus relaciones, destacando los objetos que participan en el intercambio de mensajes. Diagrama de estado muestra estados, cambios de estado y eventos en un objeto o en parte del sistema. Diagrama de actividad que muestra actividades, así como los cambios de una a otra actividad junto con los eventos que ocurren en ciertas partes del sistema. Diagrama de componentes que muestra los componentes de mayor nivel de la programación (cosas como Kparts o Java Beans).
  • 6. Diagrama de implementación que muestra las instancias de los componentes y sus relaciones. Diagrama de relaciones de entidad que muestra los datos y las relaciones y restricciones entre ellos. Bibliografía [1] Silva Darío Andrés, Mercerat Bárbara;Construyendo aplicaciones web con una metodología de diseño orientada a objetos, http://www.unab.edu.co/editorialunab/revistas/rcc/pdfs/r22_art5_c.pdf, Febrero 2002. [2] SCHWABE, D. ROSI, G.; BARBOSA, S. Systematic Hypermedia Application Design with OOHDM. Proceedings of the ACM International Conference on Hypertext (Hypertext'96). Washington DC, March, 16-20, 1996. http://www-di.inf.puc-rio.br/schwabe//papers/TAPOSRevised.pdf [3] MejíaÁlvarez Pedro, F. Ibarra Armando,Rational Unified Process. [4] http://www.mcc.unam.mx/~cursos/Objetos/Omt/omt.html [5] Juan Marcelo Flores Solís, OMT Análisis 2001, url: docentes.umss.edu.bo/fcyt/mflores/OMT- Analisis-6-mar-2002.ppt [6] Modelo Dinámico en Orientación a Objetos, Alejandro Hossian, url: http://www.itescam.edu.mx/principal/sylabus/fpdb/recursos/r18525.PDF [7] Modelo Estático, Dinámico y Funcional en OMT, Gustavo Tarrico Martínez, url: http://cup- coffe.blogspot.mx/2009/06/modelo-estatico-dinamico-y-funcional-en.html [8] Aguilar, A. L. (2005). Desarrollo de Aplicaciones Web Usando UML. Puebla: Universidad de Puebla. [9] http://www.itlalaguna.edu.mx/academico/carreras/sistemas/Analisis%20y%20dise% F1o%20orientado%20a%20objetos/rumbaugh.pdf [10]http://www.hipertexto.info/documentos/oohdm.htm