Sunteți pe pagina 1din 46

MATERIAL MULTIMEDIAL REQUERIDO

Asignatura Análisis de Sistemas Administrativos

Módulo I

Unidad 3
Herramientas de Modelado del Análisis y Diseño
Orientado a Objetos

Diapositiva/1
Mg. Carlos Gerardo Neil

Diapositiva/2
CASOS DE USO

Diapositiva/3
Ingeniería de Requisitos

• La Ingeniería de Requisitos direcciona el proceso de elicitación,


definición, modelado, análisis, especificación y validación de los
requisitos de un sistema y de su software, basado en un enfoque
sistemático, separando el "qué" del "cómo" del diseño.

Diapositiva/4
¿Qué es un Requisito?

• Flujo de trabajo fundamental cuyo propósito esencial es orientar


el desarrollo hacia el sistema correcto

• Esto se lleva a cabo mediante la descripcion de los requisitos del


sistema de forma tal que se pueda llegar a un acuerdo entre el
cliente (usuario) y los desarrolladores del sistema, acerca de lo
que el sistema debe hacer y lo que no

• El conjunto de todos los requisistos forman la base para el


desarrollo del sistema o el componente de sistema

Diapositiva/5
Tipos de Requisitos

• Funcionales: especifica una acción que debe ser capaz de


realizar el sistema, sin considerar restricciones físicas

• No funcionales: especifica restricciones físicas sobre un


requisito funcional (rendimiento, plataforma, fiabilidad)

Diapositiva/6
Requisitos y Casos de Uso

• Los casos de uso son una técnica para la especificación de


requisitos funcionales propuesta inicialmente por Jacobson
(1992)

• Los casos de uso presentan una ventaja sobre la descripción


textual de los requisitos funcionales

• Los casos de uso son, ante todo, requisitos funcionales

• A pesar de ser una técnica ampliamente aceptada, existen


múltiples propuestas para su realización

Diapositiva/7
¿Qué es un caso de uso?

• Los casos de uso son una técnica que se utiliza para documentar los
requerimientos funcionales de un sistema desde el punto de vista de
los usuarios

• Los casos de uso responden a la pregunta: ¿Qué se supone que el


sistema debe hacer para los usuarios?

• Un caso de uso es un texto muy simple con cierto formato que


describe como se debería comportar un sistema ante la interacción
con uno o más usuarios

Los casos de uso no son “orientados a objetos”

Diapositiva/8
Ventajas de los casos de uso

• Los casos de uso sirven como una forma de


comunicación entre personas de uno o varios equipos
de trabajo, estimulando la discusión acerca del
comportamiento del sistema en cuestión

• Los casos de uso sirven, por su simpleza, para validar


los requerimientos directamente con los (futuros)
usuarios del sistema

Diapositiva/9
Diagrama de Casos de Uso

actor 2 <<extend>>
caso de uso 2

caso de uso 1

<<include>> actor 1
caso de uso 4

caso de uso 3

Diapositiva/10
Casos de Uso

Describe tanto lo que hace el actor como lo que hace el


sistema cuando interactúa con él

Están acotados al uso de una determinada funcionalidad,


claramente diferenciada, del sistema

caso de uso
Actor

Diapositiva/11
Actores y Escenarios

Un actor representa un conjunto coherente de roles que juegan


los usuarios de los casos de uso cuando interactúan con éstos
Un escenario es una secuencia específica de acciones entre los
actores y el sistema (es una instancia de un caso de uso)

externo al persona
sistema sistema
máquinas

Interactúa con
el sistema

actor

Diapositiva/12
¿Qué es un actor?

• Alguien o algo que interactúa con el sistema (una


persona, una organización, un programa o sistema de
hardware o software)

• Un actor estimula al sistema con algún evento o recibe


información del sistema

• Un actor es externo al sistema

• Un actor cumple un rol definido (Ej.: Cliente, Banco,


empleado)

Diapositiva/13
Tipo de Actores

• Actores primarios: utilizan las funciones principales del


sistema

