Vous êtes sur la page 1sur 24

Diseo de Sistemas II

Casos de Uso

Ciclo de vida del desarrollo de software

Diagramas UML
ESTTICOS
Diagrama de Clases
Diagrama de Objetos

Diagramas de implementacin
Diagrama de Componentes
Diagrama de Despliegue

DINMICOS
Diagrama de Casos de Uso

Diagramas de Comportamiento
Diagrama de Estados Transiciones
Diagrama de Actividades

Diagramas de Interaccin
Diagrama de Secuencia
Diagrama de Colaboracin

Fundamentos de los C.U.


Relevamiento

Anlisis

Etapas + difciles !!

Diseo

Implem.

Implantacin

Sepultados de informacin
Necesidades Incoherentes
Olvidos
Imprecisiones

Si estas fases tienen defectos el desarrollo comienza con una


mala base, lo que impacta en el resto del CVDS Modificaciones
muy costosas.

Fundamentos de los C.U.


Los C.U. son un aporte de Jacobson a UML, que llen el
hueco existente en cuanto a la determinacin de necesidades
UML cubre el ciclo completo de desarrollo de sistemas.

Los C.U. describen el comportamiento de un sistema desde el


punto de vista de un usuario, en forma de acciones y reacciones.

Los C.U. se emplean para capturar el comportamiento deseado


del sistema en desarrollo, sin tener que especificar cmo se
implementa ese comportamiento.

Desarrolladores
Usuarios Finales
Expertos del dominio

Casos de
Uso

Comprensin
COMN del
Sistema

Filosofa de los C.U.


El sistema ser construdo PARA los usuarios Expresar las
necesidades desde el punto de vista de los usuarios.
Necesidades
Us. A

Us. C

Us. B

Caractersticas
Basados

en lenguaje natural.

Formalizacin

prxima al usuario.

Para reducir la complejidad


de las necesidades, se focaliza
la interaccin de una sola
categora de usuarios por vez
Particionamos el conjunto
de Necesidades

Ventajas
Los informticos son conducidos permanentemente
por las necesidades de los usuarios.
Los

C.U. obligan a los usuarios a describir y


precisar sus deseos.

Importancia de los C.U.


Usuario

Analista

Expresa

Comprende

Casos de
Uso
Realiza
Disea
Arquitecto

Verifica
Programador
Sw. Tester

Importante:

Los Casos de Uso guan todo el proceso de Desarrollo.

Diagramas de Casos de Uso


Los diagramas de C.U. se utilizan para modelar los aspectos
dinmicos de un sistema. Cada diagrama est compuesto de
Casos de Uso, Actores y Relaciones.

C.U. X
Actor A
C.U. Z

C.U. Y
Actor B

Elementos de un Diagrama de C.U.


Actor: Papel o rol interpretado por una persona, un dispositivo u
otro sistema, que interacta con el sistema.
Los

actores pueden representar Usuarios Directos, Responsables de uso o


mantenimiento, u Otros Sistemas.
Puede darse

que una persona represente varios actores (Ej: Vendedor/Cliente); o


bien que varias personas representen un actor (Ej: Cliente)
El

nombre del actor debe describir el ROL interpretado por el actor.

Para

encontrar los actores, se consideran las personas y las cosas que interactan
con el sistema intercambiando informacin de E/S Determina los lmites del
sistema.
Representacin grfica:

o bien, un estereotipo determinado.

Actores
Categoras de Actores:
Actor

Principal: Personas o roles que utilizan las funciones principales del sistema.

Actor

Secundario: Personas o roles que realizan tareas administrativas o de


mantenimiento.
Material Externo: Dispositivos materiales o perifricos que utiliza el sistema.
Otros

Sistemas: Sistemas con los que el sistema en desarrollo debe interactuar.

En la prctica:

Una vez identificados los actores Descripcin concisa (3-4 lneas).

