View
59
Download
4
Category
Preview:
Citation preview
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 1/1261
www.dsic.upv.es/~uml
Construcción de una casa para “fido”
Puede hacerlo una sola persona
Requiere:
Modelado mínimo
Proceso simple
Herramientas simples
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 2/1262
www.dsic.upv.es/~uml
Construcción de una casa
Construida eficientemente y en un tiempo
razonable por un equipo
Requiere:
Modelado
Proceso bien definido
Herramientas más sofisticadas
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 3/1263
www.dsic.upv.es/~uml
Construcción de un rascacielos
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 4/126
4 www.dsic.upv.es/~uml
Claves en Desarrollo de SI
Herramientas Proceso
Notación
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 5/126
5 www.dsic.upv.es/~uml
Sistema Computacional
Proceso de Negocios
Orden
Item
envío
“El modelado captura las partes esenciales del sistema ”
Abstracción - Modelado Visual (MV)
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 6/126
6 www.dsic.upv.es/~uml
MV para manejar la complejidad
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 7/126
7 www.dsic.upv.es/~uml
Interfaz de Usuario(Visual Basic,Java, ..)
Lógica del Negocio(C++, Java, ..)
Servidor de BDs(C++ & SQL, ..)
“Modelar el sistema independientemente
del lenguaje de implementación”
MV para definir la Arquitecturadel Software
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 8/126
8 www.dsic.upv.es/~uml
Múltiples Sistemas
MV promueve la reutilización
ComponentesReutilizados
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 9/126
9 www.dsic.upv.es/~uml
¿Qué es UML?
UML = Unified Modeling Language
Un lenguaje de propósito general para el modelado
orientado a objetos
Documento “OMG Unified Modeling LanguageSpecification”
UML combina notaciones provenientes desde:Modelado Orientado a Objetos
Modelado de Datos
Modelado de Componentes
Modelado de Flujos de Trabajo (Workflows)
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 10/126
10 www.dsic.upv.es/~uml
Situación de Partida
Diversos métodos y técnicas OO, con muchosaspectos en común pero utilizando distintasnotaciones
Inconvenientes para el aprendizaje, aplicación,construcción y uso de herramientas, etc.
Pugna entre distintos enfoques (y correspondientes
gurús)
=> Necesidad de una notación estándar
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 11/126
11 www.dsic.upv.es/~uml
Historia de UML
Comenzó como el “Método Unificado”, con laparticipación de Grady Booch y Jim Rumbaugh.Se presentó en el OOPSLA’95
El mismo año se unió Ivar Jacobson. Los “Tres Amigos” son socios en la compañía RationalSoftware. Herramienta CASE Rational Rose
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 12/126
12 www.dsic.upv.es/~uml
Historia de UML
Nov „97 UML aprobado por el OMG
1998
1999
2000
UML 1.2
UML 1.3
UML 1.4
2002?UML 2.0
Revisiones menores
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 13/126
13 www.dsic.upv.es/~uml
Participantes en UML 1.0
Rational Software
(Grady Booch, JimRumbaugh y Ivar Jacobson)
Digital Equipment
Hewlett-Packard
i-Logix (David Harel)
IBM
ICON Computing
(Desmond D’Souza) Intellicorp and JamesMartin & co. (James Odell)
MCI Systemhouse
Microsoft
ObjecTime
Oracle Corp.Platinium Technology
Sterling Software
Taskon
Texas Instruments
Unisys
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 14/126
14 www.dsic.upv.es/~uml
UML “aglutina” enfoques OO
UML
Rumbaugh
Jacobson
Meyer
Harel
Wirfs-Brock
Fusion
Embly
Gamma et. al.
Shlaer-Mellor
Odell
Booch
Pre- and Post-conditions
State Charts
Responsabilities
Operation descriptions,
message numbering
Singleton classes
Frameworks, patterns,
notes
Object life cycles
é
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 15/126
15 www.dsic.upv.es/~uml
Métodos Formales enModelado
Tipos de enfoques: no-formales, semi-formales y formales
Las principales mejoras al utilizar métodosformales son:
Mayor rigor en la especificación
Mejores condiciones para realizar la verificación yvalidación en forma más exhaustiva
Mejores condiciones para automatización de procesospara la generación automática de prototipos y/o códigofinal
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 16/126
16 www.dsic.upv.es/~uml
Inconvenientes en UML
Definición del proceso de desarrollo usando UML. UML
no es una metodología
Falta integración con respecto de otras técnicas tales
como patrones de diseño, interfaces de usuario,documentación, etc.
Ejemplos aislados
“Monopolio de conceptos, técnicas y métodos entornoa UML”
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 17/126
17 www.dsic.upv.es/~uml
Perspectivas de UML
UML será el lenguaje de modelado orientado aobjetos estándar predominante los próximos años
Razones:
Participación de metodólogos influyentesParticipación de importantes empresas
Aceptación del OMG como notación estándar
Evidencias:Herramientas que proveen la notación UML
“Edición” de libros Congresos, cursos, “camisetas”, etc.
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 18/126
18 www.dsic.upv.es/~uml
Diagramas de UML
Use CaseDiagrams
Use CaseDiagrams
Diagramas deCasos de Uso
ScenarioDiagrams
ScenarioDiagrams
Diagramas deColaboración
StateDiagrams
StateDiagrams
Diagramas deComponentes
ComponentDiagramsComponentDiagrams
Diagramas deDistribución
StateDiagrams
StateDiagrams
Diagramas deObjetos
ScenarioDiagramsScenarioDiagrams
Diagramas deEstados
Use CaseDiagrams
Use CaseDiagrams
Diagramas deSecuencia
StateDiagrams
StateDiagrams
Diagramas deClases
Diagramas deActividad
Modelo
“Un modelo es una descripción completa de un sistema desde una perspectiva concreta”
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 19/126
19 www.dsic.upv.es/~uml
Paquetes en UML
Los paquetes ofrecen un mecanismo generalpara la organización de los modelosagrupando elementos de modelado
Se representan gráficamente como:
Nombre depaquete
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 20/126
20 www.dsic.upv.es/~uml
… Paquetes en UML
Cada paquete corresponde a un subconjuntodel modelo y contiene, según el modelo, clases,objetos, relaciones, componentes y diagramas
asociados
Un paquete puede contener otros paquetes, sinlímite de anidamiento pero cada elemento
pertenece a (está definido en) sólo un paquete
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 21/126
21 www.dsic.upv.es/~uml
… Paquetes en UML
Una clase de un paquete puede aparecer enotro paquete por la importación a través de
una relación de dependencia entre paquetes
Todas las clases no son necesariamentevisibles desde el exterior del paquete, es
decir, un paquete encapsula a la vez queagrupa
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 22/126
22 www.dsic.upv.es/~uml
El ParadigmaOrientado a Objetos
¿P é l O i t ió
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 23/126
23 www.dsic.upv.es/~uml
¿Por qué la Orientación aObjetos?
Proximidad de los conceptos de modelado respectode las entidades del mundo real
Mejora captura y validación de requisitos
Acerca el “espacio del problema” y el “espacio de la solución”
Modelado integrado de propiedades estáticas y
dinámicas del ámbito del problema
Facilita construcción, mantenimiento y reutilización
¿P é l O i t ió
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 24/126
24 www.dsic.upv.es/~uml
¿Por qué la Orientación aObjetos?
Conceptos comunes de modelado durante elanálisis, diseño e implementación
Facilita la transición entre distintas fases
Favorece el desarrollo iterativo del sistema
Disipa la barrera entre el “qué” y el “cómo”
Sin embargo, existen problemas ...
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 25/126
25 www.dsic.upv.es/~uml
“...Los conceptos básicos de la OO se conocen desde hace dos décadas, pero su aceptación todavía no está tan extendida como los beneficios que esta tecnología puede
sugerir”
“...La mayoría de los usuarios de la OO no utilizan los conceptos de la OO de forma purista, como inicialmente
se pretendía. Esta práctica ha sido promovida por muchas herramientas y lenguajes que intentan utilizar los conceptos en diversos grados”
--Wolfgang Strigel
Problemas en OO
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 26/126
26 www.dsic.upv.es/~uml
Objetos
Objeto = unidad atómica que integra estado ycomportamiento
La encapsulación en un objeto permite una altacohesión y un bajo acoplamiento
Un objeto puede caracterizar una entidad física
(coche) o concepto (ecuación matemática)
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 27/126
27 www.dsic.upv.es/~uml
… Objetos
El Modelado de Objetos permite representar elciclo de vida de los objetos a través de susinteracciones
En UML, un objeto se representa por unrectángulo con un nombre subrayado
OtroObjeto
Un Objeto
OtroObjeto
más
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 28/126
28 www.dsic.upv.es/~uml
… Objetos
Ejemplo de varios objetos relacionados:
Juan
Felipe
Libreta deahorro a
plazo
Dos clientes
del banco
Cuenta
corriente
Libreta deahorro
Cuenta
corriente
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 29/126
29 www.dsic.upv.es/~uml
… Objetos
Objeto = Identidad + Estado + Comportamiento
El estado está representado por los valores de losatributos
Un atributo toma un valor en un dominio concreto
Un coche
Azul979 Kg
70 CV
...
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 30/126
30 www.dsic.upv.es/~uml
Identidad
Oid (Object Identifier)
Cada objeto posee un oid. El oid establece laidentidad del objeto y tiene las siguientescaracterísticas:
Constituye un identificador único y global para cada objetodentro del sistema
Es determinado en el momento de la creación del objeto
Es independiente de la localización física del objeto, es decir,provee completa independencia de localización
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 31/126
31 www.dsic.upv.es/~uml
… Identidad
Es independiente de las propiedades del objeto, lo cual implicaindependencia de valor y de estructura
No cambia durante toda la vida del objeto. Además, un oid nose reutiliza aunque el objeto deje de existir
No se tiene ningún control sobre los oids y su manipulaciónresulta transparente
Sin embargo, es preciso contar con algún mediopara hacer referencia a un objeto utilizandoreferencias del dominio (valores de atributos)
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 32/126
32 www.dsic.upv.es/~uml
Estado
El estado evoluciona con el tiempo
Algunos atributos pueden ser constantes
El comportamiento agrupa las competencias de unobjeto y describe las acciones y reacciones de eseobjeto
Las operaciones de un objeto son consecuencia deun estímulo externo representado como mensajeenviado desde otro objeto
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 33/126
33 www.dsic.upv.es/~uml
Comportamiento
Ejemplo de interacción:
Otro objeto
Un objeto
Un mensaje
Operacion 1
Operacion 2
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 34/126
34 www.dsic.upv.es/~uml
… Comportamiento
Los mensajes navegan por los enlaces, apriori en ambas direcciones
Estado y comportamiento están relacionadosEjemplo: no es posible aterrizar un avión sino está volando. Está volando como
consecuencia de haber despegado del suelo
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 35/126
35 www.dsic.upv.es/~uml
Persistencia
La persistencia de los objetos designa la capacidadde un objeto trascender en el espacio/tiempo
Un objeto persistente conserva su estado en unsistema de almacenamiento permanente(usualmente memoria secundaria)
Podremos después reconstruirlo, es decir, cogerlo de
memoria secundaria para utilizarlo en la ejecución(materialización del objeto)
Los lenguajes OO no proponen soporte adecuado
para la persistencia, pues ésta debería sertransparente, un objeto existe desde su creación
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 36/126
36 www.dsic.upv.es/~uml
Comunicación
Un sistema informático puede verse como unconjunto de objetos autónomos y concurrentesque trabajan de manera coordinada en la
consecución de un fin específico
El comportamiento global se basa pues en lacomunicación entre los objetos que la
componen
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 37/126
37 www.dsic.upv.es/~uml
… Comunicación
Categorías de objetos: Activos – Pasivos
Clientes – Servidores
Objeto Activo: posee un hilo de ejecución (thread)propio y puede iniciar una actividad
Objeto Pasivo: no puede iniciar una actividad peropuede enviar estímulos una vez que se le solicita unservicio
Cliente es el objeto que solicita un servicio. Servidores el objeto que provee el servicio solicitado
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 38/126
38 www.dsic.upv.es/~uml
El Concepto de Mensaje
La unidad de comunicación entre objetos se llamamensaje.
El mensaje es el soporte de una comunicación quevincula dinámicamente los objetos que fueronseparados previamente en el proceso dedescomposición.
Una operación es la especificación y laimplementación de una función efectuada por unobjeto.
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 39/126
39 www.dsic.upv.es/~uml
El Concepto de Operación
Las operaciones menipulan los atributos delobjeto.
Pueden tener parámetros de entrada y/osalida.
Un mensaje de un objeto a otro involucra laejecución de una operación.
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 40/126
40 www.dsic.upv.es/~uml
El Concepto de Operación
El nombre del mensaje es el de la operación.
Los parámetros del mensaje son losparámetros de la operación.
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 41/126
41 www.dsic.upv.es/~uml
Casos de Uso
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 42/126
42 www.dsic.upv.es/~uml
Casos de Uso
Los Casos de Uso (Ivar Jacobson) describen bajo laforma de acciones y reacciones el comportamientode un sistema desde el p.d.v. del usuario
Permiten definir los límites del sistema y lasrelaciones entre el sistema y el entorno
Los Casos de Uso son descripciones de la
funcionalidad del sistema independientes de laimplementación
Comparación con respecto a los Diagramas de Flujode Datos del Enfoque Estructurado
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 43/126
43 www.dsic.upv.es/~uml
… Casos de Uso
Los Casos de Uso particionan el conjuntode necesidades atendiendo a la categoría
de usuarios que participan en el mismoEstán basado en el lenguaje natural, esdecir, es accesible por los usuarios
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 44/126
44 www.dsic.upv.es/~uml
Ejemplo de Casos de Uso
Caso de Uso: Comprar productos
Actores: Cliente, Cajero
Tipo: PrimarioDescripción: Un cliente llega a la cajaregistradora con los artículos quecomprará. El cajero registra los artículos y
cobra el importe. Al terminar la operaciónel cliente se marcha con los productos.
comprar productos
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 45/126
45 www.dsic.upv.es/~uml
… Casos de Uso
Ejemplo:
Sistema
Actor A
Caso de uso X
Actor B
Caso de uso Y
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 46/126
46 www.dsic.upv.es/~uml
… Casos de Uso
Actores:Principales: personas que usan el sistema
Secundarios: personas que mantienen o administran el sistema
Material externo: dispositivos materiales imprescindibles que
forman parte del ámbito de la aplicación y deben ser utilizadosOtros sistemas: sistemas con los que el sistema interactúa
La misma persona física puede interpretar variospapeles como actores distintos
El nombre del actor describe el papel desempeñado
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 47/126
47 www.dsic.upv.es/~uml
… Casos de Uso
Los Casos de Uso se determinan observando yprecisando, actor por actor, las secuencias deinteracción, los escenarios, desde el punto de vista delusuario
Un escenario es una instancia de un caso de uso
Los casos de uso intervienen durante todo el ciclo devida. El proceso de desarrollo estará dirigido por loscasos de uso
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 48/126
48 www.dsic.upv.es/~uml
Casos de Uso: Relaciones
UML define cuatro tipos de relación en losDiagramas de Casos de Uso:
Comunicación:
Caso de Uso
Actor
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 49/126
49 www.dsic.upv.es/~uml
… Casos de Uso: Relaciones
Inclusión : una instancia del Caso de Uso origenincluye también el comportamiento descrito por elCaso de Uso destino
En UML se estereotipa como <<include>>
Caso de uso origen
Caso de uso destino
<<include>>
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 50/126
50 www.dsic.upv.es/~uml
… Casos de Uso: Relaciones
Extensión : el Caso de Uso origen extiende elcomportamiento del Caso de Uso destino
Caso de uso origen
Caso de uso destino
<<extend>>
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 51/126
51 www.dsic.upv.es/~uml
… Casos de Uso: Relaciones
Herencia : el Caso de Uso origen hereda laespecificación del Caso de Uso destino yposiblemente la modifica y/o amplía
Caso de uso origen
Caso de uso destino
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 52/126
52 www.dsic.upv.es/~uml
… Casos de Uso: Relaciones
Ejemplo:
Identificación
Giro por Internet
Cliente
Giro
<<extends>>
<<includes>>
<<extend>>
<<include>>
Transferencia por Internet
Transferencia
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 53/126
53 www.dsic.upv.es/~uml
Casos de Uso: Construcción
Un caso de uso debe ser simple, inteligible,claro y conciso
Generalmente hay pocos actores asociados a
cada Caso de UsoPreguntas clave:
¿cuáles son las tareas del actor?
¿qué información crea, guarda, modifica, destruye o lee elactor?
¿debe el actor notificar al sistema los cambios externos?¿debe el sistema informar al actor de los cambiosinternos?
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 54/126
54 www.dsic.upv.es/~uml
… Casos de Uso: Construcción
La descripción del Caso de Uso comprende:el inicio: cuándo y qué actor lo produce?
el fin: cuándo se produce y qué valor devuelve?
la interacción actor-caso de uso: qué mensajesintercambian ambos?
objetivo del caso de uso: ¿qué lleva a cabo o intenta?
cronología y origen de las interacciones
repeticiones de comportamiento: ¿qué operaciones son
iteradas?situaciones opcionales: ¿qué ejecuciones alternativas sepresentan en el caso de uso?
RF- <id del requisito> <nombre del requisito funcional>V ió d ió f h
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 55/126
55 www.dsic.upv.es/~uml
Versión <numero de versión y fecha>Autores <autor>Fuentes <fuente de la versión actual>Objetivos asociados <nombre del objetivo>Descripción El sistema deberá comportarse tal como se describe en
el siguiente caso de uso { concreto cuando <evento deactivación> , abstracto durante la realización de los
casos de uso <lista de casos de uso>}Precondición <precondición del caso de uso>
Paso Acción1 {El <actor> , El sistema} <acción realizada por el
actor o sistema>, se realiza el caso de uso< caso de uso RF-x>
2 Si <condición>, {el <actor> , el sistema} <acciónrealizada por el actor o sistema>>, se realiza elcaso de uso < caso de uso RF-x>
3456
SecuenciaNormal
nPostcondición <postcondición del caso de uso>
Paso Acción1 Si <condición de excepción>,{el <actor> , el
sistema} }<acción realizada por el actor osistema>>, se realiza el caso de uso
< caso de uso RF-x>, a continuación este casode uso {continua, aborta}
2
Excepciones
3Rendimiento Paso Cota de tiempo
1 n segundos2 n segundos
Frecuencia esperada <nº de veces> veces / <unidad de tiempo>Importancia {sin importancia, importante, vital}Urgencia {puede esperar, hay presión, inmediatamente}Comentarios <comentarios adicionales>
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 56/126
56 www.dsic.upv.es/~uml
Modelado de Interacciones
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 57/126
57 www.dsic.upv.es/~uml
Interacción
Los objetos interactúan para realizarcolectivamente los servicios ofrecidos por lasaplicaciones. Los diagramas de interacción
muestran cómo se comunican los objetos enuna interacción
Existen dos tipos de diagramas de
interacción: los Diagramas de Colaboración ylos Diagramas de Secuencia.
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 58/126
58 www.dsic.upv.es/~uml
Diagramas de interacción
Los Diagramas de Secuencia son más adecuadosestán para observar la perspectiva cronológica delas interacciones
Los Diagramas de Colaboración ofrecen una mejorvisión espacial mostrando los enlaces decomunicación entre objetos
Normalmente el D. de Colaboración se obtiene apartir del correspondiente D. de Secuencia
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 59/126
59 www.dsic.upv.es/~uml
Diagramas de Secuencia
Muestra la secuencia de mensajes entreobjetos durante un escenario concreto.
Cada objeto viene dado por una barra
vertical.
El tiempo transcurre de arriba abajo.
Cuando existe demora entre el envío y laatención se puede indicar usando una líneaoblicua.
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 60/126
60 www.dsic.upv.es/~uml
… Diagramas de Secuencia
Un ejemplo:
CBA
m1
m2
m3
m4
m5
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 61/126
61 www.dsic.upv.es/~uml
… Diagramas de Secuencia
Ejemplo Quien llama Línea telefónica Llamado
descuelga
tono
marcar
indicación de llamada timbre
descuelga
diga?
Las bandasrectangularesrepresentan los
periodos deactividad de losobjetos
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 62/126
62 www.dsic.upv.es/~uml
… Estructuras de control
Podemos representar iteraciones en el envío demensajes, p.e., mientras se cumpla unacondición:
While X
Loop
end Loop
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 63/126
63 www.dsic.upv.es/~uml
… Estructuras de control
La iteración puede expresarse también comoparte del mensaje:
*[condición] Mensaje
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 64/126
64 www.dsic.upv.es/~uml
… Estructuras de control
Las bifurcaciones condicionales puedenrepresentarse de esta forma:
If condición
else
end if
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 65/126
65 www.dsic.upv.es/~uml
Diagramas de Colaboración
Son útiles en la fase exploratoria para identificarobjetos
La distribución de los objetos en el diagramapermite observar adecuadamente la interacción deun objeto con respecto de los demás
La estructura estática viene dada por los enlaces; ladinámica por el envío de mensajes por los enlaces
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 66/126
66 www.dsic.upv.es/~uml
Mensajes
Un mensaje desencadena una acción en elobjeto destinatario
Un mensaje se envía si han sido enviados losmensajes de una lista (sincronización):
A
B A.1, B.3 / 1:Mensaje
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 67/126
67 www.dsic.upv.es/~uml
… Mensajes
Un mensaje se envía iterada y secuencialmentea un conjunto de instancias:
A
B
1 *[i:=1..n] : Mensaje
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 68/126
68 www.dsic.upv.es/~uml
… Mensajes
Un mensaje se envía iterada yconcurrentemente a un conjunto de instancias:
A
B
1 *| | [i:=1..n] : Mensaje
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 69/126
69 www.dsic.upv.es/~uml
… Mensajes
Un mensaje se envía de manera condicionada:
A
B [x>y] 1: Mensaje
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 70/126
70 www.dsic.upv.es/~uml
… Mensajes
Un mensaje que devuelve un resultado:
A
B 1: distancia:= mover(x,y)
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 71/126
71 www.dsic.upv.es/~uml
… Mensajes
Los argumentos de un mensaje pueden ser valoresobtenidos como consecuencia de las llamadasanteriores
Los argumentos pueden ser también expresiones denavegación construidas a partir del objeto cliente
Los argumentos pueden omitirse en el diagrama
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 72/126
72 www.dsic.upv.es/~uml
Modelado Conceptual
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 73/126
73 www.dsic.upv.es/~uml
Clases
Modelado Conceptual:
Organización del conocimiento del dominio del problema
en un conjunto de abstracciones ordenadas de forma quese obtiene un conocimiento más profundo del problema
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 74/126
74 www.dsic.upv.es/~uml
Clases
La clase define el ámbito de definición de unconjunto de objetos
Cada objeto pertenece a una clase
Los objetos se crean por instanciación de lasclases
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 75/126
75 www.dsic.upv.es/~uml
Clases: Notación Gráfica
Cada clase se representa en un rectángulocon tres compartimientos:
nombre de la clase
atributos de la clase
operaciones de la clase
motocicleta
colorcilindradavelocidad maxima
arrancaracelerarfrenar
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 76/126
76 www.dsic.upv.es/~uml
Clases: Encapsulación
La encapsulación presenta dos ventajasbásicas:
Se protegen los datos de accesos indebidos
El acoplamiento entre las clases se disminuye
Favorece la modularidad y el mantenimiento
Los atributos de una clase no deberían ser
manipulables directamente por el resto deobjetos
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 77/126
77 www.dsic.upv.es/~uml
Relaciones entre Clases
Los enlaces entre de objetos pueden representarseentre las respectivas clases
Formas de relación entre clases:
Asociación y Agregación (vista como un caso particular deasociación)
Generalización/Especialización
Las relaciones de Agregación y Generalizaciónforman jerarquías de clases
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 78/126
78 www.dsic.upv.es/~uml
Asociación
La asociación expresa una conexión bidireccionalentre objetos
Una asociación es una abstracción de la relación
existente en los enlaces entre los objetos
Universidad Estudiante
Univ. de Murcia:Universidad Antonio:Estudiante
Una asociación
Un enlace
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 79/126
79 www.dsic.upv.es/~uml
Ejemplo:
… Asociación
Persona Compañíatrabaja-para
nombre
s. s.nombre
dirección jefe
Administra
empleado
* *emplea-a
0.. 10.. 1
0.. 1
*
marido
casado-con
mujer
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 80/126
80 www.dsic.upv.es/~uml
… Asociación
Especificación de multiplicidad (mínima...máxima)
1 Uno y sólo uno
0..1 Cero o uno
M..N Desde M hasta N (enteros naturales)* Cero o muchos
0..* Cero o muchos
1..* Uno o muchos (al menos uno)
La multiplicidad mínima >= 1 establece unarestricción de existencia
A i ió C lifi d
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 81/126
81 www.dsic.upv.es/~uml
Asociación Cualificada
Aerolínea Viajeronro_billete* 0..1
TableroAjedrez
filacolumna
1 1 Cuadro
Reduce la multiplicidad del rol opuesto al considerar el valordel cualificador
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 82/126
82 www.dsic.upv.es/~uml
Agregación
La agregación representa una relación parte_deentre objetos
En UML se proporciona una escasa caracterizaciónde la agregación
Puede ser caracterizada con precisión determinando
las relaciones de comportamiento y estructura queexisten entre el objeto agregado y cada uno de susobjetos componentes
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 83/126
83 www.dsic.upv.es/~uml
Ejemplos
motor
coche
1
1
1
1
Persona
0..2*
+Padre
0..2
+Hijos
*
Ej l
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 84/126
84 www.dsic.upv.es/~uml
… Ejemplos
Cuenta
Persona
1
*
or Asociación excluyente
Empresa
*
*
Usuario Estación
está-autorizado-en
prioridad
privilegios
camb_privil
Autorización
* *
Clase de asociación
Polígono Puntocontiene 3.. *1
{ordenado}
Agregación
Jerarquías de
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 85/126
85 www.dsic.upv.es/~uml
qGeneralización/Especialización
Permiten gestionar la complejidad mediante unordenamiento taxonómico
Se obtiene usando los mecanismos de
abstracción de Generalización y/o Especialización
La Generalización consiste en factorizar laspropiedades comunes de un conjunto de clases
en una clase más general
... Jerarquías de
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 86/126
86 www.dsic.upv.es/~uml
Nombres usados: clase padre - clase hija,superclase - subclase, clase base - clasederivada
Las subclases heredan características de sussuperclases, es decir, atributos y operaciones(y asociaciones) de la superclase están
disponibles en sus subclases
qGeneralización/Especialización
... Jerarquías de
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 87/126
87 www.dsic.upv.es/~uml
Abstracciones más generales.
vehiculo
vehiculo terrestre vehiculo aéreo
camion coche avion helicoptero
qGeneralización/Especialización
... Jerarquías de
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 88/126
88 www.dsic.upv.es/~uml
qGeneralización/Especialización
La especialización es una técnica muy eficaz para laextensión y reutilización
Caracterización de la generalización en UML:disjunta - no disjunta
total (completa) - parcial (incompleta)
coche
funcionando estropeado
... Jerarquías de
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 89/126
89 www.dsic.upv.es/~uml
Un ejemplo combinado:vehiculo
vehiculo terrestre
camion
coche
funcionando estropeado
vehiculo aéreo
avion helicoptero
comercial
militar
de menos de 1000kms
de más de 1000 kms
estática
estáticaestática
dinámica
dinámica
Generalización/Especialización
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 90/126
90 www.dsic.upv.es/~uml
Herencia Múltiple
Se presenta cuando una subclase tiene más deuna superclase
La herencia múltiple debe manejarse conprecaución. Algunos problemas son el conflictode nombre y el conflicto de precedencia
Se recomienda un uso restringido y disciplinadode la herencia. Java y Ada 95 simplemente noofrecen herencia múltiple
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 91/126
91 www.dsic.upv.es/~uml
Polimorfismo
El término polimorfismo se refiere a que unacaracterística de una clase puede tomar variasformas
El polimorfismo representa la posibilidad dedesencadenar operaciones distintas en respuesta aun mismo mensaje
Cada subclase hereda las operaciones pero tiene laposibilidad de modificar localmente elcomportamiento de estas operaciones
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 92/126
92 www.dsic.upv.es/~uml
Polimorfismo
Dormir() { en un árbol }
Dormir() { sobrela espalda
}
Dormir() { sobre el vientre
}
Zoo Animal
León Tigre Oso
1
*
Dormir() {
}
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 93/126
93 www.dsic.upv.es/~uml
… Polimorfismo
La búsqueda automática del código que encada momento se va a ejecutar es fruto delenlace dinámico
El cumplimiento del Principio de Sustituciónpermite obtener un comportamiento y diseñocoherente
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 94/126
94 www.dsic.upv.es/~uml
Diagramas de Estados
d d
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 95/126
95 www.dsic.upv.es/~uml
Diagramas de Estados
Los Diagramas de Estados representanautómatas de estados finitos, desde el p.d.v.de los estados y las transiciones
Son útiles sólo para los objetos con uncomportamiento significativo
El resto de objetos se puede considerar quetienen un único estado
El formalismo utilizado proviene de losStatecharts (Harel)
i d d
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 96/126
96 www.dsic.upv.es/~uml
… Diagramas de Estados
Cada objeto está en un estado en cierto instante
El estado está caracterizado parcialmente por losvalores de los atributos del objeto
El estado en el que se encuentra un objetodetermina su comportamiento
Cada objeto sigue el comportamiento descrito en elD. de Estados asociado a su clase
Los D. De Estados y escenarios soncomplementarios
Di d E d
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 97/126
97 www.dsic.upv.es/~uml
… Diagramas de Estados
Los D. de Estados son autómatas jerárquicos quepermiten expresar concurrencia, sincronización y jerarquías de objetos
Los Diagramas de Estados son grafos dirigidos
Los D. De Estados de UML son deterministas
Los estados inicial y final están diferenciados delresto
La transición entre estados es instantánea y se debea la ocurrencia de un evento
Di d E t d
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 98/126
98 www.dsic.upv.es/~uml
Ejemplo de un Diagrama de Estados para laclase persona:
en el paro en activo
jubilado
contratar
perder empleo
jubilarse
jubilarse
… Diagramas de Estados
Di d E t d
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 99/126
99 www.dsic.upv.es/~uml
Las guardas permiten condicionar latransición:
a bEvento[ condición ]
… Diagramas de Estados
A i
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 100/126
100 www.dsic.upv.es/~uml
Acciones
Podemos especificar la ejecución de unaacción como consecuencia de la transición:
a bEvento[ condición ] / acción
Dicha acción también seconsidera instantánea
A i
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 101/126
101 www.dsic.upv.es/~uml
Podemos especificar el envío de un evento aotro objeto como consecuencia de latransición:
a
b
Evento( arg1, arg2 )[ condición ] / ^otro_objeto.evento(arg2)
… Acciones
A i
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 102/126
102 www.dsic.upv.es/~uml
Se puede especificar el hacer una accióncomo consecuencia de entrar, salir o estaren un estado:
estado A
entry: acción por entrar
exit: acción por salir
do: acción mientras en estado
… Acciones
A i
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 103/126
103 www.dsic.upv.es/~uml
Se puede especificar el hacer una accióncuando ocurre en dicho estado un eventoque no conlleva salir del estado:
estado A
on evento_activador( arg1 )[ condición ]: acción por evento
.. Acciones
A ti id d
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 104/126
104 www.dsic.upv.es/~uml
Actividades
Las actividades son similares a las accionespero tienen duración y se ejecutan dentro deun estado del objeto
Las actividades pueden interrumpirse entodo momento, cuando se desencadena laoperación de salida del estado
A ti id d
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 105/126
105 www.dsic.upv.es/~uml
Cuando una actividad finaliza se produce unatransición automática de salida del estado
a
do: actividad
b [ not condición ]
b
[ condición ]
… Actividades
G li ió d E t d
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 106/126
106 www.dsic.upv.es/~uml
Generalización de Estados
Podemos reducir la complejidad de estosdiagramas usando la generalización deestados
Distinguimos así entre superestado ysubestados
Un estado puede contener varios subestadosdisjuntos
Los subestados heredan las variables deestado y las transiciones externas
Gene li ión de E t do
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 107/126
107 www.dsic.upv.es/~uml
Generalización de Estados
Ejemplo:
a b
c
e1
e2
e2
Generalización de Estados
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 108/126
108 www.dsic.upv.es/~uml
Quedaría como:
c
a ba be1
e2
Generalización de Estados
Generalización de Estados
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 109/126
109 www.dsic.upv.es/~uml
Es preferible tener estados iniciales deentrada a un nivel de manera que desde losniveles superiores no se sepa a qué
subestado se entra:
c
a ba b
e1
e2
e1
e0
… Generalización de Estados
Generalización de Estados
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 110/126
110 www.dsic.upv.es/~uml
La agregación de estados es la composiciónde un estado a partir de varios estadosindependientes
La composición es concurrente por lo que elobjeto estará en alguno de los estados decada uno de los subestados concurrentes
… Generalización de Estados
Generalización de Estados
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 111/126
111 www.dsic.upv.es/~uml
Ejemplo:
e1e1
… Generalización de Estados
Destrucción del Objeto
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 112/126
112 www.dsic.upv.es/~uml
Destrucción del Objeto
La destrucción de un objeto es efectivacuando el flujo de control del autómataalcanza un estado final no anidado
La llegada a un estado final anidado implicala “subida” al superestado asociado, no el findel objeto
Destrucción de Objeto
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 113/126
113 www.dsic.upv.es/~uml
… Destrucción de Objeto
Ejemplo:
En tierraCrear(matricula)
En vuelo
aterrizardespegar
crash
Transiciones temporizadas
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 114/126
114 www.dsic.upv.es/~uml
Transiciones temporizadas
Las esperas son actividades que tienenasociada cierta duración
La actividad de espera se interrumpe cuandoel evento esperado tiene lugar
Este evento desencadena una transición quepermite salir del estado que alberga la
actividad de espera. El flujo de control setransmite entonces a otro estado
Transiciones temporizadas
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 115/126
115 www.dsic.upv.es/~uml
Ejemplo:a
esperar dinero
entry: Mostrar mensaje
do: Esperar 30 segundos
exit: cerrar ranura
b
anular transacción
/ Abrir ranura
Depósito efectuado
Si en 30 segundos no se
introduce el dinero setermina la actividadpasando a anular latransacción. Encualquier caso se cierra
la ranura.
… Transiciones temporizadas
Transiciones temporizadas
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 116/126
116 www.dsic.upv.es/~uml
Ejemplo v.2:
… Transiciones temporizadas
a
esperar dinero
entry: Mostrar mensaje
exit: cerrar ranura
b
anular transacción
/ Abrir ranura
Depósito efectuado
Temporizador(30 segundos)
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 117/126
117 www.dsic.upv.es/~uml
Modelado de Componentes
Diagrama de Componentes
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 118/126
118 www.dsic.upv.es/~uml
Diagrama de Componentes
Los diagramas de componentes describen loselementos físicos del sistema y sus relaciones
Muestran las opciones de realización
incluyendo código fuente, binario y ejecutable
Diagramas de Componentes
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 119/126
119 www.dsic.upv.es/~uml
...Diagramas de Componentes
Los componentes representan todos los tiposde elementos software que entran en lafabricación de aplicaciones informáticas.
Pueden ser simples archivos, paquetes de Ada, bibliotecas cargadas dinámicamente,etc.
Cada clase del modelo lógico se realiza en
dos componentes: la especificación y elcuerpo
Diagramas de Componentes
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 120/126
120 www.dsic.upv.es/~uml
La representación gráfica es la siguiente:
Genérico Cuerpo Especificación
Package
specification
Package
body
Generic
package
… Diagramas de Componentes
Dependencias entre Componentes
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 121/126
121 www.dsic.upv.es/~uml
Dependencias entre Componentes
Las relaciones de dependencia se utilizan enlos diagramas de componentes para indicarque un componente utiliza los servicios
ofrecidos por otro componente
Subsistemas
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 122/126
122 www.dsic.upv.es/~uml
Subsistemas
Los distintos componentes pueden agruparse enpaquetes según un criterio lógico y con vistas asimplificar la implementación
Son paquetes estereotipados en <<subsistemas>>
NewPackage4
<<subsistema>>
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 123/126
123 www.dsic.upv.es/~uml
Modelado de Distribución
Diagramas de Distribución
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 124/126
124 www.dsic.upv.es/~uml
Diagramas de Distribución
Los Diagramas de Distribución muestran ladisposición física de los distintos nodos quecomponen un sistema y el reparto de los
componentes sobre dichos nodos
Nodo
Diagramas de Distribución
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 125/126
125 www.dsic.upv.es/~uml
Los estereotipos permiten precisar lanaturaleza del equipo:
Dispositivos
ProcesadoresMemoria
Los nodos se interconectan mediante
soportes bidireccionales (en principio) quepueden a su vez estereotiparse
… Diagramas de Distribución
Diagramas de Distribución
5/17/2018 Curso UML Reducido - slidepdf.com
http://slidepdf.com/reader/full/curso-uml-reducido 126/126
Ejemplo de conexión entre nodos:
Nodo
<<Procesador>nodo2
<<dispositivo>>
dispositivo
conexión7
conexión1
<<<<TCP/IP>>>>
<<RDSI>>
En Rational Rose podemosdistinguir entre el dispositivo porestereotipado y el dispositivo con
… Diagramas de Distribución
Recommended