• Actores secundarios: efectúan tareas administrativas o de


mantenimiento
<< actor>>

TARJETA DE
0..1 CREDITO

0..*
secundario

Cliente
CVLI << actor>>
secundario
GESTOR
DE LIBROS
0..1

0..1
secundario << actor>>

Administrador Sistema 0..1 GESTOR


DE ENVIO

Diapositiva/14
¿Qué es una asociación?

• Muestra la relación entre los actores y los casos


de uso

• El actor inicia la • El actor recibe la


comunicación comunicación del caso
de uso

Diapositiva/15
Relación de <<include>>

Es común que la misma funcionalidad del sistema sea accedida a


partir de varios casos de uso

<<include>>

Caso de Uso A Caso de Uso B

Diapositiva/16
¿Cuándo se utiliza la inclusión?

• Cuando un caso de uso incorpora explícitamente el


comportamiento de otro caso de uso
• Para evitar repeticiones de descripción de flujos

• Cuando distintos casos de uso poseen un conjunto de


eventos con la misma funcionalidad. Estos eventos se
pueden factorizar en un nuevo caso de uso, el cual se
relacionará con los anteriores mediante la relación de
inclusión

• Cuando un caso de uso es muy extenso y difícil de leer

Diapositiva/17
Relación de <<extend>>

La funcionalidad de un caso de uso incluye un conjunto de


pasos que ocurren sólo en algunas oportunidades

La excepción consiste en interrumpir el caso de uso B y


pasar a ejecutar otro caso de uso A

<<extend>>

Caso de Uso B Caso de Uso A

Diapositiva/18
Relación de <<extend>>

• En la relación de extensión, existe un caso de uso base el


cual es extendido por otro caso de uso

• La extensión se realiza a partir de los puntos de extensión y


este caso de uso es utilizado en esos puntos si se cumple una
condición

• El caso de uso base no necesita nombrar al o a los casos de


uso que lo extienden

• El caso de uso que extiende, nombra al caso de uso base,


nombra al o a los puntos de extensión e incluye la condición
que determina si se toma o no la extensión.

Diapositiva/19
Ejemplo de extensión Caso de uso
base

Caso de uso PROCESAR VENTA


Punto de extensión: pago, paso 7
Escenario principal
1. el cliente llega al puesto de
venta con mercaderías para
comprar Puntos de
…. extensión
….
7. El cliente paga y gestiona el
pago

Caso de uso PAGO CON VALE REGALO


Condición: el cliente quiere pagar con vale
regalo
Puntos de extensión: pago en PROCESAR
VENTA
Escenario principal Caso de uso
que extiende
1. el cliente le da el vale regalo al
cajero
Condición 2. …

Diapositiva/20
¿Cuándo se utiliza la extensión?

• Cuando se desea describir una variación del comportamiento


normal de un caso de uso.
• Para conjuntos de eventos que son ejecutados solamente en
ciertos casos.

• Cuando la sección de flujos alternativos de un caso de uso se


torna muy grande y difícil de leer, es conveniente crear
nuevos casos de usos a partir de estos flujos alternativos que
extiendan al caso de uso original.

Diapositiva/21
¿Cómo encontrar actores?

Una buena técnica para encontrar posibles actores es responde las


siguientes preguntas:

• ¿Quién usa el sistema?


• ¿Quién instala o mantiene al sistema?
• ¿Qué otros sistemas utilizan al sistema?
• ¿Quién recibe información del sistema?
• ¿Quién le provee información al sistema?

Diapositiva/22
un ejemplo...

Consultar libros Consultar novedades Consultar ofertas


en general
<<extend>>

<<extend>>
<<extend>>

Consultar libro

Cliente

Diapositiva/23
un ejemplo...

Consultar novedades
Consultar libros Consultar ofertas
en general
<<extend>>

<<extend>>
<<extend>>

<<include>> <<include>>
Consultar libro

buscar libros comprar libro

Cliente

Diapositiva/24
Comenzamos con el caso práctico...

