Clase 15, 24/10/2007

47
Metodologías de Análisis Clase 15 – 24/10/2007

Transcript of Clase 15, 24/10/2007

Page 1: Clase 15, 24/10/2007

Metodologías de Análisis

Clase 15 – 24/10/2007

Page 2: Clase 15, 24/10/2007

El modelo funcional inicial: fundación MSG

Recordar la iteración séptima del diagrama de caso de uso

Miembro

staff MSG Administrar

una hipoteca

Sistema

Fundación MSG

Administrar

Una inversión

Estimar fondos

disponibles

por semana

Actualizar

gastos operacionales

anuales estimados

Producir

un reporte

Deudores

Page 3: Clase 15, 24/10/2007

Caso de uso Administrar una Hipoteca

Un segundo escenario extendido

Un miembro del staff de la Fundación MSG quiere actualizar los bienes raíces anuales en una casa para la que la Fundación entregó una hipoteca

1.- El miembro del staff ingresa un nuevo valor del valor anual de bienes raíces

2.- El sistema actualiza la fecha en la cual los bienes raíces fueron cambiados por última vez

Alternativa posibleA. El miembro del staff ingresa un número de hipoteca

incorrecto

Page 4: Clase 15, 24/10/2007

Caso de uso Administrar una Hipoteca

Un segundo escenario extendido

Hay un cambio en el ingreso semanal de una pareja que recibió dinero de la fundación. Desean actualizar sus ingresos en los registros de la fundación por un miembro del staff para que los cálculos de los pagos sean correctos

1.- El miembro del staff ingresa el nuevo valor del ingreso semanal2.- El sistema actualiza la fecha en la cual el ingreso semanal fue

actualizado por última vez

Alternativas posiblesA. El miembro del staff ingresa un número de hipoteca incorrectoB. Los deudores no traen la documentación para justificar su nuevo

ingreso

Page 5: Clase 15, 24/10/2007

Caso de uso Estimar Fondos Disponibles por Semana

Un escenario posible

Un miembro del staff de la fundación quiere determinar los fondos disponibles para hipotecas esta semana

1.- Para cada inversión, el sistema extrae el retorno anual estimado de cada inversión. Suma los retornos y divide el resultado por 52 para obtener el ingreso estimado para la semana

2.- El sistema extrae los gastos operacionales anuales estimados y divide el resultado por 523.- Para cada hipoteca:

3.1 El sistema calcula la cantidad a pagar esta semana sumando los pagos de capital e interés a 1/52 de la suma del impuesto de bienes raíces y las primas por seguro del propietario

3.2 Calcula el 28% del ingreso bruto semanal de la pareja3.3 si el resultado del paso 3.1 es mayor que el resultado del paso 3.2 entonces determina el pago de la

hipoteca para la semana como el resultado del paso 3.2 y la cantidad de subsidio para esta semana como la diferencia entre el resultado del paso 3.1 y el resultado del paso 3.2

3.4 En caso contrario, toma el pago de la hipoteca para esta semana como el resultado del paso 3.1 y no hay subsidio esta semana

4 El sistema suma los pagos de hipotecas de los pasos 3.3 y 3.4 para obtener los pagos estimados totales para la semana

5 Suma los pagos de subsidios del paso 3.3 para obtener los pagos de subsidios estimados para la semana

6 El sistema suma los resultados de los pasos 1 y 4 y resta los resultados de los pasos 2 y 5. Este es el total disponible para hipotecas para la semana actual

7 El sistema imprime el total disponible para los nuevas hipotecas durantes la semana actual

Page 6: Clase 15, 24/10/2007

Caso de uso Producir un Reporte

Un escenario posible

Un miembro del staff quiere imprimir una lista con todas las hipotecas

1.- El miembro del staff solicita un reporte listando todas las hipotecas

Page 7: Clase 15, 24/10/2007

Caso de uso Producir un Reporte

Un escenario posible

Un miembro del staff quiere imprimir una lista con todas las inversiones

1.- El miembro del staff solicita un reporte listando todas las inversiones

Page 8: Clase 15, 24/10/2007

