Академический Документы
Профессиональный Документы
Культура Документы
por:
BLANCA IBARRA MURRIETA
bibarra_murrieta@hotmail.com
Contenido
Por qu Modelizar?
El Paradigma Orientado a Objetos
Introduccion UML
Captura de Requisitos
Modelado de Interacciones
Modelado de la Estructura del Sistema
Diagramas de Estados
Modelado de Componentes
Modelado de Distribucin
Hacia un proceso de Desarrollo usando UML
RUP Proceso Desarrollo Unificado
Conclusiones
Construir software es difcil
Mtodos
Mtodo
G. Booch
Proceso Software
Un proceso de software debe especificar:
la secuencia de actividades a realizar por el
equipo de desarrollo: flujo de actividades
productos que deben crearse: qu y cundo
asignacin de tareas a cada miembro del
equipo y al equipo como un todo
proporcionar heursticas
criterios para controlar el proceso
Proceso Software
Pedido
Artculo
envo
Proceso de Negocios
Sistema Computacional
MODELO DE LA
INFORMACION
Sistema de
informacion
BIBLIOTECA
Sistema
Catlogo Bibliotecario
Registrar prestmo Reportar Multas
Libro Biblioteca
Agregar recursos
TECNOLOGIA
(OO, UML, Rational Rose)
ORGANIZACION PROCESO
(RUP)
Por qu modelar?
Servidor de BDs
(C++ & SQL, ..)
Multiples Sistemas
Componentes
Reutilizados
El Paradigma
Orientado a Objetos
Por qu la Orientacin a Objetos?
Proximidad de los conceptos de modelado respecto
de las entidades del mundo real
Odell
Meyer
Pre- and Post-conditions
Shlaer-Mellor UML
Object life cycles
Harel
State Charts
Gamma et. al.
Frameworks, patterns,
notes
Embly Wirfs-Brock
Singleton classes Responsabilities
Fusin
Operation descriptions,
message numbering
Inconvenientes en UML?
Definicin del proceso de desarrollo usando UML.
UML no es una metodologa
Falta integracin con respecto de otras tcnicas
tales como patrones de diseo, interfaces de
usuario, documentacin, etc.
Ejemplos aislados
Perspectivas de UML
UML ser el lenguaje de modelizacin de objetos
estndar predominante los prximos aos
Razones:
Participacin de metodlogos influyentes
Participacin de importantes empresas
Aceptacin del OMG como notacin estndar
Evidencias:
Herramientas que proveen la notacin UML
Edicin de libros
Congresos, cursos, camisetas, etc.
Uso de UML
El objetivo de UML es describir cualquier tipo de
sistema en trminos de diagramas orientados a
objetos
Algunas categoras de Sistemas
Sistemas de Informacin
Sistemas de Tiempo Real
Sistemas Embebidos
Sistemas Distribuidos
Software de Sistemas
Sistemas de Negocios
Tipos de Diagramas UML
Diagrama de Casos de Uso
Diagrama de Clase (incluyendo 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
Diagrama de Casos de Uso
Cliente
Comercio
Cliente Individual
Cliente Corporativo Ajustar transacciones
Entidad financiera
Servidor + FormularioPedido
+ FormularioDeSeguimiento
+ BaseDeDatos - Pedido
+ ServicioDeRegistro
import
Politicas
+ ReglasPedidos
+ GUI:Ventana
import
GUI
+ Ventana
+ Formulario
Paquetes
# GestorEventos
Diagrama de Secuencia
:Interface :Pedido :LineaDe :Item
Entrada Pedido Pedido
preparar
*preparar
hayStock:=comprobar
[hayStock] eliminar
pedir?:=necesarioPedir
[pedir?]<<create>>
PedidoItem
7:
5: pedir?:=necesarioPedir 8: [hayStock] <<create>>
3: hayStock:=comprobar
4: [hayStock] eliminar
:Item Item
Entregado
6: [pedir?]<<create>>
Pedido
Item
Diagrama de Estados
introducirProducto
Terminar Venta
manejarRespuesta
efectuar Pago Efectivo Espera
Pago
Autorizacion
Pago
efectuar Pago Tarjeta
Diagrama de
Actividades
Solicitar Producto
Procesar Pedido
Extraer Artculos
Enviar Pedido
Pagar Factura
Cerrar Pedido
Componentes
Modem
<<procesador>>
servidor cache
Diagrama de Despliegue
Modelado con UML
Modelado del Negocio
Diagramas de actividades
Modelado de Requisitos
Diagramas de casos de uso
Modelado Estructural
Diagramas de clases
Diagramas de objetos
Modelado del Comportamiento
Diagramas de secuencia
Diagramas de Colaboracin
Modelado con UML
Modelado Dinmico
Diagramas de estados
Modelado Arquitectnico
Diagramas de componentes
Diagramas de despliegue
Paquetes
Modelado con UML
State
State
Use Case Diagramas de
Diagrams
Use Case Diagrams State
Use Case Diagramas de
Diagrams Clases State
Use Case Diagrams Diagramas de
Diagrams
Diagramas de Casos de Uso
Diagrams Diagrams
Objetos
Diagrams
Secuencia
Scenario State
Scenario State
Diagramas de
Diagrams Diagramas de
Diagrams
Diagrams Diagrams
Colaboracin Modelo Componentes
Scenario Component
Scenario Component
Diagramas
Diagrams de
Diagramas de
Diagrams Diagrams
Diagrams Distribucin
Estados Diagramas de
Actividad
Actividades tcnicas
1. Identificar Casos de Uso del sistema
2. Dar detalle a los casos de uso descritos
3. Definir una interfaz inicial del sistema (si es aplicable)
4. Desarrollar el modelo del mundo
5. Validar los modelos
Documentos Entregables
Diagrama actividades,Casos de uso iniciales ,borradores
de interfaz, Modelo del mundo inicial (D.Clases)
Etapas del modelo del negocio
Anlisis de requerimientos
Subobjetivos
Procesos
del Negocio Registrar Fabricar Gestionar Realizar
pedido de productos almacn de pedidos a
cliente pedidos materiales proveedores
Casos de Uso
del Negocio
Generar
Registrar Fabricar Gestionar pedidos a
pedido productos almacn proveedor
Etapas del modelo del negocio
Anlisis de requerimientos
:Catalogo
Demasiado compleja:
Rellenar pedido
p: Pedido
[propuesto] Descomposicin
:Plantilla de
Fabricacion Jerrquica
Cursar pedido p: Pedido
[en_evaluacion]
Analizar viabilidad
p:Pedido
[evaluado]
: Producto
Especial
Notificar rechazo [ NO ] Viable?
de pedido
[ SI ]
Fin KO
:Plantilla de
p: Pedido Fabricacion
[rechazado]
Planificar produccion
p: Pedido
[aceptado]
Fin OK
Plantilla de Descripcin Registrar pedido
Proceso de
Registrar Pedido
Negocio
Objetivo Registrar Pedido de Cliente
Descripcin
Rol Externo
1. El cliente enva una orden de pedido, que debe incluir la fecha de solicitud, datos del
cliente y productos solicitados. Es posible que sea un empleado del departamento comercial
quien introduzca el pedido, a peticin de un cliente que realiz su pedido por telfono o lo
envi por fax o correo ordinario al dpto. comercial de la empresa.
2. El empleado revisa el pedido (completndolo, si es necesario), y comienza su
procesamiento envindolo al jefe tcnico, encargado de su anlisis.
3. El jefe tcnico analiza la viabilidad de cada producto pedido por separado:
Si el producto pedido est en el catlogo, su fabricacin es aceptada.
Roles Internos
En caso contrario es considerado un producto especial y estudia su produccin:
- Si es viable, la fabricacin del producto especial es aceptada;
- Si no es viable, el producto especial no ser fabricado.
4. Una vez estudiado el pedido completo, el jefe tcnico...
Informa al depto comercial de la aceptacin o rechazo de cada producto pedido;
Si todos los productos de un pedido han sido aceptados, se crea una orden de trabajo
para cada producto, a partir de una plantilla de fabricacin (la estndar si el producto
estaba catalogado, o una nueva, especficamente diseada para el producto, si ste no
estaba en el catlogo). Cada orden de trabajo es enviada al jefe de produccin, y queda
pendiente de su lanzamiento.
5. El comercial comunica al cliente el resultado final del anlisis de su pedido.
Prioridad Bsico
Riesgos ...
Posibilidades ...
Tiempo Ejec. ...
Coste Ejec. ...
Casos de Uso del Negocio
<<initiator>>
Registrar pedido
Cliente
Fabricar producto
Gestionar almacen
<<role>> <<role>>
Cliente Comercial
*
*
<<role>> <<role>>
Jefe Tcnico. Jefe Produccin
Diagrama de Secuencia Registrar Pedido
darCursoPedido()
estudiarPedido()
* analizarFabricacionProducto()
planificarFabricacion()
informarAnalisisPedido()
aceptarPedido()
Reglas de Negocio
Reglas de restriccin
Especifican polticas o condiciones que restringen la
estructura y comportamiento de las informaciones
Estmulo-Respuesta
Restriccin de operacin
Restriccin de estructura
Reglas de derivacin
Especifican polticas o condiciones para inferir nuevos
hechos a partir de otros.
Glosario
... ...
Objeto de Informacin: Pedido Actividad: Ordenar fabricacion
Reglas de
Atributos Origen: AnalizarEstmulo-Respuesta
viabilidad
Codigo de pedido Agente: Jefe Tecnico
Fecha de solicitud Precondiciones: La fabricacion de todos los productos
Fecha lmite de entrega pedidos es viable. Existe una plantilla de fabricacin para
Conjunto de {Producto}
Cliente Reglas
cada uno de dichos productos.
Reglas de
Postcondiciones: Ha sido creada una orden de trabajo
Importe total
Estructurales, Operacin
para cada producto, con estado pendiente, y ha sido enviada
al jefe de produccin para su planificacin.
Estado Actual
Restricciones de Derivacin y Caso de Uso : - por especificar-
de Existencia
- El cdigo de pedido identificar unvocamente el
pedido, y ser asignado automticamente por el
sistema Actividad: Notificar aceptacion de pedido
- La fecha de solicitud ser anterior a la fecha lmite de
entrega.
Origen: Analizar viabilidad
- Un pedido contendr al menos un producto; no existe
Agente: Comercial
lmite mximo de productos.
Precondiciones: La fabricacin de todos los productos
- Un pedido siempre ser solicitado por uno y pedidos es viable.
solamente un cliente. Postcondiciones: Se ha comunicad al cliente la
- El importe total ser calculado a partir del precio de aceptacin de su pedido. El estado del pedido es a ceptado.
cada producto pedido.
Caso de Uso : - por especificar-
Clase del Dominio : - por especificar -
Trazabilidad
...
Especificacin de las actividades
Objetivo:
Se establecen los requisitos funcionales y no
funcionales del sistema.
rol
actor
actividad Caso de Uso
No siempre
objeto Clase del Dominio
Modelo de requisitos
Anlisis de requerimientos
Caso de uso
Documento narativo de un proceso de un
dominio del problema
Proceso
Describe de comienzo a fin una secuencia de
eventos para producir u obtener algo
Casos de Usos
Formato
Caso uso: Nombre
Actores: Lista actores
Propsito: Intencin caso uso
Resumen: Repeticin caso uso
Tipo: 1. Primario, secundario u opcional
2. de alto nvel Esencial o real
Referencias cruzadas: Casos relacionados usos y
funciones
Tipos de casos de uso
Caso de uso
Actor
Relacin asociacin
Extend
Herencia
Extend
Ejemplo Caso de Uso
Procesar Prstamo
ResponsablePrestamos
asociacion
Propiedades de los casos de uso
include
Comprobar clave
Relacin de
inclusin
Validar Usuario
Generalizacin
include
Seguir Pedido Examinar retina
Introducir Pedido de Cliente Analizar Produccion Productos
Cliente
JefeTecnico
Comercial
Asignarles prioridad
Establecer iteraciones del desarrollo a partir de
los casos de uso.
Varias versiones de un caso de uso complejo,
para aadir complejidad de modo incremental.
Un caso de uso se va refinado en cada iteracin.
Al final un caso de uso esencial se transforma en
su forma real.
Modelo de requisitos
Anlisis de requerimientos
Modelo conceptual
Los objetos informacin entrada y salida de las
actividades representan entidades y conceptos del
dominio.
Se utilizan para crear un modelo conceptual inicial.
Una clase para cada informacin que vaya a ser
tratada por el sistema software.
De la especificacin del diccionario se extraen:
atributos, asociaciones, responsabilidades, restricciones
Modelo de requisitos
Anlisis de requerimientos
fabricado mediante
Producto Plantilla de Produccion
1..*
es solicitado en
base de
0..* 0..*
1..*
realizado por
Cliente
Prototipo Inicial
Utilizar los casos de uso.
Incluye las interfaces de usuario
Sirve para validar los requisitos: analista y usuarios
llegan a un acuerdo sobre la funcionalidad y
vocabulario.
Prototipo desechable
Fcil de construir con herramientas visuales.
MODELO DEL ANALISIS
Objetivo:
A partir de los casos de uso obtener el diseo
preliminar del sistema que deber ser refinado
en el modelo del diseo.
Nivel de abstraccin ms alto que en el diseo.
Visin ideal del sistema.
Se define una arquitectura del sistema.
Llegar al sistema final de forma incremental,
mediante evolucin de prototipos.
MODELO DEL ANALISIS
:Sistema
: Cajero
introducirItem(upc,cantidad)
finalizarVenta()
hacerPago(cantidad)
PLANTILLAS DE CONTRATOS
DE OPERACION
Nombre: signatura de la operacin
Responsabilidades: qu debe hacer la operacin
Tipo: clase controlador que realiza la operacin
Caso de uso: nombre del caso de uso al que pertenece
la operacin
Notas: requisitos no funcionales
Excepciones: casos excepcionales que debe detectar
Salidas: salidas fuera del sistema, sin tener en cuenta
las salidas por pantalla
Precondiciones: condiciones que han de cumplirse
para realizar la operacin
Postcondiciones: estado del sistema despus de
realizar la operacin
Requisitos no funcionales
Comprar Productos
Cajero Cliente
Registrar Productos
Casos de Uso
Inicia
Gerente
Gestion Usuarios
Administrador
Sistema
Modelo
Conceptual Registra venta de
Describe
0..1
0..n
Tienda Almacena 1
Item
Lineas Venta direccion
cantidad nombre 1 0..n
0..n
1..n
Contenidas en
1
capturada en Iniciado por
Venta TPV Gerente
1 1 1 1
1 1
1
iniciada por Registra Ventas
pagado por
1
1
1
Cliente Cajero
Pago
Caso de uso Comprar productos
:Sistema
: Cajero
introducirItem(upc,cantidad)
Operacion
finalizarVenta()
Operacion
hacerPago(cantidad)
Operacion
CONTRATOS
Diagrama de Secuencia del Sistema
(Caso de Uso Comprar Productos)
:Sistema
: Cajero
Terminar Venta ()
eventos del
sistema
Plantilla de un Contrato de
Operacin
Nombre: signatura de la operacin
Responsabilidades: qu debe hacer la operacin
Tipo: clase controlador que realiza la operacin
Caso de uso: nombre del caso de uso al que pertenece la operacin
Notas: requisitos no funcionales
Excepciones: casos excepcionales que debe detectar
Salidas: salidas fuera del sistema, sin tener en cuenta las salidas por pantalla
Precondiciones: condiciones que han de cumplirse para realizar la operacin
Postcondiciones: estado del sistema despus de realizar la operacin
Contrato Introducir producto
4: esp:= especificacion(cup)
7: crear(esp,cant)
3: crear()
: Catalogo 8: add(lv)
Productos
lv : Lineas
5: esp:= find(cup) Venta
: Lineas
Venta
:
Producto
Diagramas de Interaccin