Diapositiva/25
Compañía de Ventas de Libros por Internet
(CVLI)

• El cliente accede a la información sobre los libros a través de


la Web
• El cliente elegirá un nombre de usuario y una clave como
método de autentificación para efectuar las transacciones
• El cliente podrá realizar búsquedas por autor, título o ISBN
• El cliente debe estar previamente registrado
• El cliente puede establecer preferencias de envío
• El cliente puede introducir opciones de empaquetado
• La librería deberá recoger los datos de los pedidos
• La librería deberá rearmar en uno único los pedidos aislados
que estén dentro del plazo de 90 minutos
• La empresa puede realizar envíos parciales en función de la
disponibilidad de los ítems

Diapositiva/26
Identificación de los actores

• Cliente (primario)
• Administrador del sistema (primario)
• Tarjeta de crédito (secundario)
• Gestor de libros (secundario)
• Gestor de envío (secundario)

Diapositiva/27
Diagrama de Contexto

Permite determinar las fronteras del sistema

<< actor>>

TARJETA DE
0..1 CREDITO

0..*
secundario

Cliente
CVLI << actor>>
secundario
GESTOR
DE LIBROS
0..1

0..1
secundario << actor>>

Administrador Sistema 0..1 GESTOR


DE ENVIO

Diapositiva/28
Pre y Pos Condiciones

Precondiciones: establece lo que siempre debe cumplirse


antes de comenzar un caso de uso. No se prueban en el caso
de uso, se asumen que son verdaderas

Poscondiciones: establece qué debe cumplirse cuando el caso


de uso se completa con éxito

Diapositiva/29
Identificación de los Casos de Uso

Cliente
Registrarse al sistema
Consultar libro
Comprar libro
Establecer preferencias de envío y empaquetado

Administrador del sistema


Armar pedidos
Rearmar pedidos

Diapositiva/30
Diagrama de Casos de Uso

Registrarse al sistema
Gestor de Libros

Consultar libro

Tarjeta de Crédito
Cliente

Comprar libro Armar pedidos

Rearmar pedidos Administrador del


Establecer preferencias
Sistema
de envío y empaquetado

Diapositiva/31
Descripción de los Casos de Uso

Titulo: Registrarse al sistema


Resumen: el cliente, antes de realizar una primera transacción
de compra o búsqueda de libros, debe introducir todos sus
datos por única vez, los cuales serán guardados por el
sistema. Éste le ofrecerá la posibilidad de tener una clave y
contraseña que utilizará para cada transacción que realice
posteriormente. El cliente tendrá la posibilidad de hacer
cambios en los datos introducidos, incluso en su clave y
contraseña.
Actores: cliente (primario), tarjeta de crédito (secundario)

Diapositiva/32
Descripción de los Casos de Uso

Titulo: Consultar libro


Resumen: el cliente, una vez ingresado al sistema, podrá
navegar por el mismo en búsqueda de libros, novedades,
ofertas, etc.
Actores: cliente (primario), gestor de libros (secundario)

Diapositiva/33
Descripción de los Casos de Uso

Titulo: Comprar libro


Resumen: el cliente, una vez ingresado al sistema, podrá
realizar compras de libros, eligiéndolo de una lista ofrecida
por la empresa. Cada libro elegido se sumará a un carrito de
compra, etc. El cliente informará el número y tipo de tarjeta
de crédito para realizar el pago. Deberá especificar dirección
de envío y forma de pago.
Actores: cliente (primario), gestor de libros (secundario), tarjeta
de crédito (secundario)

Diapositiva/34
Consultar libros Consultar novedades Consultar ofertas
en general
<<extend>>

<<extend>> <<extend>>

Gestor de Libros

Consultar libro
Cliente
<<include>>

Tarjeta de Credito

Comprar libro
<<extend>>

Refinamiento: include y
extend Establecer preferencias
de envío y empaquetado

Diapositiva/35
Desarrollo de un Caso de Uso

Titulo: Registrarse al sistema


