clase 9, 25/9/2007
TRANSCRIPT
Metodologías de Análisis
Clase 9 – 25/9/2007
Christian Sifaqui
Propósito del workflow de requerimientos
Responder la pregunta:
¿Qué debe ser capaz de hacer el producto?
Determinar lo que el cliente necesita
Confusión:Debemos determinar lo que el cliente quiere
“¡Yo sé que Ud. cree que entendió lo que piensa que yo dije, pero no estoy seguro que Ud. se dio cuenta que lo que escuchó no es lo que yo quise decir!”
Debemos determinar lo que el cliente necesita
Determinar lo que el cliente necesita
Es difícil para un analista visualizar un producto de software y su funcionalidadEl problema es más difícil para el cliente
Se requiere un analista hábil para que surja la información apropiada desde el cliente
El cliente es la única fuente de esta información
Determinar lo que el cliente necesita
La solución:Obtener información inicial del cliente
Usar esta información inicial como entrada al proceso unificado
Continuar los pasos del proceso unificado para determinar las necesidades reales del cliente
Vista general del workflow de requerimientos
Primero, obtener un entendimiento del dominio de la aplicaciónEl ambiente específico en el cual el producto
operará
Segundo, construir un modelo de negociosModelar los procesos de negocios del cliente
Tercero, usar el modelo de negocios para determinar los requerimientos del cliente
Iterar los pasos anteriores
Definiciones
Descubrir los requerimientos del clienteCaptura de requerimientos
Los métodos incluyen entrevistas e investigaciones
Refinar y extender los requerimientos inicialesAnálisis de requerimientos
Entender el dominio
Cada miembro del equipo de desarrollo debe entender totalmente el dominio de la aplicaciónLa terminología correcta es esencial
Construir un glosarioUna lista de palabras técnicas usadas en el
dominio y sus significados
Modelo de negocios
Un modelo de negocios es una descripción de los procesos de negocios de la organización
El modelo de negocios entrega un entendimiento de los negocios del cliente como un todoEste conocimiento es esencial para indicar al cliente
respecto de computarización
El analista necesita obtener un entendimiento detallado de los procesos de negociosSe usan diferentes técnicas, pero principalmente
entrevistas
Entrevistas
El equipo de requerimientos se reúne con el cliente y usuarios para extraer información relevante (en lo posible toda)
Entrevistas
Hay dos tipos de preguntasPreguntas cerradas: requieren una respuesta específicaPreguntas abiertas: se utilizan para el que entrevistado
se exprese
Hay dos tipos de entrevistasEntrevista estructurada: se plantean preguntas
específicas preplaneadas (por lo general preguntas cerradas)
Entrevista no estructurada: las preguntas se plantean acorde a las respuestas recibidas (por lo general preguntas abiertas)
Entrevistas
Entrevistar no es fácilUna entrevista que sea muy libre no entregará
información relevanteEl entrevistador debe estar totalmente familiarizado con
el dominioEl entrevistador debe permanecer empático en todo
momento
Después de la entrevista, el entrevistador debe preparar un reporte escritoSe recomienda entregar una copia del reporte a la
persona entrevistada
Otras técnicas
Entrevistar es la técnica primaria
Un cuestionario es útil cuando se necesitan determinar muchas opiniones
Examinar los formularios de negocios muestra cómo el cliente hace su negocio
Otras técnicas
Observación directa de los empleados mientras desarrollan su tareas puede ser útilUna versión moderna de esta técnica es usar
cámaras grabadoras
Pero puede tomar mucho tiempo analizar las grabaciones
Los empleados podrían ver las cámaras como una invasión a su privacidad
Casos de uso
Un caso de uso modela una interacción entre el producto de software y los usuarios del producto (actores)
Ejemplo:
retirar dinero
Producto de software
de banco
Cliente Cajero
Casos de uso
Un actor es un miembro del mundo afuera del producto del software
Es fácil identificar a un actorUn actor es frecuentemente un usuario del producto de
software
En general, un actor juega un rol respecto al producto. Este rol es:como usuario, ocomo iniciador, ocomo alguien que tiene una parte crítica en el caso de
uso
Casos de uso
Un usuario del sistema puede tener más de un rol
Ejemplo: un cliente del banco puede ser:Un Deudor, o
Un Aval
Casos de uso
A la inversa, un actor puede ser un participante en múltiples casos de uso
Ejemplo: un Deudor puede ser un actor enCaso de uso Prestar dinero
Caso de uso Pagar intereses, o
Caso de uso Pagar prima
También, el actor Deudor puede representar muchos miles de clientes del banco
Casos de uso
Un actor no necesita ser un ser humanoEjemplo: un sistema de información de e-
commerce debe interactuar con el sistema de la compañía de tarjetas de créditoEl sistema de la compañía de tarjetas de
crédito es un actor desde el punto de vista del sistema de información e-commerce
El sistema de información e-commerce es un actor desde el punto de vista del sistema de la compañía de tarjetas de crédito
Casos de uso
Un problema potencial al identificar actoresActores superpuestos
Ejemplo: producto de software de hospitalUn caso de uso tiene el actor Enfermera
Un caso de uso diferente tiene el actor Equipo médico
Mejor:Actores: Médico y Enfermera
Casos de uso
En forma alternativa:Actor Equipo médico tiene dos
especializaciones: Médico y Enfermera
Equipo médico
Médico Enfermera
Requerimientos iniciales
Los requerimientos iniciales se basan el modelo de negocios inicial
Luego se refinan
Los requerimientos son dinámicos, esto significa que hay cambios frecuentesMantener una lista de requerimientos posibles,
juntos con los casos de uso de requerimientos aprobados por el cliente
Requerimientos iniciales
Hay dos categorías de requerimientosLos requerimientos funcionales especifican una
acción que el producto debe ser capaz de realizarA menudo expresado en términos de entradas y salidas
Un requerimiento no funcional especifica propiedades del producto en sí mismo, comoRestricciones de la plataformaTiempos de respuestaConfiabilidad
Requerimientos iniciales
Los requerimientos funcionales se manejan como parte de los workflows de requerimientos y análisis
Algunos requerimientos no funcionales deben esperar hasta el workflow de diseñoLa información detallada para algunos
requerimientos no funcionales no está disponible hasta que se hayan completado los workflows de requerimientos y análisis
Caso de estudio: Fundación MSG
La fundación Martha Stockton Greengage (MSG) presta hipotecas de bajo costo a parejas jóvenes
El directorio solicita un “proyecto piloto”Un producto de software determinará cuánto
dinero está disponible cada semana para adquirir casas
Caso de estudio: Fundación MSG
Una hipoteca es un préstamo en donde se usa una propiedad como seguridad
Ejemplo: la casa cuesta US $100.000
El comprador paga un pie de 10% y se presta el restoEl capital prestado es de US $90.000
El préstamo se pagará mensualmente en 30 añosTasa de interés es de 7.5% anual (ó 0,625% mensual)
Caso de estudio: Fundación MSG
Cada mes, el deudor paga US $629,3Parte de este pago es el interés de la deuda
El resto se usa para reducir el capital
El pago mensual a menudo se indica como C & I (capital más intereses)
Pago de hipoteca: primer mes
En el primer mes, el balance es de US $90.000El interés mensual a 0,625% en US $90.000 es
de US $562,5
El resto del pago C & I de US $629,3 (US $66,8) se usa para reducir el capital
Al final del primer mes, después del primer pago, sólo se le deben US $89.933,2 a la empresa financiera
Pago de hipoteca: segundo mes
En el segundo mes, el balance es de US $89.933,2El interés mensual a 0,625% en US $89.933,2
es de US $562,05
El resto del pago C & I de US $629,3 (US $67,22) se usa para reducir el capital
Al final del segundo mes, después del segundo pago, sólo se le deben US $89.865,98 a la empresa financiera
Pago de hipoteca: después de 15 y 30 años
Después de 15 años (180 meses) el balance es de US $67.881,61El interés mensual a 0,625% en US $67.881,26
es de US $424,26
El resto del pago C & I de US $629,3 (US $205,04) se usa para reducir el capital
Después de 30 años (360 meses) el préstamo total se ha pagado
Primas de seguros
La compañía financiera requiere que el deudor asegure la casaSi la casa se quema, el cheque de la compañía
aseguradora se usará para pagar el préstamo
Primas de seguros
El seguro se paga una vez al año por la compañía financieraLa compañía financiera requiere que el deudor
pague mensualmente el seguro
Estos se pagan en un cuenta en custodia (cuenta de ahorro)
La prima anual se paga desde la cuenta en custodia
Impuesto de bienes raíces
Los impuestos de bienes raíces por una casa se tratan de la misma manera como primas de segurosLos pagos mensuales se depositan en una
cuenta en custodia
El pago de impuestos de bienes raíces de pagan de esa cuenta
Límites de préstamo
Una hipoteca no se otorga a menos que el pago mensual (C & I + seguro + impuesto bienes raíces) sea menor que un 28% del ingreso total del deudor
Otros costos
La compañía financiera requiere una comisión por el préstamoTípicamente la compañía financiera solicita un
2% del capital (“2 puntos”)
Para el préstamo de US $90.000, son US $1.800
Otros costos
Hay otros costos involucradosCostos legales
Diversos impuestos
Cuando se cierra un acuerdo, los costos de cierre (costos legales, impuestos y varios) más los puntos fácilmente llegan a los US $7.000
Caso MSG: modelo de negocios inicial
Al inicio de cada semana, MSG estima cuánto dinero hay disponible en esa semana para financiar hipotecas
Parejas de bajos ingresos pueden postular en cualquier momento
Caso MSG: modelo de negocios inicial
Un miembro del equipo de la Fundación MSG determina:Si la pareja califica para una hipoteca MSG, ySI MSG tiene suficiente financiamiento disponible para
adquirir la casa
Si es así, la hipoteca se apruebaEl dividendo semanal de la hipoteca se calcula acorde a
las reglas de MSG
Esta cantidad de dividendo varía de semana en semana, acorde a los ingresos actuales de la pareja
Caso MSG: modelo de negocios inicial
Hay tres casos de usoEstimar fondos disponibles por semana
Postular a hipoteca MSG
Calcular monto de dividendo semanal
Caso de uso: Estimar fondos disponibles por semana
Miembro
staff MSG
Estimar fondos
disponibles
por semana
Sistema
Fundación MSG
Descripción
El caso de uso permite a un miembro del staff de
la Fundación MSG estimar cuánto dinero tiene disponible
la Fundación esta semana para financiar hipotecas
Descripción paso a paso
No aplicable en esta etapa inicial
Caso de uso: Postular a hipoteca MSG
Miembro
staff MSG
Postular a hipoteca MSG
Sistema
Fundación MSG
Descripción
Cuando una pareja postula a una hipoteca, este caso de uso
permite a un miembro de la Fundación determinar si califican
para una hipoteca MSG y, en caso positivo, determinar si hay fondos
disponibles para la hipoteca
Descripción paso a paso
No aplicable en esta etapa inicial
Postulantes
Caso de uso: Calcular monto dividendo semanal
Miembro
staff MSG
Calcular monto
dividendo semanal
Sistema
Fundación MSG
Descripción
Este caso de uso permite a un miembro del staff de la Fundación
calcular cuánto deben pagar los deudores semanalmente
Descripción paso a paso
No aplicable en esta etapa inicial
Deudores
¿Quién es un actor?
¿Porqué Postulantes es un actor en el caso de uso Postular a hipoteca MSG?
Postulantes no interactúan con el producto de softwareSus respuestas son ingresadas al producto por
un miembro del staff MSG
¿Quién es un actor?
Sin embargoLos postulantes inician el caso de usoLos postulantes proveen los datos ingresados
por el staff MSGEl actor real es por lo tanto Postulantes, el
Miembro staff MSG es solamente un agente de los postulantes
Postulantes es por lo tanto un actor
¿Quién es un actor?
De forma similar, Deudores es un actor en el caso de uso Calcular monto dividendo semanalNuevamente el caso de uso es iniciado por
Deudores
Nuevamente la información ingresada por el staff MSG es suministrada por los deudores
Deudores es por lo tanto un actor
Caso de uso: Administrar una inversión
En esta etapa, no se conocen detalles de:Compra y venta de inversiones, o
Cómo se dispone de inversiones para hipotecas
Sin embargo, el caso de uso Administrar una inversión es una parte esencial del modelo inicial de negocios
Caso de uso: Administrar una inversión
Miembro
staff MSG
Administrar
una inversión
Sistema
Fundación MSG
Descripción
Este caso de uso permite a un miembro del staff de
la Fundación MSG comprar y vender inversiones y
administrar el portafolio de inversiones
Descripción paso a paso
No aplicable en esta etapa inicial
Diagrama de caso de uso del modelo de negocios inicial
Miembro
staff MSG
Administrar
una inversión
Sistema
Fundación MSG
Postulantes
Deudores
Calcular monto
dividendo semanal
Postular a hipoteca MSG
Estimar fondos
disponibles
por semana
Requerimientos iniciales: caso de estudio MSG
No es claro para los cuatro casos de uso si son requerimientos del producto a desarrollar¿Qué es exactamente un “proyecto piloto”?
La mejor manera de proceder esBosquejar los requerimientos iniciales en base
a lo que el cliente quiere y luego iterar
Requerimientos iniciales: caso de estudio MSG
Considerar cada caso de uso a su vez:
Estimar fondos disponibles por semana es obviamente parte de los requerimientos iniciales
Postular a hipoteca MSG no parece tener relación con el proyecto piloto, así que se excluye
Requerimientos iniciales: caso de estudio MSG
Calcular monto dividendo semanal, y
Administrar una inversiónAmbos parecer ser irrelevantes para el proyecto piloto
Sin embargo, el proyecto piloto tiene que ver con el “dinero que está disponible cada semana para adquirir casas”Algo de ese dinero viene del dividendo semanal de
hipotecas existentes y de ingresos de inversiones
El diagrama de caso de uso queda
Diagrama de caso de uso inicial: estudio de caso MSG
Miembro
staff MSGAdministrar
una inversión
Sistema
Fundación MSG
Deudores
Calcular monto
dividendo semanal
Estimar fondos
disponibles
por semana
Siguiente paso: iterar en el workflow de requerimientos
Workflow de requerimientos: MSG
Los analistas aprenden que la Fundación MSG otorga un 100% de hipoteca bajo las siguientes condiciones:La pareja está legalmente casada al menos hace un año
pero no más de 10 añosAmbos esposos están empleadosEl precio de la casa debe estar por debajo del precio
medio publicado para casas en ese lugar en los últimos 12 meses
Sus ingresos y/o ahorros son insuficientes para lograr una tasa fija estándar de 30 años-90% hipoteca
La fundación tiene suficientes fondos para comprar la casa
Condiciones para hipoteca MSG
Si la postulación se aprueba, entonces cada semana por los siguientes 30 años la pareja paga a MSGEl total de los pagos de capital e interés (esto nunca
cambia mientras dure la hipoteca), másEl pago en custodia, que es 1/52 de la suma del
impuesto de bienes raíces y la prima de seguro del propietario
Si esto excede el 28% del ingreso semanal de la pareja, MSG paga la diferencia como una subvenciónLa pareja debe proveer pruebas de su ingreso actual (el
pago semanal puede variar entre semanas)
Algoritmo para determinar si hay fondos disponibles
(1) Al inicio de la semana, el ingreso anual de las inversiones MSG se calcula y divide por 52
(2) Los costos operacionales anuales de MSG se dividen por 52
(3) Se calcula el total de los pagos estimados de hipotecas para la semana
Algoritmo para determinar si hay fondos disponibles
(4) Se calcula el total de las subvenciones estimadas para la semana
(5) La cantidad disponible para la semana es (1) – (2) + (3) – (4)
(6) Si el costo de la casa no es mayor que 5, se proveen los fondos para adquirirla
(7) Al final de cada semana, cada fondo no gastado se invierte
Requerimientos del proyecto piloto
Para mantener los costos del proyecto piloto tan bajos como sea posible, sólo los ítemes de datos necesarios para el cálculo de los fondos semanales serán incluidos
Sólo tres tipos de datos se hacen necesarios:Datos de inversionesDatos de gastos operacionalesDatos de hipotecas
Datos de inversiones
Número de ítem
Nombre de ítem
Retorno anual estimado
Fecha de última actualización de retorno anual estimado
Datos de gastos operacionales
Gastos operacionales anuales estimados
Fecha de última actualización de gastos operacionales anuales estimados
Datos de hipotecas
Número de cuenta
Apellido de hipotecarios
Valor original compra de casa
Pagos semanales (C & I)
Ingreso bruto combinado semanal actual
Fecha de última actualización de ingreso bruto combinado semanal
Datos de hipotecas
Impuesto de bienes raíces
Fecha de última actualización de impuesto de bienes raíces
Primas anuales de seguros de propietario
Fecha de última actualización de primas anuales de seguros de propietario
Reportes requeridos para el proyecto piloto
Se necesitan tres tipos de reportes:Los resultados del cálculo de los fondos para la
semana
Un listado de todas las inversiones (impreso a petición)
Un listado de todas las hipotecas (impreso a solicitud)
Revisar los requerimientos: Caso MSG
Los requerimientos iniciales incluyen tres casos de uso:Estimar fondos disponibles por semana
Calcular monto dividendo semanal
Administrar una inversión
A la luz de la información adicional recibida, los requerimientos iniciales pueden ser revisados
Revisar los requerimientos: Caso MSG
Considerar cada elemento de la fórmula para determinar cuánto dinero está disponible cada semana
(2) Ingreso estimado anual de inversionesTomar todas las inversiones, sumar el retorno estimado
anual en cada inversión y dividir el resultado por 52
Se necesita un caso de uso adicional Estimar ingreso por inversión semanal(Aún se necesita el caso de uso Administrar una inversión
para sumar, eliminar y modificar inversiones)
Caso de uso Estimar ingreso por inversión semanal
La flecha con línea punteada con el nombre «include» indica que
Caso de uso Estimar ingreso por inversión semanal es parte del caso de uso Estimar fondos disponibles por semana
Miembro
staff MSG
Estimar fondos
disponibles
por semana
Sistema
Fundación MSG
Estimar ingreso por
inversión semanal«include»
Caso de uso: Estimar ingreso por inversión semanal
Descripción
Este caso de uso permite al caso de uso Estimar fondos disponibles por
semana estimar cuánta ingreso por inversión está disponible para esta
semana
Descripción paso a paso
1.- Para cada inversión, extraer el retorno estimado anual en esa inversión
2.- Sumar los valores extraídos en paso 1 y dividir el resultado por 52
Descripción del caso de uso
Primera iteración del diagrama de caso de uso revisado
Miembro
staff MSGAdministrar
una inversión
Sistema
Fundación MSG
Deudores
Calcular monto
dividendo semanal
Estimar fondos
disponibles
por semana
Estimar ingreso por
inversión semanal
«include»
Revisar los requerimientos: Caso MSG
(2) Gastos operacionales anuales estimados:
Para determinar los gastos operacionales anuales estimados se necesitan dos casos de uso adicionalesCaso de uso Actualizar gastos operacionales anuales
estimados modela ajustes en el valor de los gastos operacionales anuales estimados
Caso de uso Estimar gastos operacionales semanales provee la estimación necesaria para los gastos operacionales
Caso de uso: Actualizar gastos operacionales anuales estimados
Miembro
staff MSG
Actualizar
gastos operacionales
anuales estimados
Sistema
Fundación MSG
Descripción
Este caso de uso permite a un miembro del staff de
la Fundación MSG actualizar los gastos operacionales anuales
estimados
Descripción paso a paso
1.- Actualizar los gastos operacionales estimados anuales
Caso de uso Estimar gastos operacionales semanales
Miembro
staff MSG
Estimar fondos
disponibles
por semana
Sistema
Fundación MSG
Estimar gastos
operacionales semanales«include»
Descripción
Este caso de uso permite al caso de uso Estimar fondos
disponibles por semana estimar los gastos operativos para la
semana
Descripción paso a paso
1.- Dividir los gastos operacionales estimados anuales por 52
Segunda iteración del diagrama de caso de uso revisado
Miembro
staff MSGAdministrar
una inversión
Sistema
Fundación MSG
Deudores
Calcular monto
dividendo semanal
Estimar fondos
disponibles
por semana
Actualizar
gastos operacionales
anuales estimados
Estimar ingreso
por inversión
semanal
Estimar gastos
operacionales semanales
«include»
«include»
Revisar los requerimientos: Caso MSG
(3) Total de los pagos estimados de hipotecas para la semana y
(4) Total de las subvenciones estimadas para la semana:Caso de uso Calcular monto dividendo semanal modela el
cálculo del pago de hipoteca estimada y el pago de subvenciones estimadas para cada hipoteca separadamente
El sumar estas cantidades separadas entregaEl total de los pagos estimados de hipotecas semanales, yEl total estimado de los pagos por subvenciones semanales
Revisar los requerimientos: Caso MSG
Ahora los casos de uso deben ser reorganizadosCaso de uso Calcular monto dividendo semanal también
modela a los deudores actualizando su ingreso semanal
Separar Calcular monto dividendo semanal en dos casos de uso separadosCaso de uso Estimar pagos y subvenciones a la semana y
Caso de uso Actualizar ingreso semanal de deudores
Caso de uso Estimar pagos y subvenciones a la semana
Miembro
staff MSG
Estimar fondos
disponibles
por semana
Sistema
Fundación MSG
Estimar pagos y
subvenciones a la semana«include»
Caso de uso Estimar pagos y subvenciones a la semana
Descripción
Este caso de uso permite al caso de uso Estimar fondos disponibles por
semana estimar el total de pagos de hipotecas estimados pagados por
deudores a la Fundación MSG para la semana actual y el total de
subvenciones totales estimadas pagadas por la Fundación MSG
esta semana
Caso de uso Estimar pagos y subvenciones a la semana
Descripción paso a paso
1.- Para cada hipoteca:
1.1 la cantidad a pagar esta semana es el total del pago C & I
y 1/52avo de la suma del impuestos de bienes raíces y la prima
anual de seguro del propietario
1.2 Calcular el 28% del ingreso del ingreso bruto semanal de
la pareja
1.3 Si el resultado del paso 1.1 es mayor que el resultado del
paso 1.2, entonces el pago de la hipoteca esta semana es el
resultado del paso 1.2 y el monto la subvención para esta
semana es la diferencia entre el resultado del paso 1.1 y el
resultado del paso 1.2
1.4 en caso contrario, el pago de la hipoteca para esta semana
es el resultado del paso 1.1 y no hay subvención esta semana
2.- Sumar los pagos de hipotecas de pasos 1.3 y 1.4 entrega el pago
estimado de la hipoteca para la semana
3.- Sumar los pagos de subvenciones de paso 1.3 entrega los pagos
estimados de de subvenciones para la semana
Caso de uso: Actualizar ingreso semanal de deudores
Miembro
staff MSG
Actualizar
ingreso semanal
de deudores
Sistema
Fundación MSG
Descripción
Este caso de uso permite a un miembro del staff de
la Fundación MSG actualizar los ingresos semanales de una
pareja que ha recibido un préstamo de la Fundación
Descripción paso a paso
1.- Actualizar los ingresos semanales de los deudores
Deudores
Tercera iteración del diagrama de caso de uso revisado
Miembro
staff MSG
Administrar
una inversión
Sistema
Fundación MSG
Deudores
Actualizar
ingreso semanal
de deudores
Estimar fondos
disponibles
por semana
Actualizar
gastos operacionales
anuales estimados
Estimar ingreso
por inversión
semanal
Estimar gastos
operacionales semanales
«include»
«include»Estimar pagos y
subvenciones a la semana«include»