El diagrama de clases inicial

El objetivo del paso de modelamiento de entidades es extraer las clases de entidades, determinar su interrelaciones y encontrar sus atributos

Usualmente, la mejor manera es usar el método de extracción de sustantivos de dos pasos

Page 9: Clase 15, 24/10/2007

Extracción de sustantivos: Fundación MSG

Etapa 1: describir el sistema de información en un solo párrafoSe deben imprimir reportes semanales

mostrando cuánto dinero está disponible para hipotecas. Además, se deben imprimir a demanda listas de inversiones e hipotecas

Page 10: Clase 15, 24/10/2007

Extracción de sustantivos: Fundación MSG

Etapa 2: identificar los sustantivos en este párrafoSe deben imprimir reportes semanales

mostrando cuánto dinero está disponible para hipotecas. Además, se deben imprimir a demanda listas de inversiones e hipotecas

Los sustantivos son reporte, dinero, hipoteca, lista e inversión

Page 11: Clase 15, 24/10/2007

Extracción de sustantivos: Fundación MSG

Los sustantivos reporte y lista no son de larga vida, así que es improbable que sean clases de entidades (reporte seguramente se convertirá en una clase frontera)

Dinero es un sustantivo abstractoEsto deja dos clases de entidades

candidatasClase Hipoteca y Clase Inversión

Page 12: Clase 15, 24/10/2007

Primera iteración del diagrama de clases inicial

Clase Hipoteca Clase Inversión

Page 13: Clase 15, 24/10/2007

Segunda iteración del diagrama de clases inicial

Las operaciones desarrolladas en las dos clases de entidades son bastante similaresInserciones, eliminaciones y modificacionesTodos los miembros de ambas clases deben

imprimir a demanda

Clase Hipoteca y Clase Inversión deberían ser subclases de una superclase llamada Clase Activo

Page 14: Clase 15, 24/10/2007

Segunda iteración del diagrama de clases inicial

Clase Activo

Clase InversiónClase Hipoteca

Page 15: Clase 15, 24/10/2007

De vuelta al workflow de requerimientos

Los actuales cinco casos de uso incluyen Administrar una Hipoteca y Administrar una Inversión

Estos dos pueden ser combinados en un solo caso de uso, Administrar un Activo

Page 16: Clase 15, 24/10/2007

Octava iteración del diagrama de casos de uso

Miembro

staff MSG

Sistema

Fundación MSG

Administrar

un activo

Estimar fondos

disponibles

por semana

Actualizar

gastos operacionales

anuales estimados

Producir

un reporte

Page 17: Clase 15, 24/10/2007

Diagrama de clases inicial

Finalmente, se agregan los atributos de cada clase al diagrama de clases

Page 18: Clase 15, 24/10/2007

Segunda iteración del diagrama de clases inicial

Clase Activo

Clase InversiónClase Hipoteca

Número activo

nombreInversión

retornoEstimado

fechaActualización

últimoNombreDeHipotecario

precioDeCompraOriginal

fechaDeHipoteca

pagoCuotaSemanal

ingresoCombinadoSemanal

fechaActualizaciónIngresoSemanal

bienesRaicesAnuales

fechaBienesRaicesActialzadoAnual

primaDeSeguroAnual

fechaActualizaciónPrimaseguroAnual

Page 19: Clase 15, 24/10/2007

Iteración e incremento

Esto también significa la posibilidad de un decremento de lo que ha sido desarrollado hasta el momentoSe cometió un error y debe devolverse un paso

Como consecuencia de reorganizar los modelos UML, uno o más artefactos se han hecho innecesarios

Page 20: Clase 15, 24/10/2007

El modelo dinámico inicial

Modelamiento dinámico es el tercer paso en extraer las clases de entidades

Se construye un diagrama de estado que refleje todas las operaciones desarrolladas por o hacia el producto de software

Las operaciones se determinan desde los escenarios

Page 21: Clase 15, 24/10/2007

Modelo dinámico inicial: Fundación MSG

Page 22: Clase 15, 24/10/2007

Modelo dinámico inicial: fundación MSG