Actores: cliente (primario), tarjeta de crédito (secundario)
Fecha de creación:
Fecha de actualización:
Versión

Precondición: el cliente ingresa al sistema por primera vez

Diapositiva/36
Escenario principal

1. El cliente ingresa a la página Web de CVLI


2. El cliente ingresa a la opción “registración“
3. El sistema solicita ingreso de los datos personales: nombre y apellidos, dirección,
localidad, código postal, país
4. El cliente ingresa los datos personales
5. El sistema evalúa el país de origen y solicita ingreso de los datos de la tarjeta de
crédito: tipo de tarjeta, número, fecha límite de validez
6. El cliente ingresa datos de la tarjeta de crédito
7. El sistema chequea el número de la tarjeta de crédito
8. El sistema (teniendo en cuenta el país de origen) solicita la opción de preferencia
de envío por omisión, esta opción puede modificarse en cada envío
9. El cliente ingresa preferencia de envío
10. El sistema solicita, para finalizar, el ingreso de la clave de acceso y la contraseña
11. El cliente ingresa clave y contraseña
12. El sistema solicita reingreso de contraseña
13. El cliente reingresa contraseña
14. El sistema informa que la transacción se realizó correctamente

Diapositiva/37
Flujo alternativo

A1 Ingreso incorrecto de los números de los datos


La secuencia comienza en el punto 4 del escenario principal
5. El sistema informa que los datos ingresados son incorrectos
6. El sistema pide ingreso de números nuevamente
El escenario vuelve al punto 5

A2 Ingreso incorrecto de los números de la tarjeta de crédito


La secuencia comienza en el punto 7 del escenario principal
7. El sistema informa que los números ingresados son incorrectos
8. El sistema evalúa si la cantidad de veces que ingreso el número
de tarjeta en forma incorrecta es menor a 3
9. El sistema pide ingreso de números nuevamente
El escenario vuelve al punto 8

Poscondición: el cliente está registrado en el sistema

Diapositiva/38
Refinamiento de los casos de uso

Contratos

Diapositiva/39
Contratos

• Los contratos describen el comportamiento detallado del


sistema en función de los cambios de estado de los
objetos del modelo de dominio, después de la ejecución de
una operación del sistema

• El conjunto completo de las operaciones del sistema, de


todos los casos de uso, define la interfaz pública del
sistema

Diapositiva/40
Secciones de un contrato

Operación: nombre de la operación con


sus parámetros

Precondiciones: suposiciones relevantes sobre el


estado del sistema antes de la
ejecución de la operación

Poscondiciones: estado de los objetos del modelo


de dominio después que se complete
la operación

Diapositiva/41
Poscondiciones

No son acciones que se ejecuten durante la ejecución de la


operación, describe los cambios de estado de los objetos
del modelo de dominio

Estos cambios comprenden:

• Creación o eliminación de instancias


• Formación o rotura de asociaciones
• Modificación en los atributos

Diapositiva/42
Guía para hacer contratos

1. Identifique las operaciones del sistema a partir de los DSS


´s
2. Construya un contrato para cada operación del sistema que
sea compleja
3. Para describir las postcondiciones utilice las siguientes
categorías:
Creación o eliminación de instancias
Formación o rotura de asociaciones
Modificación en los atributos

Diapositiva/43
Algunas consideraciones …

• Las poscondiciones no son acciones que se ejecuten


durante la operación; son declaraciones sobre los objetos
del dominio que son verdad cuando la operación ha
terminado

• Durante la creación de contratos, es normal descubrir la


necesidad de agregar al modelo de dominio nuevas clases
conceptuales, atributos o asociaciones

Diapositiva/44
Algunos puntos a tener en cuenta....

• Los casos de uso son texto, no gráfico


• Comenzar identificando y nombrando los casos de uso
más importantes
• Comenzar por una descripción no necesariamente
completa ni exacta y después refinarla
• En cada iteración del proceso de desarrollo se amplía la
funcionalidad del caso de uso

Diapositiva/45
Diapositiva/46

S-ar putea să vă placă și