Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tutorial Uml
Tutorial Uml
Contenido
1. El proceso
2. Los modelos
3. Los diagramas
4. Ejemplo
1. El proceso
Fases soportadas por UML
Anlisis de
requisitos de
usuario
Anlisis de
requisitos de
software
de usuario
Diseo
plataforma
Diseo del
modelo de
datos
Diseo
aplicaciones
Anlisis de requisitos de
usuario
Objetivos
Identificar los conceptos que existen en el mbito que
se desea automatizar
Identificar las relaciones entre los conceptos: herencia,
pertenencia y asociacin
Identificar las actividades y procesos (secuencias de
actividades) que realizan los actores
Resultado
Modelo del dominio
Anlisis de requisitos de
software
Objetivos
Identificar los objetos que van a estar presentes en el
software que se va a desarrollar
Identificar las operaciones que van a estar disponibles
para aplicarlas a esos objetos
Resultado
Modelo del software
Diseo de la plataforma
Objetivos
Identificar los aplicaciones que van a desarrollarse para
dar soporte a las necesidades analizadas
Especificar las posibles configuraciones de las
aplicaciones
Resultado
Arquitectura de la plataforma
Diseo de aplicaciones
Objetivos
Identificar los mdulos con los que se va a construir
cada aplicacin
Definir las relaciones entre estos mdulos
Resultado
Arquitectura de las aplicaciones
2. Los modelos
Modelo del dominio
Modelo del software
Modelo arquitectnico de la plataforma
Modelo arquitectnico de las aplicaciones
Diagramas de actividades
Para representar los procesos en los que un usuario o
conjunto de usuarios deben resolver conjuntamente una
situacin
Diagrama de estado
Para representar los distintos estados por los que atraviesa
un sistema en la medida en la que el estado afecte a su
comportamiento.
Arquitectura de la
plataforma
Diagrama de emplazamiento
Para representar los componentes de una plataforma
hardware (servidores, estaciones de trabajo, terminales...) y
software (bases de datos, servicios, aplicaciones).
Es posible desarrollar varios diagramas de emplazamiento,
de manera que se establezcan posibles configuraciones
diferentes.
Diagramas de actividades
Para describir el comportamiento del software en una
situacin que afecte a muchas aplicaciones.
Diagramas de estados
Para describir los posibles estados del conjunto de la
plataforma en funcin de las operaciones que ejecuten los
usuarios.
Arquitectura de las
aplicaciones (1)
Diagrama de clases de diseo
Para representar las clases que van a componer la
arquitectura de una aplicacin.
Tambin se representan las relaciones que van a existir entre
esas clases (composicin, herencia, dependencia,
navegabilidad)
Diagramas de paquetes
Para agrupar clases en un software grande. Los paquetes
son tiles para la prueba, ya que cada paquete debe tener
una o mas unidades de prueba que compruebe el
comportamiento del paquete
Diagrama de estados
Para representar los estados en los que se puede encontrar
un objeto de una clase.
Arquitectura de las
aplicaciones (2)
Diagramas de interaccin de objetos
Para describir como grupos de objetos colaboran para
proporcionar algn comportamiento en una situacin simple
como ejecutar una operacin, atender algn evento...
Hay dos tipos de diagramas de interaccin
Diagrama de colaboracin
Son tiles en los casos de interacciones sncronas entre
objetos.
Diagrama de secuencia
Son muy tiles para representar procesos concurrentes y
respuestas asncronas.
3. Los diagramas
Diagrama de clases
Diagrama de casos de uso
Diagrama de interaccin
Diagrama de paquetes
Diagrama de estados
Diagrama de actividades
Diagrama de emplazamiento
publico
privado
protegido
Papel de B.
Cardinalidad
Papel de A.
Cardinalidad
{ Restriccin }
Clase A
Clase A
Clase B
Clase B
Clase B
Clase
asociacin
Clase A
Cualificador
Clase B
Relacin de agregacin
Clase I
Clase A
Criterio discriminante
Clase Ax
Clase Ay
Relacin de composicin
Tambin representa la composicin de un
objeto, pero la existencia de los componentes
es dependiente de la existencia de la clase
que lo contiene. Se utiliza par representar la
composicin de una clase en el diseo
C
Clase
Clase
C
Clase I
Clase I
Relacin de dependencia
Fuente
Destino
Clase
Clase
Clase parametrizada
Interfaces
Plantilla
Clase
Diagramas de casos de
uso
Hay que distinguir entre las intenciones del usuario y las interacciones con
el sistema.
Un caso de uso representa una intencin de un usuario y las interacciones
que va a realizar dicho usuario.
En un diagrama de casos de uso se representan varios casos de uso para
cumplir con las intenciones de un usuario. Tambin se utilizan para
representar las operaciones que ejecuta un actor virtual.
usa
Caso de uso
Actor
extiende
Diagrama de actividades
Este diagrama se puede utilizar en
el anlisis de requisitos de usuario
para representar las actividades de
un proceso y las condiciones de
ejecucin del mismo.
Tambin se puede utilizar en el
diseo de la arquitectura de la
plataforma para describir el
comportamiento del software en una
situacin que afecte a muchas
aplicaciones.
Actividad
condicin transicin
*
para n elementos
Actividad
Actividad
Actividad
condicin
sincronizacin
condicin transicin
Actividad
Diagrama de secuencia
Este diagrama se utiliza en el
diseo de la arquitectura de
las aplicaciones para
representar una traza de un
proceso, aunque tambin es
muy til para representar las
interacciones entre
aplicaciones cliente-servidor
o aplicaciones multihilo con
varios procesos.
El diagrama permite
representar durante el tiempo
de vida de un objeto su
comportamiento.
objeto: clase
create
objeto: clase
mensaje
autodelegacin
retorno
destroy
Diagrama de colaboracin
El significado de un diagrama de colaboracin es bastante similar al
diagrama de secuencia. Fudamentalmente se utiliza en el diseo de
la arquitectura de las aplicaciones para describir la traza de un
proceso.
objeto: clase
1: mensaje(..)
: clase
objeto
1.1*: mensaje(..)
1.2:[condicion] mensaje(..)
Diagrama de paquetes
Este diagrama se utiliza para representar los detalles del diseo de
la arquitectura de las aplicaciones.
Se representan las unidades de cdigo que se hayan desarrollado
as como la visibilidad entre ellas.
Para cada unidad se identifican los mdulos que contienen.
paquete B
paquete A
Clase A
Clase B
Clase C
Diagrama de estados
Este diagrama se puede utilizar
tanto el anlisis de requisitos de
usuario como en el diseo de la
arquitectura de las aplicaciones. Un
diagrama de estados se emplea
cuando el estado de un sistema u
objeto pueda afectar a su
comportamiento.
En el anlisis representa los
estados de un sistema, mientras
que el diseo representa los
estados de un objeto.
comienzo
Estado
Estado
var: tipo=valor
entry / accin
exit / accin
evento / accin
do / actividad
Estado
evento[condicin] / accin
Estado
Estado
Estado
fin
Diagrama de
emplazamiento
Para representar los componentes
de una plataforma hardware
(servidores, estaciones de trabajo,
terminales...) y software (bases de
datos, servicios, aplicaciones).
Es posible desarrollar varios
diagramas de emplazamiento, de
manera que se establezcan
posibles configuraciones diferentes.
nodo
componente
componente