1 / 20

UML ( Unified Modeling Language ) Lenguage Unificado de Modelado

UML ( Unified Modeling Language ) Lenguage Unificado de Modelado. Antonio J. Sierra. Índice. Historia Introducción Objetivos del modelo Críticas Modelo Conceptual de UML Clases Diagrama de Clases. Historia (I). Entre mitad de los setenta y finales de los ochenta.

seamus
Download Presentation

UML ( Unified Modeling Language ) Lenguage Unificado de Modelado

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UML(Unified Modeling Language) Lenguage Unificado de Modelado Antonio J. Sierra

  2. Índice • Historia • Introducción • Objetivos del modelo • Críticas • Modelo Conceptual de UML • Clases • Diagrama de Clases

  3. Historia (I) • Entre mitad de los setenta y finales de los ochenta. • De 10 a 50 métodos orientados a objetos (1989-1994) • No cubrían las necesidades completamente. • De la experiencia de estos: • El método Booch, • El método OOSE (Object-Oriented Software Engineering) de Jacobson • El método OMT (Object Modeling Technique) Rumbaugh

  4. Historia

  5. Introducción • Unified Modeling Language (UML) es un lenguaje de modelado de propósito general estándarizado en el campo de la ingeniería software. • UML incluye un conjunto de técnicas de notación gráfica para crear modelosabstractos de sistemas específicos, referidos como modelo UML. • UML es un lenguaje gráfico de modelado de sistemas de software más conocido y utilizado en la actualidad; • Respaldado por el OMG (Object Management Group). • Es un lenguaje gráfico para visualizar, especificar, construir y documentar un sistema de software. • UML ofrece un estándar para describir un "plano" del sistema (modelo): • incluyendo aspectos conceptuales tales como procesos de negocios y funciones del sistema, • y aspectos concretos como expresiones de lenguajes de programación, • esquemas de bases de datos y componentes de software reutilizables.

  6. Introducción • UML es un "lenguaje" para especificar y no para describir métodos o procesos. • Se utiliza para definir un sistema de software, para detallar los artefactos en el sistema y para documentar y construir. • Es el lenguaje en el que está descrito el modelo. • Se puede aplicar en una gran variedad de formas para dar soporte a una metodología de desarrollo de software (tal como el Proceso Unificado Racional o RUP), pero no especifica en sí mismo qué metodología o proceso usar.

  7. Introducción • UML no puede compararse con la programación estructurada, pues UML significa (Lengua de Modelación Unificada), • UML no es un programa, solo se representa en forma de diagrama la realidad de una utilización en un requerimiento. • La programación estructurada, es una forma de programar como lo es la orientación a objetos, • La orientación a objetos viene siendo un complemento perfecto de UML, pero no por eso se toma UML sólo para lenguajes orientados a objetos

  8. Objetivos del modelo • Visualizar como es o queremos que sea un sistema. • Especificar la estructura y el comportamiento. • Proporcionar plantillas que nos guíen en la construcción de un sistema. • Documentar las decisiones que hemos adoptado.

  9. Críticas a UML • A pesar de estar ampliamente reconocido y utilizado, UML siempre ha sido muy criticado por su carencia de una semántica precisa, lo que ha dado lugar a que la interpretación de un modelo UML no pueda ser objetiva. • Otro problema de UML es que no se presta con facilidad al diseño de sistemas distribuidos. • En tales sistemas cobran importancia factores como transmisión, serialización, persistencia, etc. UML no cuenta con maneras de describir tales factores. • No se puede, por ejemplo, usar UML para señalar que un objeto es persistente o remoto, o que existe en un servidor que corre continuamente y que es compartido entre varias instancias de ejecución del sistema analizado. Sin embargo, UML si acepta la creación de nuestros propios componentes para este tipo de modelado.

  10. Modelo Conceptual de UML • Bloques básicos de construcción de UML • Elementos • Relaciones • Diagramas • Reglas de UML • Mecanismos comunes • Especificaciones • Adornos • Divisiones comunes • Mecanismos de extensibilidad

  11. Elementos Elementos estructurales Elementos de comportamiento Elementos de agrupación Elementos de anotación Relaciones Dependencia Asociación Generación Realización Diagramas clases objetos casos de uso de secuencia de colaboración de estados de actividades de componentes de despliegue Bloques básicos de construcción de UML

  12. Elementos estructurales • Clase • Interfaz • Colaboración • Caso de Uso • Clase activa • Componente • Nodo

  13. Elementos Estructurales: Las clases Nombre (abstracta en cursiva) Ventana Nombres Simples de clases público +origen #altura : Float -esMaestra : Boolean = false protegido Cliente privado atributos Nombre de Camino de clases abrir() cerrar() mover() dibujar() ponerAlarma(t:Temperatura) valor() : Temperatura operaciones java::awt::Rectangle Responsabilidades -- descriptivo de lo que realiza responsabilidades

  14. Atributos [visibilidad] nombre {multiplicidad}[:tipo] [=valor inicial] [{propiedades}] • Propiedades predefinidas • changeable No hay restricciones para modificar el valor del atributo • addOnly Una vez creado un valor no puede ser eliminado o modificado (con multiplicidad mayor que 1) • frozen El valor del atributo no se puede modificar tras inicializar el objeto

  15. Operaciones [visibilidad] nombre [(lista de parámetros)][:tipo de retorno] [{propiedades}] • En la lista por parámetros [dirección] nombre : tipo [= valor por defecto] • dirección puede ser in para parámetro de entrada (no modificable), out para salida (modificable) e inout para entrada (modificable). • propiedades puede ser • leaf no puede ser polimórfica • isQuery sin efectos laterales • sequential los invocadores deben coordinarse para que en el objeto sólo haya un único flujo • guarded se puede invocar exactamente una operación a un mismo tiempo sobre el objeto • concurrent operación concurrente

  16. Ejemplos Icono {root} Cliente 3 Almacén Producto origen:Punto nombre dirección teléfono fechaNacimiento id nombre precio ubicación Mostrar() Botón {leaf} Factura Envio Mostrar() Transacción acciones Responsabilidades --Mantener información relativa a productos enviados tuvoExito() deshacer()

  17. Elementos de comportamiento • Máquina de estados, secuencia de estados por los que pasa un objeto, una interacción durante su vida en respuesta a eventos • Interacción, mensaje intercambiados entre un conjunto de objetos Esperando dibujar

  18. Elementos de agrupación, y Elementos de anotación • Los elementos de agrupación, son partes organizativas • Los elementos de anotación, son partes explicativas Paquetes Notas Devuelve una copia del objeto receptor Reglas del negocio

  19. Relación en UML Dependencia, es una relación semántica entre dos elementos, en la cual un cambio a un elemento puede afectar a la semántica del otro Asociación, relación estructural que describe un conjunto de enlaces, los cuales son conexiones entre objetos Generalización, relación de especialización/generalización en la cual los objetos del elemento especializado (hijo) puede sustituir a los objetos del elemento general (padre) Realización, relación semántica entre clasificadores, en donde un clasificador especifica un contrato que otro clasificador garantiza que cumplirá. 0..1 * patrón empleado

  20. Diagrama de Clases

More Related