Diagramas UML -...

Post on 05-Feb-2018

223 views 0 download

Transcript of Diagramas UML -...

Diagramas UMLJUAN CARLOS CONDE RAMÍREZ

INTRODUCTION TO PROGRAMMING

Objetivos

◦ Comprender la importancia del modelado y el uso de diagramas para la Ingeniería y la arquitectura.

◦ Conocer las ventajas que tiene el uso de un modelo.

◦ Entender para qué fue creado UML y conocer sus fundamentos.

◦ Conocer los dos tipos de diagramas UML: Estructurales y Comportamentales.

◦ Visualizar el uso o aplicación de los principales diagramas UML en computación.

FCC-BUAP 2

Introducción a UML, I

•Cualquier rama de la Ingeniería o Arquitectura ha encontrado útil la representación gráfica desus diseños.

•Desde los inicios de la computación se han utilizado distintas formas de representar diseños deforma personalizada o en base a algún modelo gráfico.

•La falta de estandarización en la manera de representar gráficamente un modelo impedía quelos diseños gráficos realizados se pudieran compartir fácilmente entre distintos diseñadores.

FCC-BUAP 3

Introducción a UML, II

•Se necesitaba por lo tanto de un lenguaje no sólo para comunicar las ideas a otrosdesarrolladores sino también que sirviera de apoyo en los procesos de análisis de un problema.

•Con este objetivo se creo el Lenguaje Unificado de Modelado (UML – Unified ModelingLanguage).

•UML se ha convertido en ese estándar tan ansiado para representar y modelar la informacióncon la que se trabaja en las fases de análisis y de diseño.

FCC-BUAP 4

¿Por qué modelar?, I

•El recurso de la modelización es una práctica desde hace tiempo, indispensable en el desarrollode software.

•Un modelo es una representación abstracta de un sistema destinado a:◦ Facilitar el estudio

◦ Documentar el estudio

•Es una herramienta principal de comunicación entre los diferentes participantes en un proyecto.Cada miembro del equipo, desde el usuario hasta el desarrollador, utilizan y enriquecen elmodelo de formas diferentes.

FCC-BUAP 5

¿Por qué modelar?, II

•Los sistemas han evolucionado cada vez más a formas más complejas, su comprensión y sucontrol global superan las capacidades de un sólo individuo.

•Sin embargo, ¡La construcción de un modelo abstracto ayuda a poner remedio!.

FCC-BUAP 6

Ventajas del modelado•Considerando el proceso de desarrollo, un modelo representa el conjunto de las vistas sobre unaexpresión de necesidades (requisitos) o sobre una solución técnica.

•Tomado a un nivel de detalle pertinente, describe o concibe el objetivo de la etapa en curso.

•El modelo sirve para objetivos diferentes siguiendo la actividad de desarrollo y se construirá conpuntos de vista cada vez más detallados:

FCC-BUAP 7

Especificación de Requerimientos

Actividades de Análisis

Actividades de Diseño

Los fundamentos de UML, I

•UML se define como un lenguaje de modelización gráfico y textual destinado a:◦ comprender y describir requisitos,

◦ especificar y documentar sistemas,

◦ resumir arquitecturas computacionales,

◦ concebir soluciones y

◦ comunicar puntos de vista (opiniones).

•UML unifica a la vez las notaciones y los conceptos orientados objeto (como se puede apreciaren la siguiente figura).

FCC-BUAP 8

Los fundamentos de UML, II

•No se trata de una simple notación gráfica, ya que los conceptos transmitidos por un diagrama tienenuna semántica precisa y son portadores de sentido, de la misma forma que las palabras lo son de unlenguaje.

FCC-BUAP 9

UML 2, I

•UML unifica también las notaciones necesarias en las distintas actividades de un proceso dedesarrollo y oferta. Es el medio para establecer el seguimiento de las decisiones tomadas, desdela expresión de requisitos hasta la codificación.

•En este marco, un concepto que pertenece a los requisitos de usuario puede proyectar surealidad en el modelo de diseño y en la codificación.

•El hilo que conecta las distintas etapas de construcción permite entonces retomar del código alos requisitos, comprender lo que se tiene y sus resultados.

FCC-BUAP 10

UML 2, II

•En otras palabras, se puede detectar la “necesidad” de un bloque de código consultando suorigen en el modelo de requisitos.

•UML 2 se basa en 13 tipos de diagramas, cada uno de ellos dedicado a la representación deconceptos particulares de un sistema computacional.

•Estos tipos de diagramas se distribuyen en dos grandes grupos.

FCC-BUAP 11

UML 2: Diagramas Estructurales(6)

◦ Diagrama de clases: muestra los ladrillos de la base estática: clases, asociaciones, interfaces, atributos, operaciones,generalizaciones, etc.

