Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Definicin
UML es un lenguaje de modelado que sirve para visualizar, especificar , construir y documentar un sistema software.
Lenguaje de modelado:
Lenguaje cuya vocabulario y reglas se centran en la representacin conceptual y fsica de un sistema (Booch, Jacobson y Rumbaugh).
2
Modelo UML
CDIGO
Ingeniera Inversa
6
Mecanismos comunes
Especificaciones
Adornos
Diagramas
Generalizacin
Realizacin
Divisiones Comunes
Mecanismos Externos
Elementos
Elem. Estructurales
Elem. de comportamiento
Elem. de agrupacin
Elementos Estructurales
Son los nombres de los modelos de UML. Generalmente corresponden a la parte esttica del modelo.
Clases
Agrupacin de atributos, operaciones relaciones, y semntica. Puede implementar una o varias interfaces.
Nombre de Clase Variables Operaciones
12
Interfaces
Conjunto de servicios para las clases o componentes que las implementan.
Son, por tanto, el comportamiento visible externo.
Nombre de Interfaz
13
Colaboraciones
Grupo de clases que interactuan para colaborar an ms que la suma de sus comportamientos. Tiene dimensin estructural y de comportamiento. Una clase puede participar en varias colaboraciones. Son la implementacin de los patrones de un sistema.
Nombre de Colaboracin
14
Casos de uso.
Secuencia de acciones que un sistema ejecuta. Se utiliza para estructurar el comportamiento de un modelo. Se realiza por una colaboracin.
15
Clase activa
Tipo de clase en la que existen uno o varios hilos de ejecucin.
Existe, por tanto, comportamiento concurrente.
Nombre de Clase Activa
Nombres de Operaciones
16
Componente
Es un empaquetamiento de elementos lgicos tales como clases, interfaces (con su implementacin).
Ejemplo JavaBeans.
Nombre de Componente
17
Nodos
Es un recurso computacional que dispone de memoria y capacidad de procesamiento.
En un nodo puede residir un conjunto de componentes.
Nombre de Nodo
18
19
Elementos de comportamiento
Elementos de Comportamiento
Interaccin
Mquina de Estados
Corresponden a las partes dinmicas de los modelos de UML. Son los verbos y representan el comportamiento. Estos elementos estn conectados a los elementos estructurales: clases, colaboraciones y objetos
20
Interacciones
Conjunto de mensajes entre objetos. Involucra a los siguientes elementos: Mensajes Secuencias de accin Enlaces
21
Mquina de estados
Especifica la secuencia de estados por la que pasa un objeto en su vida en respuesta a eventos. Involucra a: Estados Transiciones Eventos Actividades
22
Elementos de agrupacin
Son los organizadores de los modelos UML Estn conectados semnticamente a los elementos estructurales y generalmente a las clases, colaboraciones y objetos. Bsicamente hay un solo elemento de agrupacin que son los paquetes aunque tambin existen los frameworks, modelos y subsistemas.
23
Paquetes
Agrupan tanto elementos estructutrales como de comportamiento. Es conceptual y existen en tiempo de desarrollo (contrariamente a los componentes que existen en tiempo de ejecucin).
Nombre de Paquete
24
Elementos de Anotacin
Son las explicaciones sobre los modelos UML. Comentarios para describir o aclarar cualquier modelo. El elemento principal de anotacin es la nota, aunque existen variaciones tales como requisitos.
25
Las Notas
Smbolo que muestra comentarios o restricciones de un elemento o conjunto de elementos.
Texto de la Nota
26
Relaciones
Bloques Bsicos de Construccin
Elementos Relaciones
Dependencia
Asociacin Generalizacin Realizacin
Segundo bloque de los tres que conforman UML y que se dedica a ligar los elementos estudiados antes y obtener modelos bien formados. Existen variaciones como el refinamiento, la traza, la inclusin y la extensin.
27
Diagramas
Dependencias
Relacin semntica entre dos elementos, uno independiente y el otro dependiente. Un cambio en el elemento independiente afecta al dependiente
28
Asociaciones
Se utilizan para multiplicidad describir enlaces entre objetos. 0..1 La agregacin (asociacin entre un profesor todo y sus partes) es un tipo especial de asociacin.
*
estudiante
Generalizacin
Relacin entre objetos especializados (hijos) de objetos generales (padres). El objeto hijo comparte la estructura y comportamiento del objeto padre.
(Apunta al padre)
30
Realizacin
Relacin semntica entre clasificadores indicando que se cumplir la regla de clasificacin. Existen clasificaciones: Entre interfaces y clases. Entre casos de uso y colaboraciones.
31
Diagramas
Representacin grfica de un conjunto de elementos formadas por nodos (elementos) y arcos (relaciones). Permiten ver el sistema desde diferentes perspectivas (proyecciones). Puede tener cualquier combinacin de elementos y relaciones (un elemento puede estar en uno o varios diagramas).
32
Diagramas (Clasificacin)
Bloques Bsicos de Construccin
Elementos
Relaciones
Diagramas
Clases Colaboracin
Objetos Estados
Secuencia Componentes
Despliegue
33
Diagramas de Clases
Son los ms comunes y muestran las clases, interfaces y colaboraciones, as como sus relaciones. Son los diagramas del diseo esttico de un sistema. Si existen clases activas entonces tamben son los diagramas de diseo de proceso esttico del sistema.
34
Diagramas de Objetos
Representa un conjunto de objetos y sus relaciones. Representan instancias los elementos de los diagramas de clases. Igual que los diagramas de clases representan la parte esttica del sistema aunque desde el punto de vista de casos reales o prototpicos.
35
36
Diagramas de Estados
Muestra una mquina de estados con:
Transiciones Eventos Actividades.
Parte dinmica de un sistema. Son importante en el modelado de interfaces, clases y objetos. Modelan el comportamiento dirigido por eventos (Sistemas reactivos).
38
Diagramas de actividades
Es un tipo especial de diagrama de estados y muestra el flujo de actividades de un sistema. Son la parte dinmica del sistema. Modelan el funcionamiento del sistema y resaltan el flujo de control entre objetos.
39
Diagramas de componentes
Muestran la organizacin y dependencias entre elementos. Son la vista de implementacin esttica del sistema. Se corresponden generalmente con clases, interfaces y colaboraciones.
40
Diagramas de Despliegue
Muestran la configuracin de nodos de procesamiento en tiempo de ejecucin y los componentes que residen en ellos. Cubren la vista de despliegue esttica de una arquitectura. Se relacionan con los diagramas de componentes ya que un nodo incluye uno o varios componentes.
41
Mecanismos comunes
Asociacin
Realizacin
42
Mecanismos comunes
Especificaciones
Adornos
Divisiones Comunes
Mecanismos de Extensibilidad
44
Especificaciones
Detrs de cada elemento grfico existe una especificacin que en modo texto especifica la sintaxis y la semntica. La notacin grfica visualiza un sistema, la especificacin refleja los detalles del mismo Un modelo se crea graficando y posteriormente especificando (tambin existe la Ingeniera Inversa).
45
Adornos
Sirven para incluir detalles tanto textuales como grficos.
Ejemplo en una clase se pueden incluir smbolos que indiquen si la clase es abstracta, tipo de visibilidad de los atributos, etc.
46
Divisiones Comunes
Hay al menos dos formas de divisin:
1) Clase y Objeto.- Siendo la clase la abstraccin y un objeto la manifestacin de esa abstraccin. 2) Interfaz e Implementacin.- La interfaz declara un contrato y la Implementacin es responsable de hacer efectivo ese contrato
47
Mecanismos de extensibilidad
Mecanismos comunes
Especificaciones
Adornos
Divisiones Comunes
Mecanismos de Extensibilidad
Estereotipos
UML no es un lenguaje cerrado y permite extenderse de manera controlada para poder expresar todos los matices necesarios.
48
Estereotipos
Permite crear nuevos tipos de construccin derivados de los existentes pero especficos a un problema. Ejemplo en Java se modelan las excepciones que son clases pero especiales (solo se permite que se lancen y se capturen).
Nombre de clase
Nombres de procesos Estereotipo
49
Valor etiquetado
Aade informacin en la especificacin del elemento para extender las propiedades de un bloque de construccin UML. Ejemplo nmero de versin, autor que no son conceptos primitivos de UML.
50
Restricciones
Permite aadir nuevas reglas o modificar las existentes para extender Mi Clase la semntica de un bloque de construccin. Por ejemplo el orden de Insertar_elemento() insercin de elementos en una variable lista de una clase.
ordenado 51
Arquitectura (I)
Mecanismo por el cual un sistema software puede ser visto desde diferentes perspectivas y se controla el desarrollo iterativo e incremental de un sistema a lo largo de su ciclo de vida. Tiene que ver en:
Organizacin Seleccin de elementos estructurales e interfaces Comportamiento y composicin de esos elementos estructurales. Estilo arquitectnico: elementos estticos,dinmicos, interfaces, colaboraciones y composiciones. 52
Arquitectura (II)
La arquitectura no solo tiene que ver lo la estructura y comportamiento de los modelos UML sino tambin con:
Uso Funcionalidad Rendimiento Capacidad de adaptacin Reutilizacin Comprensin Restricciones econmicas y de tecnologa Compromisos entre alternativas Aspectos estticos.
53
Ensamblado, configuraciones
Vista de implementacin
Vista de despliegue
Topologa, distribucin, entrega, instalacin
54
rendimiento
55
Vista de diseo
Son las clases, interfaces y colaboraciones que componen el vocabulario del problema y su solucin. Representa los requisitos funcionales del sistema, es decir, los servicios que este debera proporcionar. La esttica de esta vista est en los diagramas de clases y objetos. La dinmica en los de interaccin, estados y actividades.
56
Vista de procesos
Contiene los procesos o hilos que forman los mecanismos de sincronizacin y concurrencia de un sistema. Cubre el funcionamiento, crecimiento y rendimiento del sistema. Los aspectos estticos y dinmicos de esta vista estn en los propios diagramas de diseo pero poniendo nfasis en las clases activas.
57
Vista de implementacin
Gestiona los componentes y archivos que ensamblan y hacen disponible el sistema fsico. Gestiona las configuraciones de las distintas versiones. La esttica est en los diagramas de componentes y la dinmica en los de interaccin, estados y actividades.
58
Vista de despliegue
Contiene los nodos que forman la topologa hardware del sistema. Los aspectos estticos se encuentran en los diagramas de despliegue. Los aspectos dinmicos se encuentran en los diagramas de interaccin, estados y actividades.
59