Está en la página 1de 30

CÁTEDRA DE DISEÑO DE SISTEMAS

DE INFORMACIÓN

Realizaciones de CU – Diagrama de
Secuencia y Diagrama de Clases

3/24/2023 Judith Meles – Laura Covaro 1


Diagramas en UML 2.0 CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

De Clases
Modelan
Modelan Clases De Paquetes
Estructura De Estructura Compuesta
De Componentes
De Despliegue
Modela
Objetos De Objetos
Diagramas
De Casos de Uso
Modelan De Actividad
Clases
De Máquina de Estados

Modelan De Comunicación
Comportamiento De Secuencia
De Interacción
(Modelan Objetos) De Timing
De Descripción de Interacción
3/24/2023 Judith Meles 2
Proceso de Desarrollo y sus Artefactos CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Modelado de Modelo
Negocios del Negocios
Cada
workflow Modelo
Requerimientos
está de Requerimientos
asociado
con uno o
más Análisis Modelo
modelos. Análisis Los diagramas de UML
construyen las vistas en
cada modelo
Diseño Modelo Modelo
Modelode
Diseño Despliegue
Despliegue

Implementación Modelo
Impl.

Modelo de
Modelo
Prueba Prueba
Prueba
Workflow de Análisis como proceso… CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Salida
Entrada

Workflow
de Análisis

3/24/2023 Judith Meles 4


¿Cómo construimos el Modelo de Análisis?
CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Herramienta: Diagrama
Vista Estática
de Clases
Realizaciones de
Casos de Uso de Herramienta: Diagrama
Análisis de Comunicación
Vista Dinámica
Herramienta Diagrama
de Secuencia
Herramienta: Diagrama de Clases
Modelo de Clases de Análisis
Análisis Herramienta: Diagrama de
Máquina de Estados

Herramienta: Diagrama de
Paquetes de Análisis
Paquetes

Descripción de la
Arquitectura
3/24/2023 Judith Meles 5
¿Cómo construimos el Modelo de Análisis?
CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Herramienta: Diagrama
Vista Estática
de Clases
Realizaciones de
Casos de Uso de Herramienta: Diagrama
Análisis de Comunicación
Vista Dinámica
Herramienta Diagrama
de Secuencia
Herramienta: Diagrama de Clases
Modelo de Clases de Análisis
Análisis Herramienta: Diagrama de
Máquina de Estados

Herramienta: Diagrama de
Paquetes de Análisis
Paquetes

Descripción de la
Arquitectura
3/24/2023 Judith Meles 6
Clases del Análisis CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Clase de Entidad: modela información que podría ser persistente y que


puede sobrevivir a una ejecución de un sistema.

Clase límite o frontera (Boundary) modela el comportamiento e


información que es dependiente de la frontera del sistema con el
Clases de ambiente. Modela todo lo que concierne a cualquier vínculo sistema-actor
Fabricación
Pura Clase de control modela funcionalidad que operar sobre varios objetos
diferentes de entidad, haciendo algunos cálculos y retornando el resultado
al objeto de boundary.
Contiene comportamiento de la lógica de negocio definida en un caso de
uso.
Tiene responsabilidades de coordinación de la ejecución de un caso de uso
y funciona como intermediario entre las clases de interfaz y las de control.
3/24/2023 Judith Meles 7
CÁTEDRA DE DISEÑO DE SISTEMAS
Visibilidad DE INFORMACIÓN

Para que un objeto le


Trabajaremos con 2
envíe un mensaje a
tipos de visibilidad
otro, debe verlo.

Visibilidad de Visibilidad de
atributos. parámetros

En la estructura se En la estructura se
modela con asociación, modela con
agregación, composición dependencia
Realizaciones de CU: Vista Dinámica – CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Diagrama de Secuencia

Laura Covaro
Realizaciones de CU: Vista Dinámica – CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Diagrama de Secuencia

Laura Covaro
Realizaciones de CU: Vista Dinámica – CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Diagrama de Secuencia

Laura Covaro
Realizaciones de CU: Vista Dinámica – CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Diagrama de Secuencia
Nombre del Use Case: Registrar Festival ID: 05
Prioridad: Alta Media Baja
CÁTEDRA DE DISEÑO DE SISTEMAS
Complejidad: Simple (1) Mediano (3) Complejo (5) Muy Complejo (8) Extremadamente Complejo (13)
DE INFORMACIÓN
Actor Principal: Responsable Festival (RF) Actor Secundario: no aplica
Caso de Tipo de Use Case: Concreto Abstracto

