Title: Introduccin al UML
1SISTEMA DE INFORMACION ORIENTADA A OBJETOS
Profesor Ing. Juan Manuel Márquez Vite
Marzo, 2003
2Contenido
- Por qué modelamos
- La importancia
- Cuatro principios del modelado
- Los planos básicos de un sistema software
- Modelado orientado a objetos
- Qué es UML?.
- Presentación del UML
- Diagramas Utilizados en UML (ejemplos)
3Por qué Modelamos
4Importancia de Modelar
- Objetivos del Modelar
- Visualizar, especificar la estructura,
proporcionan plantillas, documentan decisiones
5Principios 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.
6Modelado orientado a objetos
- UML es un Lenguaje de Modelado Unificado basado
en una notación gráfica la cual permite - Especificar
- Construir
- Visualizar
- Documentar
- los objetos de un sistema
7U M L
- Qué es 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.
8Qué es UML
- Este lenguaje es el resultado de la unificación
de los métodos de modelado orientados a objetos
de - Booch,
- Rumbaugh (OMTObject Modeling Technique)
- Jacobson (OOSEObject-Oriented Sotfware
Engineering) .
9Dó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
10Bloques de Construcción UML
Elementos
Relaciones
Bloques
Diagramas
11Bloques de Construcción UML
Elementos
Relaciones
Diagramas
Clase
Casos de uso
Ventana
O
rigen
Estructurales
T
amaño
A
brir(
)
Cerrar()
M
over(
)
D
ibujar(
)
Cadena de responsabilidad
Interacción
Estados
Comportamiento
Dibujar
Esperando
Mensajes
Agrupación
Reglas del negocio
Anotación
12Elementos Estructurales
- Elementos estructurales, son la parte estática de
un modelo - Clase representa un conjunto de objetos que
comparten los mismos atributos, operaciones,
relaciones y semántica.
13Elementos 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
14Elementos 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
15Elementos 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
16Elementos Estructurales
- Clase Activa Son similares a las clases excepto
que sus objetos representan elementos cuyo
comportamiento es concurrente con otros elementos
17Elementos 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
18Elementos Estructurales
- Interfaz define un conjunto de especificaciones
de operaciones
- Colaboracón define una iteración y es una
sociedad de roles y otros elementos que colaboran
cooperativamente
Cadena de Responsabilidad
19Elementos 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
20Elementos Estructurales
- Clase Activa Son similares a las clases excepto
que sus objetos representan elementos cuyo
comportamiento es concurrente con otros elementos
21Elementos Estructurales
- Componentes Es empaquetamiento físico de
diferentes elementos lógicos como clases,
interfaces, y colaboraciones.
22Elementos Estructurales
- Nodo Es elemento físico es decir un recurso
computacional
23Elementos Comportamiento
- Son la parte dinámica, y representan
comportamiento en el tiempo y el espacio.
Interacción Conjunto de mensajes intercambiados
entre objetos.
24Elementos Comportamiento
- 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
25Elementos Agrupación
- Elementos Agrupación son las partes organizativas
Un paquete Mecanismo de propósito general para
organizar elementos.
26Elementos 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
27Bloques de Construcción UML
Elementos
Relaciones
Diagramas
- Dependencia
- Relación entre dos elementos uno independiente a
otro dependiente y puede afectar la semántica - Asociación
- 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
28Bloques de Construcción UML
Elementos
Relaciones
Diagramas
State Diagrams
Diagramas Clase
Use Case Diagrams
Diagramas Caso de Uso
State Diagrams
Diagramas Objecto
Use Case Diagrams
Diagramas Secuencia
Scenario Diagrams
State Diagrams
Diagramas Colaboración
Diagramas Componentes
Modelos
Component Diagrams
Scenario Diagrams
Diagramas Despliegue
Diagramas Estado
Diagramas Actividades
29Diagramas de clases
- Un Diagrama de Clases muestra un conjunto de
clases, interfaces, colaboraciones y relaciones. - Cubren la vista de diseño estático de un sistema
- Cuando incluyen clases activas cubren la vista de
procesos estáticos
30Diagramas de clases
Relación de Asociación (Rol y Multiplicidad)
- Rol Se identifica con un nombre al final de la
línea y describe la semántica de la relación en
el sentido indicado. - Cada asociación tiene dos roles cada rol es una
dirección y puede estar representado en el nombre
de la clase.
31Diagramas de clases
Relación de Asociación (Rol y Multiplicidad)
- Multiplicidad
- Describe la cardinalidad de la relación, es
decir, cuantos objetos de esa clase pueden
participar en la relación dada.
32Diagramas de clases
33Diagramas de objetos
- Diagrama de objetos muestra un conjunto de
objetos y sus relaciones representan instantáneas
de instancias de los elementos encontrados en los
diagramas de clase. - Cubren la vista de diseño y proceso estático de
un sistema
34Diagramas de objetos
35Diagramas de casos de uso
- Diagrama de casos de uso muestra un conjunto de
casos de uso y actores y sus relaciones cubren la
vista de casos de uso estática de un sistema. -
Estos diagramas son
especialmente importantes en el modelado y
organización del comportamiento de un sistema.
36Diagramas de Casos de Uso
- Cada caso de uso es una operación completa
desarrollada por los actores y por el sistema en
un diálogo. -
- El conjunto de casos de uso representa la
totalidad de operaciones desarrolladas por el
sistema.
37Diagramas de Casos de Uso
- Actor Es un usuario del sistema, que necesita o
usa alguno o algunos de los casos de uso. - Un usuario puede jugar más de un rol.
- Un caso de uso puede tener varios actores. Los
actores no necesitan ser humanos pueden ser
sistemas externos que necesitan alguna
información del sistema actual.
38Diagramas de Casos de Uso
- Tienen tres tipos de relaciones
- Comunica (comunicates) entre un actor y un caso
de uso, denota la participación del actor en el
caso de uso determinado. - Usa (uses) Relación entre dos casos de uso,
denota la inclusión del comportamiento de un
escenario en otro. - Extiende (extends) Relación entre dos casos,
denota cuando un caso de uso es una
especialización de otro. Se usa cuando se
describe una variación sobre el normal
comportamiento.
39Diagramas de Casos de Uso
- Un diagrama de Casos de Uso muestra la distintas
operaciones que se esperan de una aplicación o
sistema y cómo se relaciona con su entorno
(usuario u otras aplicaciones). - Es una herramienta esencial para la captura de
requerimientos y para la planificación y control
de un proyecto interactivo.
40Diagramas Casos de Usos
41Diagramas de secuencia
- Diagrama de secuencia Es un diagrama de
interacciones que resalta la ordenación temporal
de los mensajes. - Es importante mencionar que los diagramas de
interacción es un conjunto de objetos y sus
relaciones, incluyendo los mensajes que pueden
ser enviados entre ellos.
42Diagrama de secuencia
43Diagramas de colaboración
- Diagrama de colaboración es un diagrama de
interacción que resalta la organización
estructural de los objetos, que envían y reciben
mensajes de las iteraciones que están indicadas
por un número - A diferencia de los diagramas de secuencia,
pueden mostrar el contexto de la operación
(cuáles objetos son atributos, cuáles temporales)
y ciclos en la ejecución.
44Diagramas de colaboración
Ejemplo
Registra Retiro 1 Arranca Aplicación 2 Teclea
Tipo mov 3 Teclea num Cuenta 4 Teclea Tipo
Docto 5 Teclea Num Cheque
Cajero
Aplicación
ltltCajerogtgt
Cuenta cheques
Interfaz Registra Retiro InfoCuentaFormateada
NumCliente, Nombre, SaldoCuenta
3.1.1 ObtenerNombreCliente (NumCliente)
NomreCliente
ChequeOk
5.1 ValidaCheque(numCheque)
Cheque
Cliente
5.1.1 Valida Cheque No Robado (NumCheque) 5.1.2
Valida Cheque No Canceladop (NumCheque)
45Diagramas de Estado
- Diagrama de estados (statechart) muestra una
máquina de estados, que consta de estados
transiciones, eventos y actividades. - Cubren la vista dinámica de un sistema y el
comportamiento de una interfaz, clase,
colaboración y resaltan el comportamiento
dirigido por eventos de un objeto.
46Diagramas de Estados
- Muestra el conjunto de estado por los cuales pasa
un objeto durante su vida en una aplicación junto
con los cambios que permiten pasar de un estado a
otro - Esta representado principalmente por los
siguientes elementos - estado, elemento y transición.
47Diagramas de Estados
- Eventos Es una ocurrencia que puede causar la
transición de un estado a otro de un objeto. - -Condición que toma el de verdadero o falso.
- -Recepción de una señal o mensaje de otro objeto
en el modelo. - -Paso de cierto período de tiempo, después de
entrar al estado o de cierta hora y fecha
particular.
48Diagramas de Estados
- Transición Es una relación de tres o más estados
en una transición de múltiples fuentes o
múltiples destinos.
49Diagramas de Estados
Ejemplo
Inicio
Todos los artículos comprobados todos los
artículos disponibles
No se revisan todos los artículos / obtiene
siguiente artículo
Comprobación
Despachando
Hace /inicia entrega
Hace / revisa artículo
Artículo recibido Todos los artículos disponibles
Todos los artículos comprobados algunos
artículos no en inventario
Artículo recibido Algunos artículos no en
existencia
Transición
Espera
Entregado
Autotransición
Estado
50Diagramas de Actividades
- Diagrama de actividades muestra el flujo de
actividades dentro de un sistema. - Cubren la vista dinámica, son importantes al
modelar el funcionamiento del un sistema y
resaltan el flujo de control de objetos.
51Diagrama de Actividades
- Un diagrama de actividades es un diagrama de
estados, casi todos los estados son estados de
acción, y casi todas las transiciones son
enviadas al terminar la acción ejecutada en el
estado anterior. - Generalmente modelan los pasos de un algoritmo y
puede dar detalle a un caso de uso, un objeto o
un mensaje en un objeto.
52Diagrama de Actividades
- Sirven para representar transiciones internas,
sin hacer mucho énfasis en transiciones o eventos
externos - Los elementos que conforman el diagrama son
acción y transición.
53Diagrama de Actividades
- Transición Es la relación entre dos estados y se
encuentran unidos por flechas - Indican que un objeto que está en el primer
estado, realizará una acción especificada y
entrará en el segundo estado cuando un evento
implícito ocurra y unas condiciones especificas
sean satisfechas
54Diagrama de Actividades
55Diagramas de Componentes
- Diagrama de componentes muestra la organización
y las dependencias entre un conjunto de
componentes, cubren la vista de implementación
estática. - Se relacionan con diagramas de clase en que un
componente se corresponde con una o más clases,
interfaces o colaboraciones.
56Diagramas de Componentes
- Representa las componentes físicas de la
aplicación.
57Diagramas de Despliegue
- Diagrama de despliegue muestra la configuración
de nodos de procesamiento en tiempo de ejecución
y los componentes que residen en ellos. - Su relación con los diagramas de componentes en
que un nodo incluye, uno o mas componentes.
58Diagrama de despliegue
- Representa la visualización de los componentes
sobre los dispositivos físicos. -
59Conclusiones
- En este trabajo se ha aprendido los conceptos de
UML (El Lenguaje Unificado de Modelado), como es
el vocabulario, reglas de construcción de
modelos. - Se vio, los elementos sus relaciones y los 9
Diagramas que utiliza UML para su modelado de
Sistemas
60Bibliografía
- El lenguaje unificado de modelado
- Grady Booch
- James Rumbaugh
- Ivar Jacobson
- El libro introductorio a UML
-
- Addison Wesley