◦ Diagrama de objetos: muestra las instancias de los elementos estructurales y sus vínculos en la ejecución.

◦ Diagrama de paquetes: muestra la organización lógica del modelo y las relaciones entre paquetes.

◦ Diagrama de estructura compuesta: muestra la organización interna de un elemento estático complejo.

◦ Diagrama de componentes: muestra estructuras complejas, con sus interfaces proporcionadas y requeridas.

◦ Diagrama de despliegue: muestra el despliegue físico de los “artefactos” sobre los recursos materiales.

FCC-BUAP 12

UML 2: Diagramas Comportamentales(7)◦ Diagrama de caso de uso: muestra las interacciones funcionales entre los actores y el sistema en estudio.

◦ Diagrama de vista del conjunto de interacciones: fusiona los diagramas de actividad y de secuencia para combinarfragmentos de interacción con decisiones y flujos.

◦ Diagrama de secuencia: muestra la secuencia vertical de los mensajes pasados entre los objetos en el sentido de unainteracción.

◦ Diagrama de comunicación: muestra la comunicación entre objetos en el plano en el sentido de una interacción.

◦ Diagrama de tiempo: fusiona los diagramas de estados y de secuencia para mostrar la evolución del estado de unobjeto en el transcurso del tiempo.

◦ Diagrama de actividad: muestra la secuencia de las acciones y decisiones en una actividad.

◦ Diagrama de Estados: muestra los distintos estados y transiciones posibles de los objetos de una clase.

FCC-BUAP 13

Diagrama de Casos de Uso•El diagrama de caso de uso, se utiliza en la actividad de especificación de requisitos.

•Muestra las interacciones funcionales ente los actores y el sistema en estudio.

FCC-BUAP 14

Diagrama de Clases•El diagrama de clases es el punto central en un desarrollo orientado a objetos.

◦ En análisis, tiene como finalidad describir la estructura de las entidades manipuladas por los usuarios.

◦ En diseño, el diagrama de clases representa la estructura de un código orientado a objetos.

FCC-BUAP 15

Diagrama de Paquetes•El diagrama de paquetes muestra la organización lógica del modelo y las relaciones entrepaquetes.

•Permite estructurar las clases de análisis y de diseño, pero igualmente los casos de uso.

FCC-BUAP 16

Diagrama de Secuencia•Los diagramas de secuencias y los diagramas de comunicación son ambos diagramas deinteracción UML y ambos representan intercambios de mensajes entre elementos, en el estudiode un funcionamiento particular del sistema.

•Los diagramas de secuencia sirven para desarrollar analíticamente las situaciones de uso delsistema.

FCC-BUAP 17

Diagrama de Comunicación•Veremos posteriormente, que los diagramas de secuencia y de comunicación permiten diseñarlos métodos de las clases.

FCC-BUAP 18

Diagrama de Estados•Los diagramas de estados representan el ciclo de vida común a los objetos de una misma clase.

•Este diagrama completa el conocimiento acerca de las clases, en análisis y en diseño, mostrandolos diferentes estados y posibles transiciones de los objetos de una clase en ejecución.

FCC-BUAP 19

Diagrama de Actividad•El diagrama de actividad representa los reglas de encadenamiento de las acciones y decisionesen el sentido de una actividad.

•Puede igualmente ser utilizado como una alternativa al diagrama de estados para describir lanavegación de un sitio Web.

FCC-BUAP 20

Diagrama de Objetos•El diagrama de objetos es una captura instantánea, una foto de un subconjunto de objetos de unsistema en un cierto momento del tiempo.

•Es probablemente el diagrama menos utilizado de UML.

FCC-BUAP 21

Diagrama de Componentes

•El diagrama de componentes muestra las unidades del software a partir de las cuales se haconstruido el sistema computacional, así como sus dependencias.

FCC-BUAP 22

Diagrama de Despliegue

•El diagrama de despliegue muestra el despliegue físico de los artefactos (elementos concretoscomo archivos, ejecutables, etc.) sobre los recursos materiales.

FCC-BUAP 23

Más Diagramas, I

•El diagrama de vista del conjunto de interacciones fusiona los diagramas de actividad y desecuencia para combinar fragmentos de interacción con decisiones y flujos.

•El diagrama de tiempo fusiona los diagramas de estados y de secuencia para mostrar laevolución del estado de un objeto en el transcurso del tiempo y los mensajes que modifican esteestado.

•El diagrama de estructura compuesta muestra la organización interna de un elemento estáticocomplejo bajo la forma de un ensamble de partes, de conectores y de puertos.

FCC-BUAP 24

Más Diagramas, II

•Como medida de simplicidad, en por ahora no utilizaremos estos tres tipos de diagramaspropuestos por UML 2.

FCC-BUAP 25

UML 2.x

FCC-BUAP 26