Tipos de modelo y metodologias

  • 994 views
Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
994
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
19
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. TIPOS DE MODELO Y METODOLOGIASPor Josafat Martínez MartínezLA 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 dela implementación.En OOHDM, el esquema conceptual está construido por clases, relaciones y subsistemas. Lasclases son descritas como en los modelos orientados a objetos tradicionales. Sin embargo, losatributos pueden ser de múltiples tipos para representar perspectivas diferentes de las mismasentidades del mundo real [1].Se usa notación similar a UML (Lenguaje de Modelado Unificado), tarjetas de clases y relacionessimilares a las tarjetas CRC (Clase Responsabilidad Colaboración). El esquema de las clases consisteen un conjunto de clases conectadas por relaciones. Los objetos son instancias de las clases. Lasclases son usadas durante el diseño navegacional para derivar nodos y las relaciones que sonusadas 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 contextosnavegacionales (contextos anidados). Pueden ser definidos por comprensión o extensión, o porenumeración de sus miembros.El modelo de interfaz ADV (Vista de Datos Abstracta) especifica la organización y comportamientode la interfaz, pero la apariencia física real o de los atributos, y la disposición de las propiedades delas ADV en la pantalla real son hechas en la fase de implementación.SOHDM (MÉTODO QUE DESARROLLA DISEÑO EN PANORAMAS (ESCENARIO) ORIENTADA AOBJETOS EN HIPERMEDIA)Es un Método que Desarrolla Diseño en panoramas o escenariosorientada a objetos enHipermedia (Scenario - basedObjectoriented Hypermedia Desi gn Methodology). Presenta lanecesidad 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) pararepresentar 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 ycomo 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 esaplicable 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ácilacceso a una base de conocimiento con guías, plantillas y herramientas para todas las actividadescríticas de desarrollo [3].Crea y mantiene modelos, en lugar de enfocarse en la producción de una gran cantidad de papelesde documentación.RUP describe como utilizar de forma efectiva procedimientos comerciales probados en eldesarrollo de software para equipos de desarrollo de software, conocidos como “mejoresprácticas”.Reconoce que las necesidades del usuario y sus requerimientos no se pueden definircompletamente 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 desarrolladorestrabajan para obtener resultados claros a corto plazo.Distribuye la carga de trabajo a lo largo del tiempo del proyecto ya que todas las disciplinascolaboran 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 dedescubrir problemas en la integración final del sistema.Facilita la reutilización del código teniendo en cuenta que se realizan revisiones en las primerasiteraciones 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 puestoque 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 FuncionalOMT considera que todo lo necesario y suficiente para el desarrollo de sistemas OO se puederepresentar 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 seexpresa en términos de objetos y de relaciones entre ellos, flujo dinámico de control y lastransformaciones 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 relacionesLos 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.UMLEl lenguaje unificado de diagrama o notación (UML) sirve para especificar, visualizar y documentaresquemas de sistemas de software orientado a objetos. UML no es un método de desarrollo, loque 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. UMLestá controlado por el grupo de administración de objetos (OMG) y es el estándar de descripciónde esquemas de software [8].UML está diseñado para su uso con software orientado a objetos, y tiene un uso limitado en otrotipo de cuestiones de programación.UML se compone de muchos elementos de esquematización que representan las diferentes partesde un sistema de software. Los elementos UML se utilizan para crear diagramas, que representaalguna 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 queparticipan en el intercambio de mensajes.Diagrama de estado muestra estados, cambios de estado y eventos en un objeto o en parte delsistema.Diagrama de actividad que muestra actividades, así como los cambios de una a otra actividadjunto 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 entreellos.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 (Hypertext96). 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