Clase 16, 6/11/2007

  • 2,003 views
Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
2,003
On Slideshare
0
From Embeds
0
Number of Embeds
3

Actions

Shares
Downloads
64
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Metodologías de Análisis Clase 16 – 06/11/2007
  • 2. Caso de uso Estimar Fondos Disponibles por Semana
    • Diagrama de colaboración (de la realización del escenario del caso de uso)
  • 3. 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
  • 4. Caso de uso Estimar Fondos Disponibles por Semana
    • Ítem 1:
      • El miembro del staff quiere calcular los fondos disponibles para la semana
      • En el diagrama de colaboración se modela por el mensaje
        • 1: solicitar estimación de fondos disponibles por semana
      • desde Miembro Staff MSG a : Clase Interfaz Usuario , una instancia de Clase Interfaz Usuario
  • 5. 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 mensaje
        • 2: transferir solicitud
      • Ahora se determinan cuatro estimaciones separadas mediante : Clase Estimar Fondos por Semana
  • 6. 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 mensaje
        • 3: requerir retornos estimados de inversiones por semana
      • desde : Clase Estimar Fondos por Semana , a : Clase Inversión seguido por el mensaje
        • 4: retornar retorno semanal estimado de inversiones
      • en la otra dirección
  • 7. 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 mensaje
        • 5: requerir gastos operacionales estimados por semana
      • desde : Clase Estimar Fondos por Semana , a : Clase Aplicación MSG seguido por el mensaje
        • 6: retornar gastos operacionales estimados por semana
      • en la otra dirección
  • 8. Caso de uso Estimar Fondos Disponibles por Semana
    • Ítem 5:
      • En los pasos 3, 4 y 5 del escenario, se determinan dos estimaciones
        • Las subvenciones estimadas para la semana
        • Los pagos estimados por semana
      • Esto se modela por el mensaje
        • 7: pedir subvenciones y pagos estimados por semana
      • desde : Clase Estimar Fondos por Semana , a : Clase Hipoteca y por el mensaje
        • 8: retornar subvenciones y pagos estimados por semana
      • en la otra dirección
  • 9. Caso de uso Estimar Fondos Disponibles por Semana
    • Ítem 6:
      • Ahora se desarrollan los cálculos aritméticos del paso 6 del escenario
      • Esto 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álculo
      • El resultado del cálculo se almacena en : Clase Aplicación MSG mediante el mensaje
        • 10: transferir cantidad estimada disponible por semana
  • 10. 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 mensaje
        • 11: imprimir cantidad estimada disponible
      • desde : Clase Aplicación MSG a : Clase Reporte Fondos Estimados
  • 11. 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 mensajes
        • 12: enviar mensaje de éxito
        • 13: enviar mensaje de éxito
        • 14: enviar mensaje de transferencia exitosa
        • 15: mostrar mensaje de éxito
  • 12. 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.
  • 13. 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
  • 14. 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)
  • 15. Diagramas de interacción
    • La fortaleza del diagrama de secuencia es que muestra el flujo de mensajes y su orden sin ambigüedades
      • Cuando 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 clases
      • Cuando los desarrolladores se concentran en las clases, un diagrama de colaboración es más útil que el diagrama de secuencia equivalente
  • 16. Caso de uso Administrar un Activo
    • Caso de uso
    Miembro staff MSG Sistema Fundación MSG Administrar un activo Deudores
  • 17. Caso de uso Administrar un Activo
    • Descripción de caso de uso
    Descripción Este 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 paso a paso 1,. Agregar, modificar o eliminar una inversión o hipoteca, o actualizar el ingreso semanal de los deudores.
  • 18. Caso de uso Administrar un Activo
    • Diagrama de clases mostrando las clases que realizan este caso de uso
    Clase Inversión Clase Hipoteca Clase Administrar un Activo Clase Interfaz Usuario Miembro staff MSG Deudores En algunos escenarios, los deudores le indican al miembro del staff sus Ingresos actuales semanales
  • 19. Caso de uso Administrar un Activo
    • Un escenario del caso de uso
    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
  • 20. Caso de uso Administrar un Activo
    • Diagrama de colaboración de la realización del escenario del caso de uso
    Clase Inversión Clase Hipoteca Clase Administrar un Activo Clase Interfaz Usuario Miembro staff MSG Deudores 3 .- Actualizar impuesto y fecha 1.- Actualizar impuesto bienes raíces anuales 2 .- Transferir datos 4 .- Enviar mensaje de éxito 5 .- Enviar mensaje de éxito 6 .- Mostrar mensaje de éxito
  • 21. Caso de uso Administrar un Activo
    • El objeto : Clase Inversión no tiene un rol activo en este diagrama de colaboración
      • Este escenario no involucra una inversión, sólo un hipoteca
    • Tampoco el actor Deudores tiene un rol activo
  • 22. 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)
  • 23. Caso de uso Administrar un Activo
    • Un escenario diferente del caso de uso
    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 semanal 2.- El sistema actualiza la fecha en la cual el ingreso fue cambiado por última vez
  • 24. 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 Activo Clase Interfaz Usuario 3 .- Actualizar ingreso y fecha 1.- Actualizar ingreso semanal 2 .- Transferir datos 4 .- Enviar mensaje de éxito 5 .- Enviar mensaje de éxito 6 .- Mostrar mensaje de éxito
  • 25. 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 MSG
      • Esto se indica en la nota del diagrama de colaboración
  • 26. 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)
  • 27. Caso de uso Administrar un Activo
    • Se presentaron dos escenarios diferentes del mismo caso de uso
    • El caso de uso es el mismo
      • El diagrama de clases también es el mismo
    • Sin embargo, los diagrama de colaboración (y secuencia) reflejan las diferencias entre los dos escenarios
  • 28. 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ú revisado
    Menú 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
  • 29. Caso de uso Actualizar los gastos operacionales anuales
    • Diagrama de clases
    Clase Aplicación MSG Clase Interfaz Usuario Miembro staff MSG
  • 30. Caso de uso Actualizar los gastos operacionales anuales
    • Diagrama de colaboración de la realización de un escenario del caso de uso
    Clase Aplicación MSG Clase Interfaz Usuario Miembro staff MSG 1.- Actualizar gastos anuales 2 .- Actualizar gastos y fecha 3 .- Enviar mensaje de éxito 4 .- Mostrar mensaje de éxito
  • 31. Caso de uso Actualizar los gastos operacionales anuales
    • Diagrama de secuencia equivalente
  • 32. Caso de uso Producir un reporte
    • Caso de uso
    Miembro staff MSG Sistema Fundación MSG Producir un reporte
  • 33. Caso de uso Producir un reporte
    • Descripción del caso de uso
    Descripción Este 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 paso 1.- 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 demanda El 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
  • 34. Caso de uso Producir un reporte
    • Diagrama de clases
    Clase Inversión Clase Hipoteca Clase Reporte Hipoteca Clase Interfaz Usuario Miembro staff MSG Clase Reporte Inversión
  • 35. 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
  • 36. Caso de uso Producir un reporte
    • Diagrama de colaboración
      • Sólo hipotecas (no hay inversiones)
    Clase Inversión Clase Hipoteca Clase Reporte Hipoteca Clase Interfaz Usuario Miembro 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
  • 37. Caso de uso Producir un reporte
    • Diagrama de secuencia
  • 38. 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
  • 39. Caso de uso Producir un reporte
    • Diagrama de colaboración
      • Sólo inversiones
    Clase Inversión Clase Hipoteca Clase Reporte Hipoteca Clase Interfaz Usuario Miembro 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
  • 40. Caso de uso Producir un reporte
    • Diagrama de secuencia para el segundo escenario
  • 41. Incrementando el diagrama de clases
    • Al realizar varios casos de uso
      • Las interrelaciones entre clases se manifiestan
    • En forma acorde, ahora se combinarán los diagrama de clases de las realizaciones
  • 42. Combinando la realización de los diagramas de clases
  • 43. Cuarta iteración del diagrama de clases
    • Quinta iteración + realización del diagrama de clases
  • 44. Más detalles
    • En este momento de construye el SPMP
    • Se usan las tarjetas CRC para revisar las clases de entidad
  • 45. Documento de especificación
    • El Proceso Unificado es orientado al caso de uso
      • Los 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
  • 46. Documento de especificación
    • Un escenario es una secuencia específica de ejecución
    • El cliente puede apreciar cómo el producto funciona ya sea
      • de un caso de uso y sus escenarios, o
      • de un prototipo
    • La diferencia es
      • Los casos de uso se refinan sucesivamente, agregando más información cada vez, mientras que
      • El prototipo rápido se descarta
  • 47. Documento de especificación
    • Sin embargo, se requiere un prototipo rápido de la interfaz de usuario
      • Se requieren pantallas y reportes (no un prototipo completo)
  • 48. Actores y casos de uso
    • Para encontrar actores, considerar cada rol en el cual un individuo puede interactuar con el producto de software
      • Ejemplo: Postulantes , Deudores
    • Actores no son individuos
      • Hay roles que juegan estos individuos
    • Encontrar todos los roles diferentes que realiza cada usuario
      • De esta lista de roles, extraer los actores
  • 49. Actores y casos de uso
    • En el proceso unificado
      • El 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ún
      • La palabra “trabajador” usualmente se refiere a un empleado
  • 50. Actores y casos de uso
    • Dentro de un contexto de negocios, encontrar los roles es fácil
      • Estos se muestran dentro del modelo de caso de uso de negocios
    • Para encontrar los actores
      • Encontrar el subconjunto del modelo de caso de uso de negocios que corresponde al modelo de caso de uso de los requerimientos
  • 51. 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
  • 52. 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 uso
      • Encontrar los actores
      • Luego construir los casos de uso
  • 53. OOA
    • Utilizar herramientas de diagramación (ArgoUML, Dia, Poseidon for UML, etc.)
    • No mezclar con OOD
    • No asignar aún métodos a las clases
      • Reasignar métodos a las clases durante refinamiento sucesivo es esfuerzo perdido