Observar, actor por actor, los escenarios posibles, como secuencias de interaccin
Usuario Sistema desde el pto de vista del usuario Se abstraen dichas interacciones,
agrupndolas en Casos de Uso.
C/ vez que un actor interacta c/ el sistema, se produce una instancia del C.U., que
corresponde al flujo de mensajes intercambiado por los objetos durante la interaccin.

Relaciones
Los Casos de Uso se relacionan entre s y con los actores que intervienen en l.
Tipos de relaciones:
Relacin

de Comunicacin o Asociacin: Indica la comunicacin entre un actor y un


caso de uso. Significa que cada uno puede enviar y recibir mensajes. Rep. Grfica:
Caso de
Uso
Relacin

de Uso o Inclusin: Significa que una instancia del caso de uso fuente
comprende tambin el comportamiento del caso de uso destino. Se representa como
una dependencia estereotipada con <<include>>.
Hacer
Pedido

<<include>>

Validar
Usuario

Relaciones
Relacin

de Extensin: El caso de uso fuente extiende el caso de uso destino. Se


utiliza para modelar la parte de un caso de uso que el usuario ve como
comportamiento opcional del sistema. Se representa como una dependencia
estereotipada con <<extend>>.
Hacer
Pedido
Urgente

<<extend>>

Hacer
Pedido

Relacin

de Generalizacin: Representa un concepto similar que en el contexto de


los diagramas de clases. El CU hijo hereda el comportamiento y el significado del CU
padre. Grficamente, se representa de.la sgte manera:
Validar
Usuario
Comprobar
Clave

Relaciones - Ejemplo
Ejemplo: Transferencia entre cuentas bancarias.

Cliente Remoto

Cliente Local

Transf. x
Internet

<<extend>>
Hacer
<<include>> Transferencia

Identificar
Cliente

Comprobar
Clave

Examinar
Retina

Reglas para implementar C.U.


Un C.U. es una interaccin actor sistema. Esta interaccin debe describirse en
base a QU debe hacerse en el C.U., no CMO debe hacerse.
Un C.U. Debe ser simple.

Evitar el uso de expresiones borrosas o imprecisas. Ej: Mucho, Bastante, ms


bien, etc.

La

descripcin o curso tpico de eventos debe comprender lo siguiente:


El

inicio del C.U. (Evento que lo desencadena). Ej. El CU comienza


cuando...
El fin del C.U. (Evento de parada). Ej: Cuando X se produce el CU
termina
Cronologa de los eventos y respuestas.
Repeticiones de comportamiento.
Situaciones opcionales.

Reglas para implementar C.U.


Limitar el nivel de abstraccin y distinguir entre caso de uso y escenario.
Experiencia !!!

Escenario 3

Escenario 2

Escenario 4

Escenario 1

Caso de Uso

Escenario:

Camino particular a travs de la descripcin abstracta y general del


caso de uso.

Pasos para elaborar un C.U.


I . Identificar a grandes rasgos los Casos de Uso. (Gralmente. en
equipo)
II . Profundizar la comprensin Se identifican los distintos
escenarios y sus diferencias (para ello se realizan encuentros con
usuarios)
III . Una vez validados los C.U. con el despliegue de escenarios,
realizar una descripcin ms detallada de cada C.U. Todas las
necesidades identificadas en los escenarios deben estar contenidas en
un C.U.
IV . Reasignar los escenarios hurfanos en otros C.U.

Pasos para elaborar un C.U.


V . Validar los escenarios:
Existe una breve descripcin que da una imagen clara del C.U.?
Estn bien definidas las condiciones de arranque y parada?
Los usuarios estn satisfechos con las secuencias elaboradas?
Trminos iguales usados en distintos casos de uso, Tienen el mismo
significado?
El caso de uso contempla TODAS las alternativas?
Verificar la cantidad de C.U. En general, debe haber muchos
escenarios, pero pocos casos de uso. Esencia del sistema
comprendido

La transicin hacia los objetos.