El diagrama de estados refleja las operaciones del sistema de la fundación MSGEl círculo sólido representa el estado inicial, el punto

inicial del diagrama

El círculo blanco conteniendo un círculo negro representa el estado final

Los estados se representan por rectángulos con esquinas redondeadas

Las flechas representan transiciones posibles de estado a estado

Page 23: Clase 15, 24/10/2007

Modelo dinámico inicial: fundación MSG

En estado Ciclo de eventos fundación MSG, puede ocurrir uno de cinco eventos

Un miembro de staff de MSG puede ingresar uno de cinco comandos:Estimar fondos para la semana

Administrar un activo

Actualizar gastos operacionales anuales estimados

Producir un reporte, o

Terminar

Page 24: Clase 15, 24/10/2007

Modelo dinámico inicial: fundación MSG

Estas posibilidades se indican por cinco eventosSeleccionado estimar fondos para la semana

Seleccionado administrar un activo

Seleccionado actualizar gastos operacionales anuales estimados

Seleccionado producir un reporte, o

Seleccionado terminar

Un evento ocasiona una transición entre estados

Page 25: Clase 15, 24/10/2007

Modelo dinámico inicial: fundación MSG

Un miembro de staff de MSG selecciona una opción haciendo click en el menú

Esta interfaz de software gráfico requiere de software especial

Estimar fondos para la semanaEstimar fondos para la semana

Administrar un activoAdministrar un activo

Actualizar gastos operacionales anuales estimadosActualizar gastos operacionales anuales estimados

Producir un reporteProducir un reporte

TerminarTerminar

Page 26: Clase 15, 24/10/2007

Modelo dinámico inicial: fundación MSG

Una interfaz textual equivalente

Menú

1.- Estimar fondos disponibles por semana

2.- Administrar un activo

3.- Actualizar gastos operacionales anuales estimados

4.- Producir un reporte

5.- Terminar

Ingrese opción y presione <ENTER>:

Page 27: Clase 15, 24/10/2007

Revisar las clases de entidad

El modelo funcional inicial, el diagrama inicial de clases y el modelo dinámico inicial están completos:Al revisarlos aparece un error

En el diagrama de estado inicial, considerar el estado Actualizar gastos operacionales anuales estimados con operación Actualizar los gastos operacionales anuales estimadosEsta operación debe ser desarrollada en el valor actual

de los gastos operacionales anuales estimados

Page 28: Clase 15, 24/10/2007

Revisar las clases de entidad

¿Pero dónde se encuentra el valor de los gastos operacionales anuales estimados?

Actualmente sólo hay una clase (Clase Activo) y sus dos subclasesNinguna es apropiada para almacenar los gatos

operacionales anuales estimados

Page 29: Clase 15, 24/10/2007

Revisar las clases de entidad

La única manera que un valor pueda ser almacenado en una base de larga vida es como un atributo de una instancia de esa clase o sus subclases

Se necesita otra clase de entidad para almacenar los gastos operacionales anuales estimadosClase Aplicación MSG

Page 30: Clase 15, 24/10/2007

Tercera iteración del diagrama de clases inicial

Clase Aplicación MSG tiene otros atributos

Atributos que no pertenecen a los activos

Clase Activo

Clase InversiónClase Hipoteca

Número activo

nombreInversión

retornoEstimado

fechaActualización

últimoNombreDeHipotecario

precioDeCompraOriginal

fechaDeHipoteca

pagoCuotaSemanal

ingresoCombinadoSemanal

fechaActualizaciónIngresoSemanal

bienesRaicesAnuales

fechaBienesRaicesActialzadoAnual

primaDeSeguroAnual

fechaActualizaciónPrimaseguroAnual

Clase Aplicación MSG

gastosOperacionalesEstimadosAnuales

fechaUltimaActualizaciónGastosOperacionalesEstimadosAnuales

fondosDisponiblesPorSemana

retornoEsperadoPorInversiones

fechaUltimaActualziacionRetornoEsperadoPorInversiones

subsisdiosEsperadosPorSemana