Estudio: Objetivo: Registrar los datos de un festival y los días que durará.

Precondiciones: no aplica
Festival de Flujo Básico (Curso Normal)
Folklore – CU 1. RF: selecciona opción Registrar Festival

Registrar 2.
3.
SI: solicita se ingresen los siguientes datos para el festival: año de edición, fecha de inicio, nombre
RF: ingresa los datos
Festival 4. SI: valida que no haya registrado en el sistema un festival con el mismo nombre y fecha de inicio, para el año
de edición ingresado y no hay.
5. SI: solicita se ingresen los demás datos para el festival: descuento por venta anticipada y porcentaje de
devolución por anulación
6. RF: ingresa los datos
7. SI: para cada día que integrará el festival se solicita se ingrese: fecha, hora de presentación, fecha límite para
anulación de entrada y fecha de vencimiento de venta anticipada
8. RF: ingresa los datos requeridos
9. SI: valida que no haya superposición de fechas para los días del festival ingresados y no hay.
10. SI: solicita confirmación para registrar el festival con sus días
11. RF: confirma la registración.
12. SI: registra el festival como no vigente y registra cada uno de los días del festival.
Flujos Alternativos
A1. Existe festival registrado con los mismos datos.
A2. Existe superposición de fecha de días de festival.
A3. NO se confirma registración del festival.
Observaciones:
1. RF puede cancelar la operación en cualquier momento seleccionado la opción correspondiente.

Laura Covaro
CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Realización de
CU Registrar
Festival:
Vista Dinámica -
Diagrama de
Secuencia

Laura Covaro
CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Realización de
CU Registrar
Festival:
Vista Dinámica -
Diagrama de
Secuencia

Laura Covaro
CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Realización de
CU Registrar
Festival:
Vista Dinámica -
Diagrama de
Secuencia

Laura Covaro
CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Realización de
CU Registrar
Festival:
Vista Dinámica -
Diagrama de
Secuencia

Laura Covaro
CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Realización de
CU Registrar
Festival:
Vista Dinámica -
Diagrama de
Secuencia

Laura Covaro
CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Realización de
CU Registrar
Festival:
Vista Dinámica -
Diagrama de *
Secuencia
Realización de CU Registrar Festival: Flujo Normal CÁTEDRA DE DISEÑO DE SISTEMAS
Vista Estática con Diagrama de Clases DE INFORMACIÓN

Vista Dinámica con Diagrama de Secuencia

Laura Covaro
Realización de CU Registrar Festival: Flujo Normal
Vista Estática con Diagrama de Clases CÁTEDRA DE DISEÑO DE SISTEMAS
Vista Dinámica con Diagrama de Secuencia (con DE INFORMACIÓN

fragmentos)

Laura Covaro
Vista de la CÁTEDRA DE DISEÑO DE SISTEMAS
Estructura DE INFORMACIÓN

Vista de
Comportamiento
(Dinámica)

Judith Meles - Laura Covaro


Vista dinámica con Diagrama de
Comunicación
Vista dinámica con Diagrama de CÁTEDRA DE DISEÑO DE SISTEMAS
Secuencia DE INFORMACIÓN
¿Cómo se modela otro escenario? CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Realización de Caso de uso


de Análisis
Registrar Festival
Flujo: Existe festival
registrado con los mismos
datos
CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Realización de Caso de
uso de Análisis
Registrar Festival
Flujo: Existe festival
registrado con los
mismos datos
Realización de Caso de uso de Análisis CÁTEDRA DE DISEÑO DE SISTEMAS

Registrar Festival DE INFORMACIÓN

Flujo: Existe festival registrado con los mismos datos


class Domain Objects

«entity» «entity»
Festival DiaFestival
añoEdicion completa
descuentoVentaAnticipada fecha
fechaInicio fechaLimiteAnulacionEntrada
nombre fechaVtoVtaAnticipada «entity»
porcentajeDevolucionPorAnulacion horaPresentacion Actuación
vigente actualizarEstadoButaca() duracionActuacion
actualizarEstadoButaca()
bloquearButacaParaDiaFestival()
buscarButacasDisponibles()
buscarSectores()
diagramación 0..* horaInicio
numeroOrden CÁTEDRA DE DISEÑO DE SISTEMAS
buscarSectoresDisponibles() 1..* calcularCantPublicoPorTipoEntrada() getGrupoMusical()
contarAsistenciaPorDia()
contarAsistenciaTotal()
crearDiaFestival()
diaFestival calcularPorcentajeAsistencia()
contarCantGrupoMusical()
contarCantidadPublico() grupoMusical
DE INFORMACIÓN
cuantosDiasDura() estaDiagramado()
estaVigente() getDiagramacion()
existeFestival() getFechaVencimientolAnticipada() 1
getDiaFestival() new()
obtenerPrecioParaSectorYTipoDeEntrada() «entity»
getFechaFinFestival() GrupoMusical
mostrarDiasFestival() verificarVtoFechaAnticipada()
new() 1 cantIntegrantes
obtenerFechaVencimientoParaDia() disponibilidadButaca díaFestival descripcion
validarFechaParaVtaAnticipada() nombre