Los C.U. centran el desarrollo sobre las necesidades del usuario, por
lo tanto ayudan a construir el sistema adecuado (Build the right
system), pero no definen la manera correcta de hacerlo (Build the
system right) ni la arquitectura.

Los C.U. son una descripcin funcional de las necesidades


estructuradas respecto a un actor. El paso al paradigma O.O. se
realiza asociando una o ms colaboraciones a cada caso de uso.
Cada escenario del C.U. se representa por una interaccin de los
objetos descriptos en el contexto del C.U.

La transicin hacia los objetos.


La realizacin de un C.U.
por una colaboracin es
un instante crucial del
modelado, ya que es el
momento del cambio
hacia el objeto.

Caso 1
<<include>>
Caso 2

Caso 3

Caso 1
Sistema
Obj. A
Caso 2

Caso 3

Funcin

Funcin

Caso 2

Caso X
Obj. C

Caso 1

Obj. B

Obj. D

Funcin
Obj. X

Funcin

Funcin

Caso 3

Obj. E

Si la descomposicin sigue directamente la forma de los casos de uso, conduce a


una aproximacin estructurada clsica, con todos los defectos que implican las
estructuras calcadas sobre las funciones.

Ejemplo: Mquina Expendedora de Caf


Consigna: Se solicita desarrollar un SW OO para controlar el
funcionamiento bsico de una mquina expendedora de caf.

Cliente

Comprar
Productos
<<extend>>

Solicitar
Reposicin

Centro de
Suministros

Reponer
Ingredientes
Responsable
de
Reposicin

Ejemplo: Mquina Expendedora de Caf


Actores:
Cliente: Persona que adquiere alguno de los productos que expende la mquina.
Resp. de Reposicin: Persona que reabastece a la mquina expendedora con los
suministros necesarios.

Centro de Suministros: Sistema que registra la orden de reposicin y solicita


servicio para la mquina.

Curso Tpico de Eventos:


C.U.: Comprar Productos

Actores: Cliente
Descripcin: El cliente llega a la mquina expendedora para comprar alguno de
los productos que se ofrecen.

Ejemplo: Mquina Expendedora de Caf


Accin del Actor

Respuesta del Sistema

1. El CU comienza cuando el Cliente


introduce una ficha.

2. El sistema verifica la validez de la


ficha.
3. El sistema habilita el panel de
opciones disponibles.

4. El Cliente selecciona un producto.

5. El sistema expende el producto


seleccionado.
6. Si alguno de los suministros queda
por debajo del nivel de reposicin,
<<extend>> (Solicitar Reposicin)
7. El CU termina cuando el sistema
deshabilita el panel de opciones y
deja a la mquina en un estado de
reposo.

Acciones Alternativas: Paso 2. Si el sistema no puede verificar la validez de la


ficha, la devuelve y el CU termina.

Ejemplo: Mquina Expendedora de Caf


C.U.: Reponer Ingredientes
Actores: Responsable de Reposicin
Descripcin: El operador llena la mquina expendedora con los suministros que
sean necesarios para llenar su depsito.
Accin del Actor

Respuesta del Sistema

1. El CU comienza cuando el Resp.


de Reposicin abre la mquina para
acceder al depsito.

2. El sistema desactiva la mquina.

3. El Resp. de Reposicin llena los


depsitos de cada ingrediente.
4. El Resp. de Reposicin cierra la
mquina.

5. El sistema hace un chequeo de su


estado interno.
6. El CU termina cuando el sistema
activa la mquina y queda en un
estado de reposo

Ejercicio: Punto de Ventas


Consideremos un establecimiento comercial donde se realizan
numerosas ventas de diferentes artculos, con muchos clientes al
mismo tiempo, en donde para cancelar se forman muchas colas en
distintas cajas.
Se solicita desarrollar un Sw. OO que agilice las operaciones de
cobro, capture datos sobre las ventas de manera precisa, y alimente
un sistema de control automtico de inventario.

Vous aimerez peut-être aussi