pagosEsperadosPorHipotecasSemanales

Page 31: Clase 15, 24/10/2007

Revisar las clases de entidad

El diagrama de clases redibujado para mostrar los prototipos

Clase Aplicación MSG Clase Activo

Clase Inversión Clase Hipoteca

Page 32: Clase 15, 24/10/2007

Extraer las clases frontera

Por lo general es fácil extraer las clases fronteraCada pantalla de ingreso, pantalla de salida y reporte

impreso se modela generalmente por una clase frontera

Una pantalla debería ser adecuada para los cuatro casos de uso

Estimar fondos disponibles por semanaAdministrar un activoActualizar gastos operacionales anuales estimadosProducir un reporte

Hay sólo una clase frontera inicialClase interfaz Usuario

Page 33: Clase 15, 24/10/2007

Extraer las clases frontera

Se deben imprimir tres reportesLos fondos estimados para el reporte semanalUn listado de todas las hipotecasUn listado de todas las inversiones

Cada uno debe ser modelado por una clase frontera separadaClase Reporte Fondos EstimadosClase Reportes HipotecasClase Reporte Inversiones

Page 34: Clase 15, 24/10/2007

Extraer las clases frontera

Las cuatro clases fronteras inicialesClase Interfaz Usuario

Clase Reporte Fondos Estimados

Clase Reportes Hipotecas

Clase Reporte Inversiones

Page 35: Clase 15, 24/10/2007

Extraer las clases frontera

Hay tres reportesReportes de compras

Reportes de ventas

Reportes de tendencias futuras

El contenido de cada reporte es diferenteCada reporte debe ser modelado como una

clase frontera distinta

Page 36: Clase 15, 24/10/2007

Extraer las clases control

Cada cálculo se modela por lo general por una clase control

El caso de la fundación MSG tiene sólo unaEstimar los fondos disponibles por semana

Hay sólo una clase de control inicialClase Estimar Fondos por Semana

Page 37: Clase 15, 24/10/2007

Extraer las clases

La descripción de la extracción de clases está completa

Retornar al Proceso Unificado

Page 38: Clase 15, 24/10/2007

Realización de caso de uso

El proceso de extender y refinar los casos de uso se llama realización de casos de uso

Page 39: Clase 15, 24/10/2007

Realización de caso de uso

La realización de un escenarios específico de un caso de uso se dibuja usando un diagrama de interacciónYa sea un diagrama de secuencia o diagrama de

colaboración

Considerar el caso de uso Estimar Fondos Disponibles por Semana

Hasta el momento se vioEl caso de uso

La descripción del caso de uso

Page 40: Clase 15, 24/10/2007

Caso de uso Estimar Fondos Disponibles por Semana

Diagrama de caso de uso

Miembro

staff MSG

Sistema

Fundación MSGEstimar fondos

disponibles

por semana

Page 41: Clase 15, 24/10/2007

Caso de uso Estimar Fondos Disponibles por Semana

Descripción del caso de usoDescripciónEste caso de uso permite a un miembro del staff de la fundación estimar cuánto dinero tiene la fundación

esta semana para hipotecasDescripción detallada1.- Para cada inversión, extraer el retorno anual estimado de cada inversión. Sumar los retornos y dividir el

resultado por 52 para obtener el ingreso estimado para la semana2.- Determinar los gastos operacionales estimados extrayendo los gastos operacionales anuales estimados

y dividir el resultado por 523.- Para cada hipoteca:

3.1 Calcular la cantidad a pagar esta semana sumando los pagos de capital e interés a 1/52 de la suma del impuesto de bienes raíces y las primas por seguro del propietario3.2 Calcular el 28% del ingreso bruto semanal de la pareja3.3 Si el resultado del paso 3.1 es mayor que el resultado del paso 3.2 entonces determina el pago de la hipoteca para la semana como el resultado del paso 3.2 y la cantidad de subsidio para esta semana como la diferencia entre el resultado del paso 3.1 y el resultado del paso 3.23.4 En caso contrario, toma el pago de la hipoteca para esta semana como el resultado del paso 3.1 y no hay subsidio esta semana

