Professional Documents
Culture Documents
www.dsic.upv.es/~uml
Contenido
I.
II.
III.
IV.
V.
Introduccin
Modelado de Software
UML
Breve Tour por UML
El Paradigma Orientado a Objeto usando UML
Diagramas de Interacciones
Diagrama de Clases
Diagrama de Componentes
Diagrama de Despliegue
Proceso de Desarrollo de SW basado en UML
Conclusiones
www.dsic.upv.es/~uml
Introduccin
Modelado de SW
www.dsic.upv.es/~uml
I. Introduccin: Modelado de SW
www.dsic.upv.es/~uml
I. Introduccin: Modelado de SW
www.dsic.upv.es/~uml
I. Introduccin: Modelado de SI
Construccin de un
rascacielos
www.dsic.upv.es/~uml
I. Introduccin: Modelado de SW
Claves en Desarrollo de SI
Notacin
Herramientas
www.dsic.upv.es/~uml
Proceso
I. Introduccin: Modelado de SW
envo
Proceso de Negocios
Sistema Computacional
www.dsic.upv.es/~uml
I. Introduccin: Modelado de SW
MV para manejar la
complejidad
www.dsic.upv.es/~uml
I. Introduccin: Modelado de SW
Servidor de BDs
(C++ & SQL, ..)
www.dsic.upv.es/~uml
10
I. Introduccin: Modelado de SW
MV promueve la
reutilizacin
Mltiples Sistemas
Componentes
Reutilizados
www.dsic.upv.es/~uml
11
Introduccin: UML
www.dsic.upv.es/~uml
12
I. Introduccin: UML
Qu es UML?
Modelado
Modelado
Modelado
Modelado
www.dsic.upv.es/~uml
Orientado a Objetos
de Datos
de Componentes
de Flujos de Trabajo (Workflows)
13
I. Introduccin: UML
Situacin de Partida
www.dsic.upv.es/~uml
14
I. Introduccin: UML
Historia de UML
www.dsic.upv.es/~uml
15
I. Introduccin: UML
Historia de UML
UML 2.0
2001
UML 1.4
2000
1999
1998
Nov 97
www.dsic.upv.es/~uml
UML 1.3
UML aprobado por el OMG
UML 1.2
Revisiones
menores
16
I. Introduccin: UML
Rational Software
Digital Equipment
Hewlett-Packard
i-Logix (David Harel)
IBM
ICON Computing
(Desmond DSouza)
www.dsic.upv.es/~uml
MCI Systemhouse
Microsoft
ObjecTime
Oracle Corp.
Platinium Technology
Sterling Software
Taskon
Texas Instruments
Unisys
17
I. Introduccin: UML
Jacobson
Odell
Meyer
Pre- and Post-conditions
Shlaer-Mellor
Object life cycles
UML
Harel
State Charts
Embly
Singleton classes
Wirfs-Brock
Fusion
Responsabilities
Operation descriptions,
message numbering
www.dsic.upv.es/~uml
18
I. Introduccin: UML
Aspectos Novedosos
Constraints
Tagged Values
www.dsic.upv.es/~uml
19
I. Introduccin: UML
Inconvenientes en UML
Ejemplos aislados
www.dsic.upv.es/~uml
20
I. Introduccin: UML
Perspectivas de UML
Evidencias:
Herramientas que proveen la notacin UML
Edicin de libros
Congresos, cursos, camisetas, etc.
www.dsic.upv.es/~uml
21
www.dsic.upv.es/~uml
22
Modelos y Diagramas
www.dsic.upv.es/~uml
23
www.dsic.upv.es/~uml
24
Diagramas de UML
Diagrama de Casos de Uso
Diagrama de Clases
Diagrama de Objetos
Diagramas de Comportamiento
Diagrama de Estados
Diagrama de Actividad
Diagramas de Interaccin
Diagrama de Secuencia
Diagrama de Colaboracin
Diagramas de implementacin
Diagrama de Componentes
Diagrama de Despliegue
www.dsic.upv.es/~uml
25
Use Case
Use Case
Diagramas de
Diagrams
Diagrams
Secuencia
Use Case
Use Case
Diagramas de
Diagrams
Diagrams
Casos de Uso
Scenario
Scenario
Diagramas de
Diagrams
Diagrams
Colaboracin
Scenario
Scenario
Diagramas de
Diagrams
Diagrams
Estados
www.dsic.upv.es/~uml
State
State
Diagramas de
Diagrams
Diagrams
Clases
Modelo
Diagramas de
Actividad
State
State
Diagramas de
Diagrams
Diagrams
Objetos
State
State
Diagramas de
Diagrams
Diagrams
Componentes
Component
Component
Diagrams
Diagramas
Diagrams de
Distribucin
26
Organizacin de Modelos
4+1 vistas de Kruchten (1995)
Vista Lgica
Vista de
Realizacin
Vista de los
Casos de Uso
Vista de
Procesos
Vista de
Distribucin
www.dsic.upv.es/~uml
27
www.dsic.upv.es/~uml
28
Paquetes en UML
www.dsic.upv.es/~uml
29
Paquetes en UML
www.dsic.upv.es/~uml
30
Paquetes en UML
El operador :: permite
designar una clase definida en
un contexto distinto del actual
Prctica 1
www.dsic.upv.es/~uml
31
Paquetes en UML
Prctica 1
www.dsic.upv.es/~uml
32
www.dsic.upv.es/~uml
33
Ejemplos
Supervisor
Administrativo
Preparar Catlogo
Sistema
Inventario
Tipos de Venta
www.dsic.upv.es/~uml
34
Ejemplos
En el paquete tipos de venta:
Venta Normal
Vendedor
Venta en Rebajas
Venta en Ofertas
www.dsic.upv.es/~uml
35
Ejemplos
Cliente
Solicitar Prstamo
[Tarjeta Caducada]
<<extend>>
www.dsic.upv.es/~uml
36
Ejemplos
<<include>>
Verificar Operacin
Cliente
<<include>>
www.dsic.upv.es/~uml
37
Diagrama de Secuencia
: Encargado
:WInPrstamos
:Socio
:Video
:Prstamo
prestar(video, socio)
verificar situacin socio
verificar situacin video
registrar prstamo
entregar recibo
www.dsic.upv.es/~uml
38
Diagrama de Colaboracin
:Socio
:Video
2: verificar situacin socio
1: prestar(video, socio)
5: entregar recibo
: Encargado
4: registrar prstamo
:Prstamo
Prctica 3
www.dsic.upv.es/~uml
39
Diagrama de Clases
El Diagrama de Clases es el diagrama principal
para el anlisis y diseo
Un diagrama de clases presenta las clases del
sistema con sus relaciones estructurales y de
herencia
La definicin de clase incluye definiciones para
atributos y operaciones
Alumno
DNI : char[10]
nmero_exp : int
nombre : char[50]
alta()
poner_nota(asignatura : char *, ao : int, nota : float)
matricular(cursos : asignatura, ao : int)
listar_expediente()
www.dsic.upv.es/~uml
41
Ejemplos (Asociacin)
Departamento
dirige
0..1
www.dsic.upv.es/~uml
director
Profesor
1
42
Ejemplos (Clase
Asociacin)
Empresa
empleador
trabajadores
Empleado
1..*
Cargo
nombre
sueldo
superior
0..1
subordinado 1..*
www.dsic.upv.es/~uml
43
Ejemplos (Generalizacin)
Trabajador
{ disjunta, completa }
Directivo
www.dsic.upv.es/~uml
Administrativo
Obrero
44
Ejemplos
Motor
1..4
1
Avin
Vendedor de billetes
Piloto
1..2
Vuelo
Reserva
{ disjunta, completa }
1
Avin militar
Avin comercial
Lnea area
{ disjunta, completa }
Avin de carga
www.dsic.upv.es/~uml
Avin de pasajeros
Prcticas 4-8
45
Diagrama de Estados
alta
baja
sin prstamos
nmero_prstamos = 0
Socio
nmero : int
nombre : char[50]
nmero_prestamos : int = 0
prestar
devolver[ nmero_prstamos = 1 ]
alta()
baja()
prestar(cdigo_libro : int, fecha : date)
devolver(cdigo_libro : int, fecha : date)
nmero_prstamos > 0
con prstamos
prestar
www.dsic.upv.es/~uml
46
Diagrama de Actividad
Buscar Bebida
[hay caf
Poner caf en filtro
[no zumo]
[hay zumo]
Encender mquina
/ cafetera.On
Caf en preparacin
indicador de fin
Servir caf
www.dsic.upv.es/~uml
Beber
47
Vendedor
Airline
Verificar
existencia vuelo
Dar detalles vuelo
Informar alternativas
y precios
Seleccionar vuelo
Pagar pasaje
Emitir billete
www.dsic.upv.es/~uml
Prctica 9
48
Diagrama Componentes
Control y Anlisis
Interfaz de Terminal
Comment
Comment
Gestin de Cuentas
Comment
www.dsic.upv.es/~uml
Rutinas de Coneccion
Comment
Acceso a BD
Comment
49
Diagrama de Despliegue
Servidor Central
Control y Anlisis
Comment
Acceso a BD
Comment
Rutinas de Coneccion
Comment
Terminal de Consulta
Rutinas de Coneccion
Comment
Punto de Venta
Interfaz de Terminal
Comment
Rutinas de Coneccion
Comment
Gestin de Cuentas
Interfaz de Terminal
Comment
Comment
Prctica 10
www.dsic.upv.es/~uml
50
Resumen
UML define una notacin que se expresa
como diagramas sirven para representar
modelos/subsistemas o partes de ellos
El 80 por ciento de la mayora de los
problemas pueden modelarse usando
alrededor del 20 por ciento de UML-- Grady
Booch
www.dsic.upv.es/~uml
51
El Paradigma
Orientado a Objeto
usando UML
www.dsic.upv.es/~uml
52
Por qu la Orientacin a
Objetos?
www.dsic.upv.es/~uml
53
Por qu la Orientacin a
Objetos?
www.dsic.upv.es/~uml
54
Problemas en OO
...Los conceptos bsicos de la OO se conocen
desde hace dos dcadas, pero su aceptacin
todava no est tan extendida como los beneficios
que esta tecnologa puede sugerir
...La mayora de los usuarios de la OO no utilizan
los conceptos de la OO de forma purista, como
inicialmente se pretenda. Esta prctica ha sido
promovida por muchas herramientas y lenguajes
que intentan utilizar los conceptos en diversos
grados
--Wolfgang Strigel
www.dsic.upv.es/~uml
55
Problemas en OO
www.dsic.upv.es/~uml
56
DFDs
E-R
Enfoque OO
www.dsic.upv.es/~uml
Diseo
DEs
Modelo
Relacional
Modelo
Relacional !!
Diagrama de Clases
Diagrama de Estados
Diagramas de Actividad
Implementacin
Entornos de
Programacin
Visual
Bases de Datos
(Objeto-)
Relacionales
57
Fundamentos de Modelado
OO
www.dsic.upv.es/~uml
58
Objetos
www.dsic.upv.es/~uml
59
Objetos
Un Objeto
Otro
Objeto
www.dsic.upv.es/~uml
60
Objetos
Felipe
Cuenta Corriente 114
www.dsic.upv.es/~uml
61
Objetos
www.dsic.upv.es/~uml
62
Clases y Objetos
www.dsic.upv.es/~uml
63
Identidad
www.dsic.upv.es/~uml
64
Identidad
Es independiente de las propiedades del objeto, lo cual
implica independencia de valor y de estructura
No cambia durante toda la vida del objeto. Adems, un oid no
se reutiliza aunque el objeto deje de existir
No se tiene ningn control sobre los oids y su manipulacin
resulta transparente
www.dsic.upv.es/~uml
65
Estado
www.dsic.upv.es/~uml
66
Comportamiento
Ejemplo de interaccin:
www.dsic.upv.es/~uml
67
Comportamiento
www.dsic.upv.es/~uml
68
Persistencia
www.dsic.upv.es/~uml
69
Comunicacin
www.dsic.upv.es/~uml
70
Comunicacin
Categoras de objetos:
Activos - Pasivos
Cliente Servidores, Agentes
www.dsic.upv.es/~uml
71
Comunicacin
www.dsic.upv.es/~uml
72
Comunicacin
Sevidor 1
Servidor 2
Un cliente
www.dsic.upv.es/~uml
73
El Concepto de Mensaje
www.dsic.upv.es/~uml
74
El Concepto de Mensaje
Objeto 1
: Mensaje A
Objeto 2
: Mensaje C
: Mensaje E
Objeto 3
Objeto 4
: Mensaje D
www.dsic.upv.es/~uml
75
Mensaje y Estmulo
www.dsic.upv.es/~uml
76
www.dsic.upv.es/~uml
77
Casos de Uso
www.dsic.upv.es/~uml
78
Casos de Uso
www.dsic.upv.es/~uml
79
Casos de Uso
Ejemplo:
Actor A
Caso de Uso A
Caso de Uso B
www.dsic.upv.es/~uml
Actor B
80
Casos de Uso
Actores:
www.dsic.upv.es/~uml
81
Casos de Uso
www.dsic.upv.es/~uml
82
Actor
www.dsic.upv.es/~uml
Caso de Uso
83
Casos de Uso:
Relaciones
Inclusin : una instancia del Caso de Uso origen
incluye tambin el comportamiento descrito por el
Caso de Uso destino
<<include>>
www.dsic.upv.es/~uml
84
Casos de Uso:
Relaciones
Extensin : el Caso de Uso origen
extiende el comportamiento del Caso de
Uso destino
<<extend>>
www.dsic.upv.es/~uml
85
Casos de Uso:
Relaciones
Herencia : el Caso de Uso origen hereda
la especificacin del Caso de Uso destino
y posiblemente la modifica y/o ampla
www.dsic.upv.es/~uml
86
Casos de Uso:
Relaciones
Ejemplo:
<<include>>
Cliente
Identificacin
Transferencia
<<extend>>
Transferencia en Internet
www.dsic.upv.es/~uml
87
Casos de Uso:
Relaciones
Ejemplo:
www.dsic.upv.es/~uml
88
Casos de Uso:
Construccin
www.dsic.upv.es/~uml
89
Casos de Uso:
Construccin
www.dsic.upv.es/~uml
90
Precondicin
Secuencia
Normal
Postcondicin
Excepciones
Rendimiento
Frecuencia esperada
Importancia
Urgencia
Comentarios
www.dsic.upv.es/~uml
91
www.dsic.upv.es/~uml
92
Diagramas de Interaccin
www.dsic.upv.es/~uml
93
Interaccin
www.dsic.upv.es/~uml
94
Mensajes
Sintaxis para mensajes:
predecesor / guarda secuencia: retorno := msg(args)
www.dsic.upv.es/~uml
95
Diagramas de interaccin
www.dsic.upv.es/~uml
96
Diagrama de Secuencia
www.dsic.upv.es/~uml
97
Diagrama de Secuencia
www.dsic.upv.es/~uml
98
Diagrama de Secuencia
mostrando foco de
control,
condiciones, recursin
creacin y destruccin
de objetos
www.dsic.upv.es/~uml
99
Diagrama de Secuencia
www.dsic.upv.es/~uml
100
Diagrama de Colaboracin
www.dsic.upv.es/~uml
101
Mensajes
www.dsic.upv.es/~uml
102
Mensajes
B
A
www.dsic.upv.es/~uml
103
Mensajes
1: distancia:= mover(x,y)
B
A
Prctica 12
www.dsic.upv.es/~uml
104
Diagrama de Clases
www.dsic.upv.es/~uml
105
Clasificacin
Mecanismos de abstraccin:
Clasificacin / Instanciacin
Composicin / Descomposicin
Agrupacin / Individualizacin
Especializacin / Generalizacin
www.dsic.upv.es/~uml
106
Clases
www.dsic.upv.es/~uml
107
motocicleta
color
cilindrada
velocidad maxima
arrancar
acelerar
frenar
www.dsic.upv.es/~uml
108
Otros ejemplos:
lista
pila
primero
ultimo
aadir
quitar
cardinalidad
www.dsic.upv.es/~uml
apilar
desapilar
cardinalidad
109
Clases: Encapsulacin
www.dsic.upv.es/~uml
110
Clases: Encapsulacin
www.dsic.upv.es/~uml
111
Clases: Encapsulacin
Ejemplo:
Reglas de visibilidad
+ Atributo pblico : int
# Atributo protegido : int
- Atributo privado : int
+ "Operacin pblica"
# "Operacin protegida"
- "Operacin privada"
www.dsic.upv.es/~uml
112
www.dsic.upv.es/~uml
113
Asociacin
Un enlace
Universidad
Antonio:Estudiante
Estudiante
Una asociacin
www.dsic.upv.es/~uml
114
Asociacin
Ejemplo:
marido
casado-con
Administra
www.dsic.upv.es/~uml
0.. 1
mujer
jefe
0.. 1
0.. 1
Persona *
nombre
s. s.
trabaja-para
emplea-a
* Compaa
nombre
direccin
empleado
115
Asociacin
Especificacin de multiplicidad
(mnima...mxima)
1 Uno y slo 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)
www.dsic.upv.es/~uml
116
Asociacin Cualificada
Aerolnea
Tablero
Ajedrez
nro_billete
0..1
1
fila
columna
Viajero
Cuadro
www.dsic.upv.es/~uml
117
Agregacin
www.dsic.upv.es/~uml
118
Agregacin:
Caracterizacin
Multiplicidad Mnima
0
flexible
> 0 estricta
Multiplicidad
Objeto
Agregado
(mna, mxa)
Multiplicidad Mnima
(mnc,
0
nulos permitidos
> 0 nulos no
Objeto
permitidos
mxc)
Componente
www.dsic.upv.es/~uml
Mxima
1
disjunto
> 1 no disjunto
Multiplicidad Mxima
1
univaluado
> 1 multivaluado
119
... Agregacin:
Caracterizacin
www.dsic.upv.es/~uml
120
Ejemplos
www.dsic.upv.es/~uml
121
... Ejemplos
www.dsic.upv.es/~uml
122
Ejemplos
Agregacin
Cuenta
1 contiene
Polgono
3.. *
{ordenado}
Persona
or
1
Punto
Asociacin excluyente
Empresa
Usuario
est-autorizado-en
Estacin
Autorizacin
prioridad
Clase de asociacin privilegios
camb_privil
www.dsic.upv.es/~uml
123
Clases y Objetos
www.dsic.upv.es/~uml
124
Generalizacin
www.dsic.upv.es/~uml
125
... Generalizacin
www.dsic.upv.es/~uml
126
... Generalizacin
www.dsic.upv.es/~uml
127
... Generalizacin
Vehculo
Veihculo Terrestre
Coche
www.dsic.upv.es/~uml
Camin
Vehculo Areo
Avin
Helicptero
128
... Generalizacin
Funcionando
Estropeado
disjunta - no disjunta
total (completa) - parcial (incompleta)
www.dsic.upv.es/~uml
129
... Generalizacin
www.dsic.upv.es/~uml
130
... Generalizacin
www.dsic.upv.es/~uml
131
... Generalizacin
Avin
www.dsic.upv.es/~uml
Helicptero
132
... Generalizacin
Funcionando
www.dsic.upv.es/~uml
Estropeado
133
... Generalizacin
www.dsic.upv.es/~uml
134
... Generalizacin
Clasificacin Esttica
C0
ext(C0) = ext(Ci)
{ static }
completa
ext(Ci) ext(Cj) =
C1
www.dsic.upv.es/~uml
Cn
disjunta
135
... Generalizacin
Clasificacin Dinmica
C0
ext(C0) = ext(Ci)
{ dinmica }
completa
C1
www.dsic.upv.es/~uml
Cn
no disjunta en
diferentes
instantes
136
... Generalizacin
Militar
uso
Vehculo Areo
estructura
Avin
www.dsic.upv.es/~uml
Helicptero
137
www.dsic.upv.es/~uml
138
Herencia Mltiple
Cuadrpedo
nro patas
nro patas
Herbvoro
Con Pelos
comida
cubertura
Con Plumas
cobertura
Animal
comida
cobertura
Carnvoro
Con Escamas
Conejo
www.dsic.upv.es/~uml
139
Principio de Sustitucin
www.dsic.upv.es/~uml
140
Principio de Sustitucin
www.dsic.upv.es/~uml
141
Polimorfismo
www.dsic.upv.es/~uml
142
Polimorfismo
?
dormir
?
Len
www.dsic.upv.es/~uml
Oso
Tigre
143
Polimorfismo
Animal
dormir()
Dormir()
{
}
Len
Oso
Tigre
dormir()
dormir()
dormir()
Dormir()
{
sobre el vientre
}
www.dsic.upv.es/~uml
Dormir()
{
sobrela espalda
}
Dormir()
{
en un rbol
}
144
Polimorfismo
www.dsic.upv.es/~uml
145
Diagrama de Estados
www.dsic.upv.es/~uml
146
Diagrama de Estados
www.dsic.upv.es/~uml
147
Diagrama de Estados
www.dsic.upv.es/~uml
148
Diagrama de Estados
www.dsic.upv.es/~uml
149
Diagrama de Estados
Estados y Transiciones
Evento [condicin] / Accin
B
Tanto el evento como la accin se
consideran instantneos
www.dsic.upv.es/~uml
150
Diagrama de Estados
en activo
perder empleo
jubilarse
jubilarse
jubilado
www.dsic.upv.es/~uml
151
Acciones
www.dsic.upv.es/~uml
152
Acciones
www.dsic.upv.es/~uml
153
Generalizacin de Estados
www.dsic.upv.es/~uml
154
Generalizacin de Estados
Ejemplo:
e1
e2
e2
C
www.dsic.upv.es/~uml
155
Generalizacin de Estados
Quedara como:
Aa
e1
b
B
e2
www.dsic.upv.es/~uml
156
Generalizacin de
Estados
Bb
e2
e0
www.dsic.upv.es/~uml
157
Generalizacin de
Estados
b
B
e2
www.dsic.upv.es/~uml
C
e0
158
Generalizacin de
Estados
La agregacin de estados es la
composicin de un estado a partir de
varios estados independientes
www.dsic.upv.es/~uml
159
Generalizacin de
Estados
Ejemplo:
e1
www.dsic.upv.es/~uml
e1
160
Generalizacin de
Estados
Ejemplo:
www.dsic.upv.es/~uml
161
Historia
www.dsic.upv.es/~uml
162
Historia
Ejemplo:
A
d2
B
in
D
out
d1
C
H*
www.dsic.upv.es/~uml
163
Historia
Ejemplo:
Enjuague
Lavado
Secado
cerrar puerta
abir puerta
Espera
www.dsic.upv.es/~uml
164
www.dsic.upv.es/~uml
165
Destruccin de Objeto
Ejemplo:
En vuelo
despegar
Crear(matricula)
www.dsic.upv.es/~uml
crash
aterrizar
En tierra
166
Transiciones temporizadas
www.dsic.upv.es/~uml
167
Transiciones
temporizadas
Ejemplo:
A
/ Abrir ranura
esperar dinero
entry: Mostrar mensaje
exit: cerrar ranura
despus de
30 segundos
anular
transaccin
Depsito efectuado
www.dsic.upv.es/~uml
168
Diagrama de Actividad
www.dsic.upv.es/~uml
169
Ejemplos
www.dsic.upv.es/~uml
170
... Ejemplos
www.dsic.upv.es/~uml
171
... Ejemplos
www.dsic.upv.es/~uml
172
Diagrama de
Componentes
www.dsic.upv.es/~uml
173
Diagrama de
Componentes
www.dsic.upv.es/~uml
174
...Diagrama de
Componentes
www.dsic.upv.es/~uml
175
Diagramas de
Componentes
Ejemplo:
www.dsic.upv.es/~uml
176
Diagrama de Despliegue
www.dsic.upv.es/~uml
177
Diagrama de Despliegue
www.dsic.upv.es/~uml
178
Diagrama de
Despliegue
www.dsic.upv.es/~uml
179
Diagrama de
Despliegue
<<Servidor>>
<<TCP/IP>>
Base de
Datos
<<RDSI>>
Podemos distinguir
tipos de nodos y
connexiones por
estereotipado
www.dsic.upv.es/~uml
Control
<<RDSI>>
180
Proceso de Desarrollo
de SW basado en UML
www.dsic.upv.es/~uml
181
Qu es un Proceso de Desarrollo de
SW?
Requisitos nuevos
o modificados
Proceso de Desarrollo
de Software
Sistema nuevo
o modificado
www.dsic.upv.es/~uml
182
Historia de RUP
Rational Unified Process
1998
RationalObjectory Process
1996-1997
Objectory Process
Pruebas funcionales
Pruebas de desempe
Gestin de requisitos
Gestin de cambios y
configuracin
Ingeniera de Negocio
Ingeniera de datos
Diseo de interfaces
UML
1987-1995
Enfoque Ericsson
www.dsic.upv.es/~uml
183
Dos Dimensiones
www.dsic.upv.es/~uml
184
Inception Elaboration
Objetivos
(Vision)
Construction
Arquitectura
Transition
Capacidad
Operacional
Inicial
Release
del Producto
tiempo
www.dsic.upv.es/~uml
185
Elementos en RUP
Workflows (Disciplinas)
Workflows Primarios
Workflows de Apoyo
Environment (Entorno)
Project Management (Gestin del Proyecto)
Configuration & Change Management (Gestin de Configuracin
y Cambios)
www.dsic.upv.es/~uml
186
Workers
www.dsic.upv.es/~uml
Artefactos
Actividades
187
Business-Process Analyst
Business Designer
Business-Model Reviewer
Requirements Reviewer
System Analyst
Use-Case Specifier
User-Interface Designer
Developer workers
www.dsic.upv.es/~uml
Architect
Architecture Reviewer
Capsule Designer
Code Reviewer
Database Designer
Design Reviewer
Designer
Implementer
Integrator
Manager workers
Other workers
Any Worker
Course Developer
Graphic Artist
Stakeholder
System Administrator
Technical Writer
Tool Specialist
188
www.dsic.upv.es/~uml
189
Business Modeling
Deployment Set
Conjuntos
de Artefactos
Set
Requirements Set
Test Set
www.dsic.upv.es/~uml
190
www.dsic.upv.es/~uml
191
Caractersticas Esenciales de
RUP
www.dsic.upv.es/~uml
192
Requisitos
Anlisis & Diseo
Implementacin
Pruebas
www.dsic.upv.es/~uml
Casos de Uso
integran el
trabajo
Realizar los
casos de uso
Verificar que se
satisfacen los
casos de uso
193
trace
trace
trace
Pruebas
Unitarias
Pruebas Funcionales
Caso de Prueba
[The Unified Software Development Process. I. Jacobson, G. Booch and J. Rumbaugh. Addison-Wesley, 1999]
194
www.dsic.upv.es/~uml
www.dsic.upv.es/~uml
195
Proceso Iterativo e
Incremental
www.dsic.upv.es/~uml
196
n veces
www.dsic.upv.es/~uml
Codific.
Pruebas e
Integracin
197
www.dsic.upv.es/~uml
198
Enfoque
Iterativo e
Incremental
www.dsic.upv.es/~uml
199
www.dsic.upv.es/~uml
200
Proceso Centrado en la
Arquitectura
Architecture
www.dsic.upv.es/~uml
201
www.dsic.upv.es/~uml
202
Elaboracin
Tanto la funcionalidad como el dominio del
problema se estudian en profundidad
Se define una arquitectura bsica
Se planifica el proyecto considerando
recursos disponibles
www.dsic.upv.es/~uml
203
Construccin
www.dsic.upv.es/~uml
Transicin
Se libera el producto y se entrega al usuario
para un uso real
Se incluyen tareas de marketing, empaquetado
atractivo, instalacin, configuracin,
entrenamiento, soporte, mantenimiento, etc.
Los manuales de usuario se completan y
refinan con la informacin anterior
Estas tareas se realizan tambin en iteraciones
www.dsic.upv.es/~uml
205
Elaboration
Construction
Transition
15%
Requisitos
Una iteracin en la
fase de elaboracin
Anlisis
10%
Diseo
15%
30%
Implementacin
15%
Pruebas
P re lim ina ry
Ite ra tion (s)
ite r.
#1
ite r.
#2
ite r.
#n
ite r.
# n+ 1
ite r.
# n+2
ite r.
#m
ite r.
#m +1
www.dsic.upv.es/~uml
206
Elaboration
Construction
Transition
Requisitos
Una iteracin en la
fase de elaboracin
Anlisis
Diseo
Implementacin
Pruebas
P re lim ina ry
Ite ra tion (s)
Esfuerzo:
Duracin:
www.dsic.upv.es/~uml
5%
10%
ite r.
#1
ite r.
#2
20%
30%
ite r.
#n
ite r.
# n+ 1
65%
50%
ite r.
# n+2
ite r.
#m
ite r.
#m +1
10%
10%
207
Conclusiones
www.dsic.upv.es/~uml
208
V. Conclusiones
Claves en el Desarrollo de SI
Notacin
UML
Herramientas
p.e. Rational Rose
www.dsic.upv.es/~uml
Proceso
p.e. Rational Unified Process
209
V. Conclusiones
Contexto de Desarrollo:
Grado de Complejidad
www.dsic.upv.es/~uml
210
V. Conclusiones
Sencillez y Elegancia
Sincronizacin de modelos
www.dsic.upv.es/~uml
211
V. Conclusiones
... Finalmente
www.dsic.upv.es/~uml
212
V. Conclusiones
Bibliografa Recomendada
UML
www.omg.org/uml/
Meta-links www.celigent.com/uml/ y www.cetus-links.org/oo_uml.html
Pierre-Alain Muller Instant UML
Martin Fowler, UML Destilled (UML Gota a Gota)
Terry Quatrani, Visual Modeling ..., un caso de estudio
Herramientas CASE
Herramientas basadas en UML www.objectsbydesign.com/tools/umltools_byPrice.html
International Council in SE (INCOSE) www.incose.org/tools/
Herramientas basadas en UML www.objectsbydesign.com/tools/umltools_byPrice.html
Otras
Revista IEEE Software, Conferencias: OOPSLA, ECOOP
Patrones www.enteract.com/bradapp/docs/patterns-intro.html,
Tutoriales en ingls www.celigent.com/omg/umlrtf/tutorials.htm
www.dsic.upv.es/~uml
213
www.dsic.upv.es/~uml
214
Arquitectura WEB
Actualidad
Herramientas
Poco sobre el proceso de desarrollo.
www.dsic.upv.es/~uml
215
Arquitectura WEB
www.dsic.upv.es/~uml
216
Arquitectura WEB
Componentes principales
www.dsic.upv.es/~uml
Servidor Web
Conexin de red
Clientes (browsers), uno o ms
217
Arquitectura WEB
www.dsic.upv.es/~uml
218
Arquitectura WEB
Applets ActiveX
TAGS HTML
Links
Forms
Frames
www.dsic.upv.es/~uml
219
Arquitectura WEB
www.dsic.upv.es/~uml
220
Arquitectura WEB
Componentes: Formularios
www.dsic.upv.es/~uml
Textbox
Textarea
Checkbox
Radio button group
Button
Selection list
Submit
221
Arquitectura WEB
Componentes: Servidor
Web
Componentes compilados
Objetos (business objects).
www.dsic.upv.es/~uml
mtodos
atributos
222
Arquitectura WEB
www.dsic.upv.es/~uml
223
Modelado de aplicaciones
WEB
Conallen propone una extensin al UML para disear
aplicaciones Web:
www.dsic.upv.es/~uml
224
Modelado de aplicaciones
WEB
www.dsic.upv.es/~uml
225
Modelado de aplicaciones
WEB
www.dsic.upv.es/~uml
226
Modelado de aplicaciones
WEB
www.dsic.upv.es/~uml
227
Modelado de aplicaciones
WEB
Pginas vinculadas
www.dsic.upv.es/~uml
228
Modelado de aplicaciones
WEB
Pginas vinculadas
Si el vinculo incluye parmetros, estos son modelados
como atributos del link fuera de la asociacin
www.dsic.upv.es/~uml
229
Modelado de aplicaciones
WEB
Formularios
www.dsic.upv.es/~uml
Se modelan con el
estereotipo
<<form>>
230
Modelado de aplicaciones
WEB
Frames
www.dsic.upv.es/~uml
Se utiliza el
estereotipo <<target
link>>
231