cducasos de uso - sophia.javeriana.edu.colcdiaz/adoo2008-3/casosdeuso... · ¿qué es un caso de...

13
C d U C d U Casos de Uso Casos de Uso Análisis y Diseño OO Análisis y Diseño OO Análisis y Diseño OO Análisis y Diseño OO 2008 2008-3

Upload: vuongthu

Post on 20-Sep-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

C d UC d UCasos de UsoCasos de Uso

Análisis y Diseño OOAnálisis y Diseño OOAnálisis y Diseño OOAnálisis y Diseño OO20082008--33

¿Qué es un caso de uso?¿Qué es un caso de uso?¿Qué es un caso de uso?¿Qué es un caso de uso?

EspecificaciónEspecificación deldel comportamientocomportamientodede unun sistemasistema oo dede unauna parteparte dede esteesteppDescripciónDescripción dede unun conjuntoconjunto dedesecuenciasecuencia dede accionesacciones incluyendoincluyendosecuenciasecuencia dede acciones,acciones, incluyendoincluyendovariantesvariantes queque ejecutaejecuta unun sistemasistemaparapara producirproducir unun resultadoresultadoobservableobservable dede valorvalor parapara unun actoractorpp

¿Para qué se usan?¿Para qué se usan?¿Para qué se usan?¿Para qué se usan?

ParaPara capturarcapturar elel comportamientocomportamiento (el(elquéqué)) deseadodeseado deldel sistemasistema enenqq ))desarrollo,desarrollo, sinsin tenertener queque especificarespecificarcómocómo sese implementaimplementa eseesecómocómo sese implementaimplementa eseesecomportamientocomportamientoParaPara representarrepresentar unun requerimientorequerimientofuncionalfuncional deldel sistemasistema globalglobalggParaPara involucrarinvolucrar lala interaccióninteracción dedeactoresactores yy elel sistemasistema uu otrosotros sujetossujetosactoresactores yy elel sistemasistema uu otrosotros sujetossujetos..

¿Qué es un actor?¿Qué es un actor?¿Qué es un actor?¿Qué es un actor?

RepresentaRepresenta unun conjuntoconjunto coherentecoherentedede rolesroles queque jueganjuegan loslos usuariosusuarios dedeqq j gj gloslos casoscasos dede usousoPuedenPueden serser sistemassistemas automáticosautomáticos ooPuedenPueden serser sistemassistemas automáticosautomáticos oopersonaspersonas..

nombreA tActor

Generalización de actoresGeneralización de actoresGeneralización de actoresGeneralización de actores

Cliente

Generalización

Cliente Comercial

¿Qué es un escenario?¿Qué es un escenario?¿Qué es un escenario?¿Qué es un escenario?

Secuencia específica de acciones Secuencia específica de acciones que ilustra un comportamientoque ilustra un comportamientoq pq pEs una instancia de un caso de usoEs una instancia de un caso de uso

Escenario 1

Caso de Uso

Escenario 2

Escenario 3

Escenario 4…

Escenario n

Relación de inclusión (include)Relación de inclusión (include)Relación de inclusión (include)Relación de inclusión (include)

UnUn casocaso dede usouso basebase incorporaincorporaexplícitamenteexplícitamente elel comportamientocomportamiento dedeexplícitamenteexplícitamente elel comportamientocomportamiento dedeotrootro casocaso dede usouso enen elel lugarlugarespecificadoespecificado enen elel casocaso dede usouso basebaseespecificadoespecificado enen elel casocaso dede usouso basebase

Validar usuario

Hacer pedido<<include>>

Seguir pedido<<include>>

Seguir pedido

Relación de extensión (extend)Relación de extensión (extend)Relación de extensión (extend)Relación de extensión (extend)

UnUn casocaso dede usouso basebase incorporaincorporaimplícitamenteimplícitamente elel comportamientocomportamiento dedepp ppotrootro casocaso dede usouso enen elel lugarlugarespecificadoespecificado indirectamenteindirectamente porpor elelespecificadoespecificado indirectamenteindirectamente porpor elelcasocaso dede usouso queque extiendeextiende alal basebase

Hacer pedido

Hacer pedido urgente<<extend>>

p

H did i l<<extend>>

Hacer pedido parcial

Resumen de RelacionesResumen de RelacionesResumen de RelacionesResumen de Relaciones

Pasos a seguir para definir los Pasos a seguir para definir los casos de usocasos de uso

