2. Contenido
¿Por qué modelamos?
La importancia de modelar
Principios del modelado
¿Qué es UML?.
Presentación del UML
Bloques de construcción de UML
Diagramas Utilizados en UML (ejemplos)
2
3. ¿Por qué Modelamos?
El modelado es una técnica de hacer
modelos, que ofrece
Una visión global del sistema.
3
4. Importancia de Modelar
Objetivos del Modelar:
Visualizar, especificar la
estructura, proporcionan
plantillas, documentan
decisiones
4
5. Principios del Modelado
La elección de qué modelos crear, y dar forma a una
solución.
Todo modelo puede ser expresado a diferentes
niveles de precisión.
Los mejores modelos están ligados a la Realidad
Un único modelo no es suficiente.
5
6. ¿Qué es el UML?
UML es un Lenguaje de Modelado Unificado
basado en una notación gráfica la cual
permite:
Especificar
Construir
Visualizar
Documentar
los artefactos de un sistema software
orientado a objetos
6
7. ¿Qué es el UML?
UML puede ser utilizado por cualquier metodología
de análisis y diseño orientada a objetos para
expresar los modelos de diseño.
Este lenguaje es el resultado de la unificación de los
métodos de modelado orientados a objetos de:
Booch,
Rumbaugh (OMT:Object Modeling Technique)
Jacobson (OOSE:Object-Oriented Sotfware
Engineering) .
7
8. ¿Qué es UML?
Un lenguaje de modelado permite expresar los
distintos modelos que se producen en el proceso de
desarrollo de software.
Artefacto es información que es utilizada o
producida durante un proceso de desarrollo de
software.
8
9. ¿Qué es UML?
Un modelo es una abstracción que se elabora para
comprender algo antes de construirlo. Un modelo es
una representación abstracta de una especificación,
un diseño o un sistema desde un punto de vista
particular.
Un diagrama es una representación gráfica de una
colección de elementos del modelo (grafo). Un
diagrama es una representación de (parte de) un
modelo de diseño.
Un modelo se representa por uno o más diagramas
9
10. ¿Qué es UML?
¿Dónde puede utilizarse UML?
Sistema de Información Institucionales
Bancos y Servicios Financieros
Telecomunicaciones
Transporte
Comercio
Electrónica médica
Ámbito científico
Servicios distribuidos basados en la Web
10
13. Bloques de Construcción
UML
Elementos Relaciones Diagramas
Clase
interfaz nodo Casos de uso
Clase activa
Ventana
O rigen
T amaño
Estructurales
GestorEventos
A brir( ) Realizar Pedido
servidor
Cerrar()
M over( ) S uspender ()
D ibujar( )
VaciarCola()
componente
Cadena de
responsabilidad
Interacción Estados
Dibujar
Comportamiento Mensajes Esperando
Agrupación
Reglas del negocio
Anotación
13
15. Elementos Estructurales
Clase: representa un conjunto de objetos que
comparten los mismos atributos, operaciones,
relaciones y semántica.
Publicación Nombre de la clase
Código P Cadena(2)
Copias Entero Atributos
Importe Decimal(10,2)
Agregar() Operaciones
Consultar()
Listar()
15
16. Elementos Estructurales
Atributo: Representa una propiedad de una entidad.
Cada atributo de un objeto tiene un valor que
pertenece a un dominio de valores determinado.
Objeto: Se caracteriza por tener una identidad única,
un estado definido por un conjunto de valores de
atributos y un comportamiento representado por sus
operaciones y métodos
16
17. Elementos Estructurales
Interfaz: define un conjunto de especificaciones de
operaciones
Colaboración: define una iteración y es una
sociedad de roles y otros elementos que
colaboran cooperativamente
Cadena de
Responsabilidad
17
18. Elementos Estructurales
Caso de Uso: Conjunto de secuencia de
acciones que se ejecutan y el resultado es de
interés para un actor en particular.
Realizar pedido
18
19. Elementos Estructurales
Clase Activa: Son similares a las clases excepto
que sus objetos representan elementos cuyo
comportamiento es concurrente con otros
elementos
Gestor Ventas Nombre
Suspender() Operaciones
VaciarCola()
19
20. Elementos Estructurales
Componentes: Es empaquetamiento físico de
diferentes elementos lógicos como clases,
interfaces, y colaboraciones.
Orderform.java
20
23. Elementos
Comportamiento
Interacción: Conjunto de mensajes intercambiados
entre objetos.
Estado: Identifica un período de tiempo del objeto
(no instantáneo) en el cual el objeto esta esperando
alguna operación, recibe cierto tipo de estímulos y
especifica la secuencia de estado por las que pasa
un objeto
Esperado
23
25. Elementos de Anotación
Elementos de Anotación son las partes
explicativas, son comentarios, para describir,
clasificar, y hacer observaciones
Nota: Sirve para hacer comentarios a un conjunto
de elementos
Devuelve una
Copia del objeto
receptor
25
26. Bloques de Construcción
UML
Elementos Relaciones Diagramas
Dependencia
Relación entre dos elementos uno independiente a otro
dependiente y puede afectar la semántica
0...1
Asociación *
Patrón empleado
Son conexiones entre objetos (rol, multiplicidad, calificador)
Generalización
Especificación en donde el hijo comparte la estructura y el
comportamiento del padre
Realización
Es una relación semántica entre clasificadores
26
27. RELACIONES
Dependencia
Es una relación semántica entre dos elementos, tal
que un cambio en una de ellos (el independiente)
Puede afectar al otro (el dependiente).
A B
“B depende de A”
27
28. RELACIONES
Asociación
Es una relación estructural que describe un
conjunto de links, siendo un link una conexión
entre objetos
0..1 *
empleador empleado
28
29. RELACIONES
Generalización
Una relación de generalización/especialización en la
que el elemento especializado (descendiente) se
construye sobre la especificación del elemento
generalizado (ancestro)
29
30. RELACIONES
Realización
Es una relación semántica en la que un clasificador, tal
como una interfaz o un caso de uso, especifica un
“contrato” que otro clasificador, tal como una clase o
una colaboración, garantiza llevar a cabo.
30
31. Bloques de Construcción
UML
Elementos Relaciones Diagramas
State
Diagramas
Diagrams
Use Case Clase
Diagramas State
Use Case Diagrams Diagramas
Diagramas Caso de Uso Diagrams
Diagrams Objecto
Secuencia
Scenario State
Diagramas Diagramas
Diagrams Modelos Diagrams
Colaboración Componentes
Scenario Component
Diagramas
Diagramas Diagrams
Diagrams Despliegue
Estado Diagramas
Actividades
31
32. DIAGRAMAS UML
Diagramas estáticos
Diagrama de clases
Diagrama de objetos
Diagrama de componentes
Diagrama de estructura compuesta
Diagrama de paquetes
Diagrama de despliegue
32
35. Diagrama de componentes
Muestra la organización y
dependencias entre
un conjunto de componentes
conocida como vista de
implementación de
unsistema.
Están relacionados a
Diagramas de clases en
donde un componente se
Corresponde con una o más
clases interfaces o
colaboraciones.
35
36. Diagrama de estructura compuesta
(Composite Structural Diagram)
Muestra la estructura
interna (incluyendo
partes y conectores) de
un clasificador o una
colaboración
estructurada.
36
38. Diagrama de despliegue
Muestra los enlaces de
comunicación física
entre elementos de
hardware y las relaciones
entre máquinas físicas y
procesos: qué se ejecuta
y dónde
38
39. Diagramas UML
Diagramas de comportamiento
Diagramas de casos de uso
Diagrama de secuencia
Diagrama de colaboración
Diagrama de estados
Diagrama de actividades
Diagrama cronológico
Diagrama general de interacciones
39
40. Diagrama de casos de uso
Muestra un conjunto de casos de uso y actores y sus
relaciones
40
41. Diagrama de secuencia
Es un diagrama de
interacción que muestra
los objetos y actores
Que participan en una
colaboración poniendo
El énfasis en el
Ordenamiento en el
tiempo de los mensajes
41
42. Diagrama de colaboración
Un diagrama de
Interacción que pone el
énfasis en la
organización
estructural de los objetos
o roles que envían y
reciben mensajes.
42
44. Diagrama de actividades
Muestra la estructura de
un proceso u otro cálculo
como el flujo de control
y datos paso a paso en el
cálculo.
44
45. Diagrama cronológico
(Timing Diagram)
Es un diagrama de
interacción que muestra
tiempos a lo largo de
diferentes objetos o
roles, y no secuencias
relativas de mensajes
45
46. Diagrama de interacciones general
(Interaction Overview Diagram)
Es un híbrido de
diagramas de actividad
y de secuencia.
46
47. Bibliografía
El lenguaje unificado de modelado
Grady Booch
James Rumbaugh
Ivar Jacobson
El libro introductorio a UML
Addison Wesley
47