Professional Documents
Culture Documents
INTRODUCCION AL UML
AGENDA:
I. CONTEXTO
II. ESTRUCTURA CONCEPTUAL DEL UML
• MECANISMOS COMUNES
III. ARQUITECTURA
IV. PROCESO UNIFICADO
UML – I. CONTEXTO
Es un vocabulario y las
reglas para combinasr palabras
de ese vocabulario que facilitaen
la comunicación.
Un lenguaje de modelado se
centra en la representación
conceptual y física
UML es un lenguaje para:
Visualizar: * El modelo del sistema
* Comunicación entre modelos
* Semántica bien definida (sin LENGUAJE
ambigüedad entre modelos)
ARTEFACTOS DE OTROS
REQUISITOS UN SISTEMA
Los artefactos
Son elementos
PLANIFICACION Entregables
DEL PROYECTO PRUEBAS o
Elementos críticos en:
• Control,
• Medición y
CODIGO
ARQUITECTURA • Comunicación
DISEÑO PROTOTIPOS
UML – II - “ESTRUCTURA CONCEPTUAL DE UML”
Tiene 3 elementos
fundamentales
1. BLOQUES Un Modelo conceptual de UML
BASICOS DE
CONSTRUCCION.
1.1 ELEMENTOS
3.MECANISMOS
• Estructurales 2. REGLAS
ACERCA DE COMBINAR COMUNES
• De Comportamiento LOS BLOQUES
• De Agrupación BASICOS
• De anotación
1.2 RELACIONES
•SON EL CONJUNTO DE • ESPECIFICACIONES
BÁSICOS DE
CONSTRUCCIÓN.
1. BLOQUES BÁSICOS DE
CONSTRUCCIÓN.
DOS
ENFOQUES
ESTRUCTURAL DE COMPORTAMIENTO
Hace referencia a las cosas que existen Hace referencia a los cambios y
en el dominio del problema, a sus Comportamientos de esas cosas
características y sus relaciones. durante la vida y actividad del
sistema.
ESTRUCTURA CONCEPTUAL UML - (1. BLOQUES B. DE CONSTRUCCIÓN)
ESTRUCTURA:
CUANDO SE ESTA MODELANDO, SE OBSERVAN LAS COSAS MAS IMPORTANTES DEL SISTEMA
COMPORTAMIENTO:
INTERFAZ
PAQUETE
COLABORACIÓN
ELEMENTOS DE ELEMENTOS
AGRUPACIÓN CASO DE USO
ESTRUCTURALES
CLASE ACTIVA
NODO
INTERACCIÓN
ELEMENTOS DE ELEMENTOS DE
ANOTACIÓN COMPORTAMIENTO
MÁQUINA
DE ESTADOS
NOTAS
ESTRUCTURA CONCEPTUAL UML - (1. BLOQUES B. DE CONSTRUCCIÓN)
Nodo: es una parte física que existe en Componente: es una parte física y
tiempo de ejecución y representa un reubicable dentro de un sistema que
servidor COM
DE DEPENDENCIA
Es una relación semántica entre dos elementos.
Un cambio en el elemento independiente puede
afectar la semántica del elemento dependiente. Es
una relación de uso.
0..1 *
DE ASOCIACIÓN
GENERALIZACIÓN
D. DE CLASES
DIAGRAMAS D. OBJETOS
ESTRUCTURALES
D. PAQUETES
DIAGRAMAS DE
CASOS DE USO
D. SECUENCIA
1.3 DIAGRAMAS
De UML D. COLOBORACIÓN
DIAGRAMAS DE
COMPORTAMIENTO D. ESTADO
D.ACTIVIDADES
D.COMPONENTES
DIAGRAMAS DE
IMPLEMENTACION D. DE DESPLIEGUE
ESTRUCTURA CONCEPTUAL UML- (1. BLOQUES B. DE CONSTRUCCIÓN)
1.3- DIAGRAMAS – ESTRUCTURALES “ CLASES ”
Departamento Oficina
nombre: Dirección:String
Obtener()
Persona Empresa
nombre: Nombre
Obtener()
ESTRUCTURA CONCEPTUAL UML- (1. BLOQUES B. DE CONSTRUCCIÓN)
1.3- DIAGRAMAS – ESTRUCTURALES “DIAGRAMAS DE CLASES”
multiplicidad
1..* 1..*
Departamento Oficina
Ubicación Dirección:String
nombre:
restricción * *
Obtener()
generalización
* *
{subconjunto}
rol
miembro 1..* 1 Director
OficinaPrincipal
Persona
nombre: Nombre
RegistroPersonal
Obtener() interfaz
historiaEmpleados
dependencia IinformaciónSegura
ESTRUCTURA CONCEPTUAL UML- ( 1. BLOQUES B. DE CONSTRUCCIÓN ) -
1.3. DIAGRAMAS – ESTRUCTURALES - “OBJETOS”
Objeto
• Es una unidad atómica identificable
• Formada por la Unión de un estado y un comportamiento.
B
C : Compañía A
d1:Departamento
d2:Departamento
C
Nombre=“Ventas” Nombre=“I+D”
enlace
Valor del atributo
P : Persona
nombre: “Francisco”
ID_empleado=3245 Objeto anónimo
Cargo=“vicepte deventas” : InformaciónDeContacto
Servicios de
Usuario
MODELADO DE VISTAS ARQUITECTONICAS
<<import>>
Vista de
Vista de Diseño
Implementación
Servicios de
Servicios de Negocios
Negocios
<<import>>
Vista de Vista de
Procesos Despliegue
Servicios de
Datos
Puede contener otros elementos, clases, interfaz, componentes,
nodos, colaboraciones, casos de uso, diagramas e incluso otros paquetes.
Cada elemento pertenece exclusivamente a un paquete. MODELADO DE GRUPOS
DE ELEMENTOS
ESTRUCTURA CONCEPTUAL UML- ( 1. BLOQUES B. DE CONSTRUCCIÓN )
1.3 DIAGRAMAS -
Caso de uso
“CASOS DE USO”
<<extend>>
Realizar llamada
Realizar llamada
de
telefónica
Conferencia frontera del
sistema
relación de extensión
Red telefónica
<<extend>>
Recibir llamada Recibir llamada
actor telefónica Adicional
Usar Agenda
Teléfono móvil
usuario
asociación
ESTRUCTURA CONCEPTUAL UML- ( 1. BLOQUES B. DE CONSTRUCCIÓN )
1.3 DIAGRAMAS - DE COMPORTAMIENTO
Contiene:
–“DIAGRAMAS DE INTERACCIÓN” • Objetos
• Enlaces
De De Secuencia • Mensajes.
Colaboración
Un Diagrama de interacción consta de un conjunto de objetos y sus
relaciones, incluyendo los mensajes que pueden enviarse netre ellos
c : Cliente
1 : <<create>>
enlace 2 : establecerAccionista(a,d,o)
3 : <<destroy>>
Estereotipo de Camino
<<local>>
mensaje
<<global>>
: Transaccion p: ProxyODBC
2.1 : establecerValores(d,3.4)
2.2 : establecerValores(a, “OC”)
objeto
ESTRUCTURA CONCEPTUAL UML- ( 1. BLOQUES B. DE CONSTRUCCIÓN )
1.3 DIAGRAMAS - DE COMPORTAMIENTO – “DIAGRAMAS DE SECUENCIA”
Objeto
c : Cliente
{transient} P : ProxyODBC
<<create>> : Transaccion
establecerAcciones establecerValores
(a,d,o) (d,3.4) Mensaje
T i e m p o
establecerValores
(a,”CO””)
exito
x
ESTRUCTURA CONCEPTUAL UML- ( 1. BLOQUES B. DE CONSTRUCCIÓN )
1.3 DIAGRAMAS – DE COMPORTAMIENTO
Evento es un estímulo.
Una máquina de estados es un comportamiento de las secuencias de estados por los que
pasa un objeto a lo largo de su vida en respuesta a eventos.
estado compuesto
estado inicial
sonando
Estado anidado
Inactivo
Conectado Procesando
Verificar ok
colgar
Transmisión Limpiando
estado Error
/imprimirError
evento acción
ESTRUCTURA CONCEPTUAL UML- ( 1. BLOQUES B. DE CONSTRUCCIÓN )
estado inicial
1.3. DIAGRAMAS – DE COMPORTAMIENTO
“DIAGRAMAS DE ACTIVIDADES” Elegir sitio
Estado de
Contratar arquitecto acción
Ofertar plano
C1 C2
Interfaz-1
ESTRUCTURA CONCEPTUAL UML- ( 1. BLOQUES B. DE CONSTRUCCIÓN )
Componentes y clases
Componentes e interfaz
Forma icónica
Agentefraudes.dll
Imagen.java Componente.java
ObservadorDeImagen
AgenteFraude PoliticaFraudes
dependencia interfaz realización
<<interfaz>>
Forma expandida ObservadorDeImagen
actualizarImagen() : Boolean
ESTRUCTURA CONCEPTUAL UML-
( 1. BLOQUES B. DE CONSTRUCCIÓN )
nodo
Módem
<<procesador>>
Servidor
<<procesador>> nodo
Servidor
de caché
de caché
conexión
<<procesador>>
<<procesador>> <<procesador>> Servidor <<procesador>>
Servidor Servidor Servidor
principal
ESTRUCTURA CONCEPTUAL UML -
2.
REGLAS
ESTRUCTURA CONCEPTUAL UML-
(2. LAS REGLAS)
* Semánticamente autoconsistentes y
• Visibilidad: Como puede ser visto y utilizado ese nombre por otros elementos.
stemas con gran cantidad de software tienden a evolucionar y pueden tener diferentes
de los usuarios, por eso se deben construir modelos, que además de bien formados,
MECANISMOS
COMUNES
ESTRUCTURA CONCEPTUAL UML- ( 3. MECANISMOS COMUNES )
3.1
ESPECIFICACIONES Explicación textual de un gráfico.
COMUNES
3.2
+ - # multiplicidad , notas.
ADORNOS
3.3
DIVISIONES a.- Clases y objetos
COMUNES: b.– Interfaz e implementación
MECANISMOS
COMUNES
3.1 ESPECIFICACIONES
1..* *
Clase Clase
Rol Rol
Transacción
añadirAcción()
quitarAcción()
MECANISMOS
ELEMENTO INSTANCIA
Clase Objeto
Caso de uso Escenario
Nodo Equipo
Componente Instancia de componente
MECANISMOS
. .
. .
Persona clase
Nombre
Dirección Objeto
Maria:Persona teléfono : Persona
Pablo:Persona Tulio
Isabel:Persona
3.3. DIVISIONES COMUNES
COMUNES
2. Interfaz e implementación .
Separación entre interfaz e implementación.
Interfaz-2
Caso de Uso Relación de realización
Clase
Realiza el
caso de uso
Opera-
ciones Métodos que Colaboración
implementan esas
operaciones.
3.4. MECANISMOS DE EXTENSIBILIDAD
COMUNES
3.4.1. ESTEREOTIPOS
3.4.3. RESTRICCIONES
3.4 MECANISMOS DE EXTENSIBILIDAD
COMUNES
3.4.1. EXTEREOTIPOS
Extiende el vocabulario UML, permitiendo crear nuevos tipo
de bloques de construcción que deriven de los estándar pe
especificos a un problema del sistema.
Ejemplos:
añadir() ordenado
MECANISMOS
quitar()
vaciar()
Servidor
{segura}
MECANISMOS
Persona
Persona natural
Sexo:{hombre,mujer}
0..1
esposa
0..1
marido
{self.esposa.sexo=mujer and
self.marido.sexo=hombre}
Restricción formal OCL(Object Constraint Language)
III. ARQUITECTURA
• Analistas
Vista de Diseño
• Se ocupa de los requisitos funcionales del Vista de Despliegue
sistema, es decir los servicios que debe prestar a los
usuarios finales. • Esta vista contiene los nodos de la topología
• Comprende las clases, las colaboraciones y las interfaces • Se ocupa de la distribución y entrega del sistema físico
en el vocabulario del problema y de la solución. • Los aspectos dinámicos se capturan en los DI, DE, DA.
• Los aspectos dinámicos se capturan en los DI, DE, DA. • Los aspectos estáticos en los DC y DO.
• Los aspectos estáticos en los DC y DO.
Vista de casos
de uso
• Se ocupa del comportamiento del Sistema.
• Los aspectos dinámicos se capturan
en los DI, DE, DA.
Vista de Proceso • Los aspectos estáticos
• Esta vista comprende los hilos y procesos que forman en los DC y DO.
los mecanismos de sincronización y concurrencia del
Vista de Implementación
sistema.
• Se ocupa de: funcionamiento, capacidad de crecimiento
• Esta vista comprende los componentes y archivos
y rendimiento del sistema.
que se ensamblan para hacer funcional el sistema.
• Los aspectos dinámicos se capturan en los DI, DE, DA.
• Se ocupa de la gestión de configuración.
• Los aspectos estáticos en los DC y DO.
• Los aspectos dinámicos se capturan en los DI,
DE, DA.
DI: Diagrama de Interacción DC: Diagramas de clases
• Los aspectos estáticos en los DC y DO.
DE: Diagrama de Estado DO: Diagramas de objetos
DA: Diagrama de Actividades
IV. PROCESO UNIFICADO.
CICLO DE VIDA DEL DESARROLLO DE SOFTWARE
LENGUAJE DE REPRESENTACIÓN
METODOLOGIA
EL PROCESO
Centrado en la arquitectura.
Iterativo e incremental.
CICLO DE VIDA DEL DESARROLLO DE SOFTWARE
– EL PROCESO UNIFICADO -
Requisitos.
Análisis y diseño.
Implementación
Pruebas
Despliegue
Entorno.
Iteraciones
preliminares Itera-1,2 Itera-n.. Itera-n....
CICLO DE VIDA DEL DESARROLLO DE SOFTWARE
– EL PROCESO UNIFICADO -
FASE CONS-
TRUCCIÓN El software se lleva de una desde una base arquitectónica
ejecutable hasta la disponibilidad para la comunidad de usuarios.
FASE TRAN-
El software es puesto en marcha en las manos de las
SICIÓN comunidades de usuarios.
CICLO DE VIDA DEL DESARROLLO DE SOFTWARE
– EL PROCESO UNIFICADO - ITERACCIÓN
Requisitos.
Análisis y diseño.
Implementación
Pruebas
Despliegue
Entorno.
Iteraciones
preliminares Itera-1,2 Itera-n.. Itera-n....
I N
F