4.- Sumar los pagos de hipotecas de los pasos 3.3 y 3.4 para obtener los pagos estimados totales para la semana

5.- Sumar los pagos de subsidios del paso 3.3 para obtener los pagos de subsidios estimados para la semana

6.- Sumar los resultados de los pasos 1 y 4 y resta los resultados de los pasos 2 y 5. Este es el total disponible para hipotecas para la semana actual

7.- Imprimir el total disponible para los nuevas hipotecas durante la semana actual

Page 42: Clase 15, 24/10/2007

Clase Reporte

Fondos Estimados

Clase Aplicación MSG

Clase Hipoteca

Clase Estimar Fondos

por Semana

Clase Inversión

Caso de uso Estimar Fondos Disponibles por Semana

Diagrama de clases (clases que están en el caso de uso)

Clase Interfaz

UsuarioMiembro

staff MSG

Page 43: Clase 15, 24/10/2007

Caso de uso Estimar Fondos Disponibles por Semana

Las seis clases involucradas en el caso de uso son:

Clase Interfaz de usuarioModela la interfaz de usuario

Clase Estimar Fondos por SemanaEsta clase de control modela los cálculos de la estimación de los fondos

que están disponibles para las hipotecas durante la semanaClase Hipoteca

Modela los subsidios y pagos estimados por semanaClase Inversión

Modela el retorno estimado en inversiones para la semanaClase Aplicación MSG

Modela el retorno en inversión para la semanaClase Reporte de fondos estimados

Modela la impresión del reporte

Page 44: Clase 15, 24/10/2007

Caso de uso Estimar Fondos Disponibles por Semana

EscenarioUn miembro del staff de la fundación desea determinar los fondos disponibles para hipotecas esta semana1.- Para cada inversión, el sistema extrae el retorno anual estimado de cada inversión. Suma los retornos y

divide el resultado por 52 para obtener el ingreso estimado para la semana2.- El sistema determina los gastos operacionales estimados extrayendo los gastos operacionales anuales

estimados y divide el resultado por 523.- Para cada hipoteca:

3.1 Calcula la cantidad a pagar esta semana sumando los pagos de capital e interés a 1/52 de la suma del impuesto de bienes raíces y las primas por seguro del propietario3.2 Calcula el 28% del ingreso bruto semanal de la pareja3.3 Si el resultado del paso 3.1 es mayor que el resultado del paso 3.2 entonces determina el pago de la hipoteca para la semana como el resultado del paso 3.2 y la cantidad de subsidio para esta semana como la diferencia entre el resultado del paso 3.1 y el resultado del paso 3.23.4 En caso contrario, toma el pago de la hipoteca para esta semana como el resultado del paso 3.1 y no hay subsidio esta semana

4.- El sistema suma los pagos de hipotecas de los pasos 3.3 y 3.4 para obtener los pagos estimados totales para la semana

5.- El sistema suma los pagos de subsidios del paso 3.3 para obtener los pagos de subsidios estimados para la semana

6.- el sistema suma los resultados de los pasos 1 y 4 y resta los resultados de los pasos 2 y 5. Este es el total disponible para hipotecas para la semana actual

7.- finalmente, el sistema imprime el total disponible para los nuevas hipotecas durante la semana actual

Page 45: Clase 15, 24/10/2007

Caso de uso Estimar Fondos Disponibles por Semana

Un sistema utiliza objetos, no clases:Ejemplo: una hipoteca específica no puede ser

representada por la Clase Hipoteca sino por un objeto, una instancia de la Clase Hipoteca

Un objeto se indica por : Clase Hipoteca

Page 46: Clase 15, 24/10/2007

Caso de uso Estimar Fondos Disponibles por Semana

Un diagrama de clases muestra las clases en el caso de uso y sus relacionesNo muestra los objetos ni la secuencia de

mensajes que son enviados de objeto a objeto

Se necesita algo más

Page 47: Clase 15, 24/10/2007

Caso de uso Estimar Fondos Disponibles por Semana

Diagrama de colaboración (de la realización del escenario del caso de uso)