IdentificarIdentificar loslos actoresactoresOrganizarOrganizar loslos actoresactores identificandoidentificandoOrganizarOrganizar loslos actoresactores identificandoidentificandotantotanto loslos rolesroles másmás generalesgenerales comocomoloslos másmás especializadosespecializadosloslos másmás especializadosespecializadosTomarTomar loslos requerimientosrequerimientos funcionalesfuncionalesdeldel sistemasistema..ConsiderarConsiderar interaccionesinteracciones dede loslosConsiderarConsiderar interaccionesinteracciones dede loslosactoresactores concon elel sistemasistema

Ejemplo: Cajero AutomáticoEjemplo: Cajero AutomáticoEjemplo: Cajero AutomáticoEjemplo: Cajero Automático

Enunciado “Cajero Automático”Enunciado “Cajero Automático”Enunciado Cajero Automático …Enunciado Cajero Automático …Descripción general:

Se desea construir un aplicativo para el manejo de un cajero automático. El aplicativodebe proporcionar a los clientes de todos los bancos de Colombia y las redesinternacionales las siguientes operaciones: a) retiros en efectivo, b) consultas desaldo c) depósitos a cuentas en efectivo d) depósitos en cheque a cuentas e)transferencias bancarias y f) pago de servicios públicos. Todas las operacionesrealizadas en el cajero, así sean canceladas por el cliente del cajero deben quedarregistradas en la bitácora (log) de transacciones que debe obtener como mínimo:fecha de la transacción, hora de la transacción, número de tarjeta, transacción, valor,respuesta.

El flujo de un retiro es: el cliente inserta la tarjeta selecciona el tipo de cuenta (ahorrosEl flujo de un retiro es: el cliente inserta la tarjeta, selecciona el tipo de cuenta (ahorros,corriente, tarjeta de crédito), selecciona la operación de retiro, selecciona el monto dela pantalla o puede digitar un múltiplo de 10000 pero inferior o igual a 300,000, digitasu clave y espera resultado, si la operación es exitosa debe dispensar el dinero ysolicitar al usuario si desea recibo o por pantalla el nuevo saldo. En caso de fallas ensolicitar al usuario si desea recibo o por pantalla el nuevo saldo. En caso de fallas enel dispensador se debe generar una operación automática de reverso para devolverel dinero al cliente a la cuenta afectada. La operación de reverso se debe aplicar entodas las transacciones que viajen al Servidor del banco, se excluye la consulta desaldo. Si la operación no es exitosa se debe informar al cliente el motivo de lasaldo. Si la operación no es exitosa se debe informar al cliente el motivo de ladeclinación y generar recibo.

Enunciado “Cajero Automático”!Enunciado “Cajero Automático”!Enunciado Cajero Automático !Enunciado Cajero Automático !Las transferencias de fondos utilizan las operaciones de retiro a cuenta y de depósito enLas transferencias de fondos utilizan las operaciones de retiro a cuenta y de depósito en

efectivo aunque para el usuario sea solo una transacción. El pago de serviciospúblicos utiliza la transacción de retiro para obtener los fondos que cubren el pago, elbanco abona directamente a la empresa de servicios los valores pagados por losclientes.clientes.

El aplicativo debe contar con un modulo administrativo que permita informar al sistema lacantidad de dinero que estará en las gabinetes de retiro, por denominación(aprovisionamiento del cajero) debe permitir imprimir la tira de auditoria del cajero de(aprovisionamiento del cajero), debe permitir imprimir la tira de auditoria del cajero detodas las operaciones realizadas, debe poder generar archivos planos con lainformación de la tira de auditoria. Se debe contar con un superusuario que seacapaz de manejar todo el modulo administrativo pero que además pueda realizaroperaciones de mantenimiento a los sensores del sistema mantenimientosoperaciones de mantenimiento a los sensores del sistema, mantenimientospreventivos a los dispensadores de dinero y receptores de dinero.

El sistema debe ser implementado en JAVA bajo la plataforma Windows. El protocolo decomunicación debe ser inicialmente TCP/IP pero debe poderse cambiar a otrosprotocolos como SNA o X.25. Se debe tener un mecanismo de persistencia basadoinicialmente en archivos XML pero luego se debe poder utilizar motores de bases dedatos como MYSQL o SQLSERVER. Las pantallas hacia todos los usuarios debenser fáciles de manejar. El sistema solo debe permitir acceder a los módulosespeciales con la seguridad adecuada, y debe consumir servicios Webproporcionados por el sistema de seguridad del banco basado en el protocolo LDAP.