clase 16, 6/11/2007
TRANSCRIPT
Metodologías de Análisis
Clase 16 – 06/11/2007
Caso de uso Estimar Fondos Disponibles por Semana
Diagrama de colaboración (de la realización del escenario del caso de uso)
Caso de uso Estimar Fondos Disponibles por Semana
El diagrama de colaboración muestra los objetos así como los mensajes, numerados en el orden en que se envían en el escenario específico
Caso de uso Estimar Fondos Disponibles por Semana
Ítem 1:El miembro del staff quiere calcular los fondos
disponibles para la semanaEn el diagrama de colaboración se modela por
el mensaje1: solicitar estimación de fondos disponibles por
semana
desde Miembro Staff MSG a : Clase Interfaz Usuario, una instancia de Clase Interfaz Usuario
Caso de uso Estimar Fondos Disponibles por Semana
Ítem 2:Este pedido se pasa a : Clase Estimar Fondos por
Semana, una instancia de la clase de control que ejecuta el cálculo
Esto se modela por el mensaje2: transferir solicitud
Ahora se determinan cuatro estimaciones separadas mediante : Clase Estimar Fondos por Semana
Caso de uso Estimar Fondos Disponibles por Semana
Ítem 3:En el paso 1 del escenario, el retorno estimado anual
en las inversiones se suma para cada inversión y el resultado se divide por 52
Esta resta del retorno semanal se modela por el mensaje3: requerir retornos estimados de inversiones por semana
desde : Clase Estimar Fondos por Semana, a : Clase Inversión seguido por el mensaje4: retornar retorno semanal estimado de inversiones
en la otra dirección
Caso de uso Estimar Fondos Disponibles por Semana
Ítem 4:En el paso 2 del escenario, los gastos operacionales
semanales se estiman tomando los gastos operacionales anuales y dividiendo por 52
La resta de los gastos semanales se modela por el mensaje5: requerir gastos operacionales estimados por semana
desde : Clase Estimar Fondos por Semana, a : Clase Aplicación MSG seguido por el mensaje6: retornar gastos operacionales estimados por semana
en la otra dirección
Caso de uso Estimar Fondos Disponibles por Semana
Ítem 5:En los pasos 3, 4 y 5 del escenario, se determinan dos
estimacionesLas subvenciones estimadas para la semana
Los pagos estimados por semana
Esto se modela por el mensaje7: pedir subvenciones y pagos estimados por semana
desde : Clase Estimar Fondos por Semana, a : Clase Hipoteca y por el mensaje8: retornar subvenciones y pagos estimados por semana
en la otra dirección
Caso de uso Estimar Fondos Disponibles por Semana
Ítem 6:Ahora se desarrollan los cálculos aritméticos del paso 6
del escenarioEsto se modela por el mensaje
9: calcular cantidad estimada disponible por semana
Esto es una auto-llamada: Clase Estimar Fondos por Semana, se llama a sí misma
para realizar el cálculoEl resultado del cálculo se almacena en : Clase
Aplicación MSG mediante el mensaje10: transferir cantidad estimada disponible por semana
Caso de uso Estimar Fondos Disponibles por Semana
Ítem 7:En el paso 7 del escenario se imprime el
resultado
Esto se modela por el mensaje11: imprimir cantidad estimada disponible
desde : Clase Aplicación MSG a : Clase Reporte Fondos Estimados
Caso de uso Estimar Fondos Disponibles por Semana
Ítem 8:Finalmente, un ACK se envía al miembro del
staff MSG indicando que la tarea se completó exitosamente
Esto se modela por los mensajes12: enviar mensaje de éxito
13: enviar mensaje de éxito
14: enviar mensaje de transferencia exitosa
15: mostrar mensaje de éxito
Caso de uso Estimar Fondos Disponibles por Semana
Ningún cliente aprobará el documento de especificación sin entenderlo
En forma acorde, se necesita una descripción escrita del diagrama de colaboración, el flujo de los eventos.
Caso de uso Estimar Fondos Disponibles por Semana
El flujo de los eventos del diagrama de colaboración de la realización del escenario del caso de uso
Un miembro del staff de la fundación desea determinar los fondos disponibles para hipotecas esta semana (1,2). El sistema estima el retorno de inversiones para la semana (3,4), los gatos operacionales para la semana (5, 6) y las subvenciones y pagos para la semana (7, 8). Entonces estima (9), almacenas (10) e imprime (11-15) los fondos disponibles para la semana
Caso de uso Estimar Fondos Disponibles por Semana
Diagrama de secuencia equivalente al diagrama de colaboración (de la realización del escenario del casi de uso)
Diagramas de interacción
La fortaleza del diagrama de secuencia es que muestra el flujo de mensajes y su orden sin ambigüedadesCuando el foco es la transferencia de información, un
diagrama de secuencia es superior a un diagrama de colaboración
Un diagrama de colaboración es similar a un diagrama de clasesCuando los desarrolladores se concentran en las
clases, un diagrama de colaboración es más útil que el diagrama de secuencia equivalente
Caso de uso Administrar un Activo
Caso de uso
Miembro
staff MSG
Sistema
Fundación MSG
Administrar
un activo
Deudores
Caso de uso Administrar un Activo
DescripciónEste caso de uso permite a un miembro del staff agregar y eliminar activos y administrar el
portafolio de activos (inversiones e hipotecas): Administrar una hipoteca incluye actualizar el ingreso semanal de la paraje que ha solicitado dinero de la fundación
Descripción de caso de uso
Descripción paso a paso1,. Agregar, modificar o eliminar una inversión o hipoteca, o actualizar el ingreso semanal de
los deudores.
Clase Inversión
Clase Hipoteca
Clase Administrar
un Activo
Caso de uso Administrar un Activo
Diagrama de clases mostrando las clases que realizan este caso de uso
Clase Interfaz
UsuarioMiembro
staff MSG
Deudores
En algunos escenarios,
los deudores le indican al
miembro del staff sus
Ingresos actuales semanales
Caso de uso Administrar un Activo
Un miembro del staff quiere actualizar el impuesto anual de bienes raíces a una casa para la cual la fundación entregó una hipoteca.
1.- El miembro del staff ingresa el nuevo valor del impuesto de bienes raíces
2.- El sistema actualiza la fecha en la cual el impuesto de bienes raíces fue cambiado por última vez
Un escenario del caso de uso
Clase Inversión
Clase Hipoteca
Clase Administrar
un Activo
Caso de uso Administrar un Activo
Diagrama de colaboración de la realización del escenario del caso de uso
Clase Interfaz
UsuarioMiembro
staff MSG
Deudores
3.- Actualizar impuesto
y fecha1.- Actualizar impuesto
bienes raíces anuales2.- Transferir datos
4.- Enviar mensaje
de éxito
5.- Enviar mensaje
de éxito6.- Mostrar mensaje
de éxito
Caso de uso Administrar un Activo
El objeto : Clase Inversión no tiene un rol activo en este diagrama de colaboraciónEste escenario no involucra una inversión, sólo
un hipoteca
Tampoco el actor Deudores tiene un rol activo
Caso de uso Administrar un Activo
Diagrama de secuencia equivalente al diagrama de colaboración (de la realización del escenario del caso de uso)
Caso de uso Administrar un Activo
Hay un cambio del ingreso semanal de una pareja que ha pedido dinero de la fundación. Ellos desean tener su ingreso actualizado en los registros de la fundación por un miembro del staff para que sus pagos de la hipoteca sean calculados correctamente
1.- El miembro del staff ingresa el nuevo valor del ingreso semanal2.- El sistema actualiza la fecha en la cual el ingreso fue cambiado por
última vez
Un escenario diferente del caso de uso
Caso de uso Administrar un Activo
Diagrama de colaboración de la realización del escenario del caso de uso
Miembro
staff MSG
Deudores
Los deudores le indican al
miembro del staff sus
ingresos actuales semanales
Clase Inversión
Clase Hipoteca
Clase Administrar
un ActivoClase Interfaz
Usuario
3.- Actualizar ingreso
y fecha1.- Actualizar ingreso
semanal2.- Transferir datos
4.- Enviar mensaje
de éxito
5.- Enviar mensaje
de éxito6.- Mostrar mensaje
de éxito
Caso de uso Administrar un Activo
A solicitud de los deudores, el miembro del staff actualiza los ingresos semanales de la pareja
El escenario es iniciado por Deudores
Sus datos son ingresados al producto por el Miembro de Staff MSGEsto se indica en la nota del diagrama de
colaboración
Caso de uso Administrar un Activo
Diagrama de secuencia equivalente al diagrama de colaboración (de la realización del escenario del caso de uso)
Caso de uso Administrar un Activo
Se presentaron dos escenarios diferentes del mismo caso de uso
El caso de uso es el mismoEl diagrama de clases también es el mismo
Sin embargo, los diagrama de colaboración (y secuencia) reflejan las diferencias entre los dos escenarios
Caso de uso Administrar un Activo
La clase Clase Interfaz Usuario aparece en todas las realizaciones
La misma pantalla será usada para todos los comandos del sistema
Menú revisadoMenú
1.- Estimar fondos para la semana
2.- Administrar una hipoteca
3.- Administrar una inversión
3.- Actualizar gastos operacionales anuales estimados
4.- Reporte de hipotecas
5.- Reporte de inversiones
6.- Terminar
Clase Aplicación MSG
Caso de uso Actualizar los gastos operacionales anuales
Diagrama de clases
Clase Interfaz
UsuarioMiembro
staff MSG
Clase Aplicación MSG
Caso de uso Actualizar los gastos operacionales anuales
Diagrama de colaboración de la realización de un escenario del caso de uso
Clase Interfaz
UsuarioMiembro
staff MSG
1.- Actualizar gastos
anuales2.- Actualizar gastos y fecha
3.- Enviar mensaje
de éxito4.- Mostrar mensaje
de éxito
Caso de uso Actualizar los gastos operacionales anuales
Diagrama de secuencia equivalente
Caso de uso Producir un reporte
Caso de uso
Miembro
staff MSG
Sistema
Fundación MSG
Producir
un reporte
Caso de uso Producir un reporte
Descripción del caso de uso
DescripciónEste caso de uso permite a un miembro de la fundación imprimir un listado de todas las
inversiones o de todas las hipotecas
Descripción paso a paso1.- Los siguientes reportes deben ser generados:1.1.- Reportes de inversión – impreso a demanda
El sistema imprime una lista de todas las inversiones. Para cada inversión se imprimen los atributos: número de ítem, nombre de ítem, retorno anual esperado, fecha última actualización retorno anual esperado
1.2.- Reportes de hipotecas - impreso a demandaEl sistema imprime un listado de todas las hipotecas. Para cada hipoteca se imprimen los siguientes atributos: número de cuenta, nombre de hipotecario, precio original de la casa, fecha de la hipoteca, pago C & I, ingreso combinado bruto actual, fecha última actualización ingreso combinado bruto actual, impuesto anual bienes raíces, fecha última actualización impuesto anual bienes raíces, prima anual de seguro propietario, fecha última actualización prima anual de seguro propietario
Caso de uso Producir un reporte
Diagrama de clases
Clase Inversión
Clase HipotecaClase Reporte
Hipoteca
Clase Interfaz
UsuarioMiembro
staff MSG
Clase Reporte
Inversión
Caso de uso Producir un reporte
Un escenario del caso de uso
Un miembro del staff quiere imprimir un listado de todas las hipotecas
1.- El miembro del staff requiere un reporte listando todas las hipotecas
Caso de uso Producir un reporte
Diagrama de colaboraciónSólo hipotecas
(no hay inversiones)
Clase Inversión
Clase HipotecaClase Reporte
Hipoteca
Clase Interfaz
UsuarioMiembro
staff MSG
Clase Reporte
Inversión
1.- Solicitar lista de hipotecas
3. Imprimir lista de hipotecas
4.- Enviar mensaje
de éxito
6.- Mostrar mensaje
de éxito
2.- Transferir solicitud 5.- Enviar mensaje
de éxito
Caso de uso Producir un reporte
Diagrama de secuencia
Caso de uso Producir un reporte
Un segundo escenario del caso de uso, listando todas las inversiones
Un miembro del staff quiere imprimir un listado de todas las inversiones
1.- El miembro del staff requiere un reporte listando todas las inversiones
Caso de uso Producir un reporte
Diagrama de colaboraciónSólo
inversiones
Clase Inversión
Clase HipotecaClase Reporte
Hipoteca
Clase Interfaz
UsuarioMiembro
staff MSG
Clase Reporte
Inversión
1.- Solicitar lista de
Inversiones
3.-Imprimir lista de inversiones
4.- Enviar mensaje
de éxito
6.- Mostrar mensaje
de éxito
5.-Enviar mensaje de éxito 2.- Transferir solicitud
Caso de uso Producir un reporte
Diagrama de secuencia para el segundo escenario
Incrementando el diagrama de clases
Al realizar varios casos de usoLas interrelaciones entre clases se manifiestan
En forma acorde, ahora se combinarán los diagrama de clases de las realizaciones
Combinando la realización de los diagramas de clases
Cuarta iteración del diagrama de clases
Quinta iteración + realización del diagrama de clases
Más detalles
En este momento de construye el SPMP
Se usan las tarjetas CRC para revisar las clases de entidad
Documento de especificación
El Proceso Unificado es orientado al caso de usoLos casos de usos y los artefactos derivados de estos,
reemplazan el documento tradicional de especificación textual
El cliente debe ver cada caso de uso y los artefactos asociados (diagramas y texto)Estos diagramas UML muestran más información y más
exacta que los documentos tradicionales de especificación
El conjunto de diagramas UML puede ser usado con un rol contractual
Documento de especificación
Un escenario es una secuencia específica de ejecución
El cliente puede apreciar cómo el producto funciona ya seade un caso de uso y sus escenarios, o
de un prototipo
La diferencia esLos casos de uso se refinan sucesivamente, agregando
más información cada vez, mientras que
El prototipo rápido se descarta
Documento de especificación
Sin embargo, se requiere un prototipo rápido de la interfaz de usuarioSe requieren pantallas y reportes (no un
prototipo completo)
Actores y casos de uso
Para encontrar actores, considerar cada rol en el cual un individuo puede interactuar con el producto de softwareEjemplo: Postulantes, Deudores
Actores no son individuosHay roles que juegan estos individuos
Encontrar todos los roles diferentes que realiza cada usuarioDe esta lista de roles, extraer los actores
Actores y casos de uso
En el proceso unificadoEl término trabajador se usa para indicar un rol
jugado por un individuo
En el proceso unificado Postulantes y Deudores son dos trabajadores distintos
En lenguaje comúnLa palabra “trabajador” usualmente se refiere a
un empleado
Actores y casos de uso
Dentro de un contexto de negocios, encontrar los roles es fácilEstos se muestran dentro del modelo de caso
de uso de negocios
Para encontrar los actoresEncontrar el subconjunto del modelo de caso
de uso de negocios que corresponde al modelo de caso de uso de los requerimientos
Actores y casos de uso
Para encontrar los actores:Construir el modelo de caso de uso de
negocios
Considerar sólo aquellas partes del modelo de negocios que correspondan al producto de software propuesto
Los actores en este subconjunto son los actores buscados
Actores y casos de uso
Dentro de un contexto de negocios encontrar caso de uso es fácil
Para cada rol, habrán uno o más casos de usoEncontrar los actores
Luego construir los casos de uso
OOA
Utilizar herramientas de diagramación (ArgoUML, Dia, Poseidon for UML, etc.)
No mezclar con OOD
No asignar aún métodos a las clasesReasignar métodos a las clases durante
refinamiento sucesivo es esfuerzo perdido