«entity» getNombre()
precioEntrada
Entrada
1..*
codigoBarras
fechaVenta «entity»
«entity» 0..* precioEntrada 1 PrecioEntrada
disponibilidadButaca monto
DisponibilidadButaca numeroTicket monto
anularVenta() bloquearDisponibilidadButaca() esSectorYTipo()
estaDisponible() confirmarOcupacionButaca()
1 getMonto()
getButaca() getDisponibilidadButaca() getTipoEntrada()
setEstado() liberarDisponibilidadButaca()
validarFecha()
venderButaca() tipoEntrada 1

butaca

1
«entity»
Butaca puntoVenta 1 nombre
«entity»
TipoEntrada
descripcion
Modelo de
numero
getNumero()
getSectorFila()
setNumero()
nombre
numero
«entity»
PuntoVenta
getDescripcion()
getNombre()
setDescripcion()
setNombre()
Dominio
1..* getCentroVenta()
butaca getNombre() puntoVenta
0..*
«entity»
estado CentroDeVenta
1
Métodos de
«entity» seteo en la nombre
Estado clase Estado getNombre()
sector

Realizaciones
descripcion getPtoVta()
nombre 1
esDisponible() «entity»
getDescripcion() «entity» Sector
getNombre() Fila 1..*
colorIdentificatrio
setDescripcion() fila
numero letraIdentificatoria
setNombre() nombre
contarButacas()
ubicacion

de Casos de
getButaca()
getSector() contarFilas()
getColor()
getFilas()
getNombre()

Nombre del Use Case: Registrar Festival


Prioridad:
Complejidad: Simple (1)
Alta
Mediano (3)
Media
Complejo (5) Muy Complejo (8)
ID: 05
Baja
Extremadamente Complejo (13)
Uso
Actor Principal: Responsable Festival (RF) Actor Secundario: no aplica
Tipo de Use Case: Concreto Abstracto
Objetivo: Registrar los datos de un festival y los días que durará.

Precondiciones: no aplica
Escenarios
Flujo Básico (Curso Normal)
1. RF: selecciona opción Registrar Festival
de Casos
2.
3.
SI: solicita se ingresen los siguientes datos para el festival: año de edición, fecha de inicio, nombre
RF: ingresa los datos
de Uso
4. SI: valida que no haya registrado en el sistema un festival con el mismo nombre y fecha de inicio, para el año
de edición ingresado y no hay.
5. SI: solicita se ingresen los demás datos para el festival: descuento por venta anticipada y porcentaje de
devolución por anulación
6. RF: ingresa los datos
7. SI: para cada día que integrará el festival se solicita se ingrese: fecha, hora de presentación, fecha límite para
anulación de entrada y fecha de vencimiento de venta anticipada
8. RF: ingresa los datos requeridos
9. SI: valida que no haya superposición de fechas para los días del festival ingresados y no hay.
10. SI: solicita confirmación para registrar el festival con sus días
11. RF: confirma la registración.
12. SI: registra el festival como no vigente y registra cada uno de los días del festival.
Flujos Alternativos
A1. Existe festival registrado con los mismos datos.
A2. Existe superposición de fecha de días de festival.
A3. NO se confirma registración del festival.
Observaciones:
1. RF puede cancelar la operación en cualquier momento seleccionado la opción correspondiente.
Judith Meles - Laura Covaro
Repasando lo que vimos… CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Diagramas de UML 2.0


PUD como contexto Workflow de Análisis

Modelo de Análisis Elementos del Diagrama de Realizaciones de CU


Secuencia
3/24/2023 Judith Meles 28
Sobre el Diagrama de Secuencia vimos estos CÁTEDRA DE DISEÑO DE SISTEMAS

elementos para modelar… DE INFORMACIÓN

Línea de vida

Objetos Foco de
control

Fragmentos
de interacción

Judith Meles - Laura Covaro


CÁTEDRA DE DISEÑO DE SISTEMAS
DE INFORMACIÓN

Finalmente…

Muchas
Gracias!!!

También podría gustarte