UML - Material de Apoyo - 1
UML - Material de Apoyo - 1
UML - Material de Apoyo - 1
lOMoARcPSD|10683817
Estructura de contenidos
Pág.
Introducción .......................................................................................................................3
Mapa de contenido ............................................................................................................4
1. El lenguaje uni昀椀cado de modelado “UML”.....................................................................5
1.1 Características de UML ...............................................................................................6
2. Tipos de diagramas UML...............................................................................................7
3. Caso de estudio práctico .............................................................................................11
3.1 Casos de uso............................................................................................................ 12
3.1.1 Componentes ........................................................................................................ 12
3.1.2 Representación grá昀椀ca.......................................................................................... 13
3.1.3 Tipos de relaciones................................................................................................ 14
3.1.4 Documentación...................................................................................................... 15
3.2 Diagrama de secuencia ............................................................................................ 15
3.2.1 Representación grá昀椀ca.......................................................................................... 16
3.2.2 Tipos de mensajes................................................................................................. 16
3.2.3 Diagrama de secuencia <<include>> .................................................................... 17
3.3 Diagrama de comunicación (Colaboración) ............................................................. 18
3.3.1 Representación grá昀椀ca.......................................................................................... 18
3.4 Diagrama de actividades .......................................................................................... 19
3.4.1 Representación grá昀椀ca.......................................................................................... 20
3.5 Diagrama de clases .................................................................................................. 23
3.5.1 Clases.................................................................................................................... 23
3.5.2 Relaciones ............................................................................................................. 24
3.6 Diagrama de objetos ................................................................................................ 27
3.6.1 Representación grá昀椀ca.......................................................................................... 27
3.7 Diagrama de estados ............................................................................................... 28
3.7.1 Representación grá昀椀ca.......................................................................................... 28
Glosario .......................................................................................................................... 31
Bibliografía...................................................................................................................... 32
Control del documento ................................................................................................... 33
2
lOMoARcPSD|10683817
Introducción
3
lOMoARcPSD|10683817
Mapa de contenido
4
lOMoARcPSD|10683817
Desarrollo de contenidos
La versión 1.1 de UML, de noviembre de 1997, fue adoptada por el OMG (Object
Management Group http://www.omg.org) como estándar.
5
lOMoARcPSD|10683817
Se conoce como Modelado Visual cuando se captura las partes esenciales del sistema,
se realiza y se plasma en una notación grá昀椀ca. El objetivo del modelado visual es permitir
manejar la complejidad de los sistemas a analizar o diseñar. Otro objetivo del modelado
visual, es la independencia del lenguaje de programación, de tal manera que los diseños
realizados usando UML se puedan implementar en cualquier lenguaje orientado a objetos.
• Visualizar: UML permite modelar de una forma grá昀椀ca un sistema de forma que
otro lo puede entender.
• Especi昀椀car: UML permite especi昀椀car cuáles son las características de un sistema
antes de su desarrollo.
• Construir: por medio de los modelos especi昀椀cados se pueden construir los
sistemas diseñados.
• Documentar: los propios elementos grá昀椀cos sirven como documentación
del sistema desarrollado, lo cual ayudará al mantenimiento de las soluciones
conceptuales en el transcurso del tiempo.
Todo sistema puede ser representado grá昀椀camente mediante modelos empleando UML el
cual soporta sus diseños usando diagramas que facilitan el entendimiento, trazabilidad
y comprensión entre sus componentes brindando claridad y calidad en la información
presentada a los diversos actores involucrados en la distribución de información que
requiere ser procesada por un sistema o 昀氀ujo de trabajo propio de una organización
empresarial.
6
lOMoARcPSD|10683817
Diagrama de clases
Diagrama de actividades
7
lOMoARcPSD|10683817
Diagrama de secuencias
Un diagrama que muestra las relaciones entre los actores y el sujeto (sistema), y los
casos de uso.
Modela la funcionalidad del sistema según la percepción del usuario externo (actor) y las
transacciones entre los actores y el sistema.
Los diagramas de casos de uso son responsables principalmente de documentar los
macrorrequisitos del sistema. Piense en los diagramas de casos de uso como la lista de
las funcionalidades que debe proporcionar el sistema.
8
lOMoARcPSD|10683817
Diagrama de componentes
Representa los componentes que conforman una aplicación, sistema o empresa. Los
componentes, sus relaciones, interacciones y sus interfaces públicas.
En esta vista se modelan los componentes del sistema, a partir del cual se construye
la aplicación. Son importantes para construir sistemas más grandes a partir de partes
pequeñas.
Diagrama Descripción
Un diagrama de estados muestra el estado
cambiante o dinámica de un objeto.
Son importantes en el modelado de
comportamiento de una interfaz, clase ante
los eventos disparadores del objeto.
Diagrama de estado
Cada estado modela un periodo de tiempo,
durante la vida de un objeto. Cuando ocurre
un evento, se puede desencadenar una
transición que lleve el objeto a un nuevo
estado.
10
lOMoARcPSD|10683817
11
lOMoARcPSD|10683817
3.1.1 Componentes
12
lOMoARcPSD|10683817
Identi昀椀cación de actores: los actores son los usuarios externos que podrán ejecutar los
casos de uso, en el ejemplo anterior, se identi昀椀caron dos actores (Médico y Empleado).
Las líneas que van del actor al caso de uso se denominan Asociación y sirven para
determinar cuáles Casos de uso lleva a cabo un determinado Actor.
13
lOMoARcPSD|10683817
Asociación: es la relación que se da entre los actores y el caso de uso. Esta relación
indica que el actor lleva a cabo el caso de uso.
El ejemplo anterior indica que para Gestionar una cita se debe validar datos, es decir, el
caso de uso Gestionar Cita “usa” al caso de uso Validar Datos.
Extendido ó <<extend>>: relación que se da entre casos de uso donde se evidencia que
un caso de uso es la generalización o especialización de otro.
14
lOMoARcPSD|10683817
3.1.4 Documentación
15
lOMoARcPSD|10683817
de vida representa la vida del objeto durante la interacción. Cada mensaje se representa
mediante una 昀氀echa entre las líneas de vida de dos objetos. El orden en el que se dan
estos mensajes transcurre de arriba hacia abajo.
16
lOMoARcPSD|10683817
17
lOMoARcPSD|10683817
Los componentes grá昀椀cos del diagrama de Comunicación son los mismos del diagrama
de Secuencia excepto por el no uso de la línea de vida de los objetos y la necesidad de
incluir un número en los mensajes que identi昀椀que el orden en que se deben ejecutar.
18
lOMoARcPSD|10683817
19
lOMoARcPSD|10683817
Decisión: tal como sucede con los diagramas de 昀氀ujo, en el diagrama de actividades se
puede llegar a un punto donde de acuerdo con el cumplimiento o no de una condición se
debe tomar por uno u otro camino.
20
lOMoARcPSD|10683817
21
lOMoARcPSD|10683817
22
lOMoARcPSD|10683817
Los diagramas de clases se usan para mostrar las clases de un sistema y las relaciones
entre ellas. Una clase es un elemento importante dentro del contexto de un sistema, que
puede tener información o datos valiosos y realizar acciones que sean necesarias dentro
del funcionamiento del sistema.
Estas clases a su vez tienen atributos (datos) y métodos (funciones), por ejemplo, la clase
PRODUCTO tiene como uno de sus atributos el atributo precio y uno de sus métodos
puede ser incrementarPrecio. De esta forma, a través de los atributos se puede acceder
a la información de la clase y a través de los métodos se pueden ejecutar acciones sobre
la clase. Estas clases se unen a otras clases a través de relaciones y así se conforma el
diagrama de clases.
3.5.1 Clases
Una clase es la unidad básica que agrupa una colección de objetos que poseen un tipo
de comportamiento. Toda clases se compone de los siguientes elementos:
• Nombre de la clase.
• Atributos, datos o propiedades también denominados miembros de la clase.
• Métodos (operaciones) o acciones propias de la clase. Estas acciones se identi昀椀can
con verbos en in昀椀nitivo.
Ejemplos de clases:
23
lOMoARcPSD|10683817
ATRIBUTOS: los atributos o características de una Clase pueden ser de tres tipos, que
de昀椀nen su visibilidad:
• Public (+): indica que el atributo será visible tanto dentro como fuera de la clase,
es decir, es accesible desde todos lados. Disponible para consumo externo.
• Private(-): indica que el atributo sólo será accesible desde dentro de la clase (sólo
sus métodos lo pueden acceder). Disponible para consumo interno.
• Protected (#): indica que el atributo no será accesible desde fuera de la clase,
pero si podrá ser accedido por métodos de la clase además de las subclases que
se deriven (ver herencia). Disponible para consumo interno o consumo por parte
de las clases hijos.
• Sin modi昀椀cador de acceso ( ): indica que el atributo será accesible desde
cualquier clase que se encuentre en el mismo paquete de la clase que contiene al
atributo sin modi昀椀cador de acceso.
MÉTODOS: los métodos u operaciones de una clase son la forma en cómo ésta interactúa
con su entorno, éstos pueden tener las características.
• Public (+): indica que el método será visible tanto dentro como fuera de la clase,
es decir, es accesible desde todos lados. Disponible para consumo externo.
• Private (-): indica que el método sólo será accesible desde dentro de la clase (sólo
otros métodos de la clase lo pueden acceder). Disponible para consumo interno.
• Protected (#): indica que el método no será accesible desde fuera de la clase,
pero si podrá ser accedido por métodos de la clase además de métodos de las
subclases que se deriven (ver herencia). Disponible para consumo interno o
consumo por parte de las clases hijos.
• Sin modi昀椀cador de acceso ( ): indica que el método será accesible desde
cualquier clase que se encuentre en el mismo paquete de la clase que contiene al
método sin modi昀椀cador de acceso.
3.5.2 Relaciones
Las relaciones entre las clases se dan por Herencia, Asociación, Agregación,
Composición y Dependencia (uso).
24
lOMoARcPSD|10683817
En el ejemplo anterior se ilustra que un Mueble puede ser una Silla, una Mesa o un Sofá.
Agregación y composición
• Composición por valor: relación estática, donde el tiempo de vida del objeto
incluido está condicionado por el tiempo de vida del que lo incluye. Este tipo de
relación es comúnmente llamada Composición (el Objeto base se construye a
partir del objeto incluido, es decir, es “parte/todo”).
25
lOMoARcPSD|10683817
En el ejemplo anterior indica que el Restaurante tiene Pedidos y Clientes, sin embargo,
los Pedidos requieren del Restaurante para poder existir (Composición), mientras que los
Clientes no (Agregación).
Asociación
El ejemplo anterior indica que un Pedido está relacionado con cero o muchos Productos.
Dependencia
Volviendo al ejemplo del caso de uso “Gestionar Citas”, el respectivo diagrama de clases
es:
Este diagrama se usa para hacer más entendible el sistema modelado ya que en lugar
de presentar únicamente el nombre de la clase como algo general, se presenta el posible
objeto derivado de la clase, dando mayor claridad y especi昀椀cación al sistema.
27
lOMoARcPSD|10683817
28
lOMoARcPSD|10683817
Una transición es un cambio de estado producido por un evento y re昀氀eja los posibles
caminos para llegar a un estado 昀椀nal desde un estado inicial. Desde un estado pueden
surgir varias transiciones en función del evento que desencadena el cambio de estado.
Características:
• Un sistema sólo puede tener un estado inicial, que se representa mediante una
transición sin etiquetar al primer estado normal del diagrama.
• Pueden existir varias transiciones desde el estado inicial, pero deben tener
asociadas condiciones, de manera que sólo una de ellas sea la responsable de
iniciar el 昀氀ujo.
• En ningún caso puede haber una transición dirigida al estado inicial.
• El estado 昀椀nal representa que un componente ha dejado de tener cualquier
interacción o actividad.
• No se permiten transiciones que partan del estado 昀椀nal.
• Puede haber varios estados 昀椀nales en un diagrama, ya que es posible concluir
el ciclo de vida de un componente desde distintos estados y mediante diferentes
eventos, pero dichos estados son mutuamente excluyentes, es decir, sólo uno de
ellos puede ocurrir durante una ejecución del sistema.
29
lOMoARcPSD|10683817
Los diagramas de transición de estados comprenden además otros dos elementos que
ayudan a clari昀椀car el signi昀椀cado de los distintos estados por los que pasa un componente
o sistema. Estos elementos se conocen como acciones y actividades. Una acción es una
operación instantánea asociada a un evento, cuya duración se considera no signi昀椀cativa
y que se puede ejecutar dentro de un estado, al entrar en un estado o al salir del mismo.
Una actividad es una operación asociada a un estado que se ejecuta durante un intervalo
de tiempo hasta que se produce el cambio a otro estado. Para aquellos estados que
tengan un comportamiento complejo, se puede utilizar un diagrama de transición de
estados de más bajo nivel. Estos diagramas se pueden mostrar por separado o bien
incluirse en el diagrama de más alto nivel, dentro del contorno del estado que representa.
En cualquier caso su contenido formará un contexto independiente del resto con sus
propios estados inicial y 昀椀nal.
30
lOMoARcPSD|10683817
Glosario
Actor: se emplea para indicar el tipo de usuario del sistema que podrá ejecutar alguna
función.
Asociación: relación que se da entre elementos de los diagramas, por ejemplo entre los
actores y el caso de uso o entre las clases.
Atributos: características de una Clase, son datos especí昀椀cos que interesa guardar de
cada entidad.
31
lOMoARcPSD|10683817
Bibliografía
32