sesion 3 2 modelo de analisis
TRANSCRIPT
Modelo De Análisis
Lic. César Alcántara Loayza
CAL/Modelo de Análisis
Conceptos ¿Que es un documento de visión?:
Explica las características del usuario (demographics), sus perfiles, ambientes y requerimientos.
Expresa la visión en términos de casos de uso. Describe brevemente las oportunidades del
negocio identificadas por el proyecto. Identifica la capacidad necesaria del sistema
para lograr beneficios al usuario. Identifica los problemas resueltos por el
Sistema de información.
CAL/Modelo de Análisis
Asociaciones Los vinculos de Asociación conectan elementos
similares del modelo en diagramas de casos de uso. Veremos vínculos <<extends>> e <<includes>>. Muchas veces, la misma funcionalidad es compoartida por varios casos de uso diferentes. Una asociación unidireccional proporcionma una ruta de comunicación. La comunicación puede ser entre casos de uso y actores, entre dos clases o entre una clase y una interface. Las asociaciones son las mas comunes de los vinculos y consecuentemente los mas débiles semanticamente. Si los dos objetos son considerados independientes, el vínculo es una asociación.
CAL/Modelo de Análisis
Diagramas de Casos de Uso
Un diagrama de Casos de uso del sistema describe gráficamente el comportamiento del sistema. Estos diagramas presentan una vista de alto nivel del sistema desde una perspectiva externa. Un diagrama de casos de uso puede mostrar todos o algunos de los casos de uso del sistema. Durante el análisis de requerimientos se crea el Diagrama de casos de uso. ¿Que cosas contiene un diagrama de casos de uso?:
Actores - “cosas" fuera del sistema Casos de Uso – funciones del sistema Interacciones o vínculos entre actores y casos de uso,
incluyendo asociaciones y generalizaciones .
CAL/Modelo de Análisis
Extend e Include
Un relación extend entre casos de uso opcionalmente adiciona la funcionalidad de otro caso de uso cuando ciertas condiciones se alcanzan. Una relación include significa que un caso de uso forma parte siempre de la funcionalidad de otro caso de uso.
CAL/Modelo de Análisis
El modelo de Análisis El modelo de análisis es un modelo
de objetos que describe la realización de los casos de uso del sistema, y sirve como una simplificación del modelo de diseño. Alguno de las elementos con los que se trabaja aquí son : clases objeto, diagramas de clase, diagramas de secuencia y diagramas de estados.
CAL/Modelo de Análisis
Clases De Análisis Uno de los mas comunes elementos hallados
en el modelo de análisis son las clases de análisis, o algunas veces llamados objetos de análisis. Las clases de análisis son clases estereotipadas que representan un modelo conceptual inicial para elementos en el sistema que tienen responsabilidad y comportamiento. Existen tres tipos de clases de análisis y ellas son usados en todo el modelo de análisis:
Interfaz Control Entidad.
CAL/Modelo de Análisis
Clase interfaz Una clase interfaz es una clase estereotipada que
modela la interacción entre uno o mas actores y el sistema. Puede usar las clases interfaz para capturar los requerimientos de una interface de usuarios. Las clases interfaz pueden ser ventanas, impresoras, sensores y terminales. Puede ser una pantalla de logon, la clase interfaz pantalla de logon representa una interface que el empleado debe usar para ganar acceso al sistema. Esta le pedirá un user id y una contraseña. La pantalla de Logon se conecta con la clase control Verifica Logon a través de una asociación pues la clase de control verifica logon debe confirmar que aquel user id y contraseña es correcta.
CAL/Modelo de Análisis
Clases De Análisis
Clerk Profile
Clerk Repository
Active POS Machines
Logon ScreenVerify Login
Retail Sale
POS Screen
Create Retail Sale
Receipt Printer
CAL/Modelo de Análisis
Clase Control Una clase control modela el comportamiento específico
de uno o unos pocos casos de uso. Una clase control frecuentemente controla otros objetos y encapsula el comportamiento específico del caso de uso. Las clases control coordinan el comportamiento del sistema y ellas representan la dinámica de un sistema, manejando las tareas principales y flujo de control. Revise las clases de control Verify Login y create retail sale. La clase Verificar Logon representa la dinámica del sistema cuando este valida la información de logon y registra a la máquina como como una máquina activa POS. La clase Crear venta al detalle (Create Retail Sale) coordina la busqueda del producto y el pago en efectivo o crédito.
CAL/Modelo de Análisis
Clases De Análisis
BarCode Scanner
ProductStore Inventory
Cash Drawer
Retail Sale
POS Screen
Scan ProductAccept Payment
Create Retail Sale
Receipt Printer
CAL/Modelo de Análisis
Clase Entidad
Una clase entidad modela la información almacenada por el sistema y su comportamiento asociado. Una clase entidad tiene características de persistencia que son frecuentemente reusadas en otros casos de uso del sistema. Las clases Entidad muestran la estructura de datos lógica del sistema. La clase “Clerk Profile” contiene el archivo de trabajo del oficinista mientras que la clase “active POS machines” almacena toda la información de las máquinas que han estado “logeadas” al sistema.
CAL/Modelo de Análisis
Clases De Análisis
Clerk Profile
Clerk Repository
Active POS Machines
Logon ScreenVerify Login
POS Screen
CAL/Modelo de Análisis
Realización del caso de uso
Una realización de caso de uso representa la perspectiva de diseño de un caso de uso. Es un elemento de organización del modelo usado para agrupar un número de artefactos relacionados al diseño de un caso de uso. Los casos de uso estan separado de sus realizaciones de modo que puedan manejarse individualmente y de este modo pueda cambiar el diseño del caso de uso sin afectar los casos de uso base. Para cada caso de uso en el modelo de casos de uso existe una realización de casos de uso en el modelo de diseño con una dependencia (estereotipada «realize») hacia el caso de uso.
CAL/Modelo de Análisis
Browse Catalog
Browse Catalog
(from eCommerce System)
<<realizes>>
Place Order
(from eCommerce System)
<<extend>>
Place Order
<<realizes>>
Realización del caso de uso
CAL/Modelo de Análisis
Realización del Caso de uso y diagramas de
interacción Para cada realización de casos de uso existen uno
o mas diagramas de interacción que muestran objetos y sus interacciones. Los diagramas de interacción muestran como cada clase Interfaz, Control y Entidad se corresponden y relacionan una a otra. Ambos tipos de diagramas, de secuencia y colaboración, muestran similar información de diferente manera. Los diagramas de secuencia muestran como los objetos interactúan para ejecutar el comportamiento de un caso de uso cronológicamente. Los diagramas de colaboración muestran las relaciones entre los objetos.
CAL/Modelo de Análisis
Realización de CUS Insumo es el Modelo de Casos de Uso:
CAL/Modelo de Análisis
Clases de Análisis Cada CUS puede tener uno o mas
diagramas de clases
CAL/Modelo de Análisis
Diagramas de colaboración
Describe parte del flujo de eventos. Muestra los objetos y las clases a las que pertenecen (subrayadas). NombreObjeto : NombreClase
CAL/Modelo de Análisis
Realización de casos de uso con Diagramas de
Colaboración Sobre cualquier diagrama de interacción
presionando la tecla F5 se muestra el diagrama opuesto. Por ejemplo si presiona F5 estando en un diagrama de secuencia aparecerá el diagrama de colaboración correspondiente. Sobre el diagrama de colaboración, se organizan los objetos y mensajes para tener una mejor vista de la interacción entre los objetos. Note la numeración en el diagrama de colaboración “Credit Sale”. La numeración de los mensajes identifican el orden de los eventos en el tiempo a medida que los mensajes fluyen de objeto a objeto.
CAL/Modelo de Análisis
: BarCode Scanner
: Sales Clerk : POS Screen
: Create Retail Sale
: Retail Sale
: Store Inventory
: Product : Cash Drawer
: Receipt Printer
2: new sale
3: create 4: item( aProductCode )
5: get product(String)
6: add(Product, Integer, Currency)
9: total sale
10: get total()
12: cash accepted(amount)
13: compute change()
14: open
16: closed
17: print transaction( aRetailSale )
1: new sale7: adjust quantity
8: total sale11: enter cash accepted
15: add cash, return change
: BarCode Scanner
: Sales Clerk : POS Screen
: Create Retail Sale
: Retail Sale
: Store Inventory
: Product : Cash Drawer
: Receipt Printer
2: new sale
3: create 4: item( aProductCode )
5: get product(String)
6: add(Product, Integer, Currency)
9: total sale
10: get total()
12: cash accepted(amount)
13: compute change()
14: open
16: closed
17: print transaction( aRetailSale )
1: new sale7: adjust quantity
8: total sale11: enter cash accepted
15: add cash, return change
Realización de casos de uso con Diagramas de
Colaboración
CAL/Modelo de Análisis
: Sales Clerk : POS Screen : Create Retail Sale
1: new sale2: new sale
3: create
4: item( aProductCode )
6: add(Product, Integer, Currency)
5: get product(String)
7: adjust quantity
Continue to scan items until there are no more left
Realización De Casos de uso y Diagramas De Interacción
CAL/Modelo de Análisis
Realización de Casos de Uso con Diagramas de Secuencia
Ejemplo: El equipo de análisis ha creado dos diagramas de secuencia bajo la realización del caso de uso “Process Sale” Cada diagrama representa un flujo separado en el sistema. Un diagrama representa un flujo de venta al crédito y el otro diagrama representa un flujo de venta al contado. Ambos diagramas utilizan muchas de las mismas clases de análisis, pero el orden cronológico entre clases es diferente. Se muestra todas las clases en el tope del diagrama y los mensajes que muestran el flujo cronológico de eventos entre clases en el diagrama de secuencia.
CAL/Modelo de Análisis
Diagrama de estados Un diagrama de estados es una máquina de estados
que modela el comportamiento cambiante de un estado. Los diagramas de estado muestran los varios estados por los cuales un objeto pasa, asi como los eventos que causan una transición de un estado a otro. Por ejemplo suponiendo hallamos ordenado un nuevo computador desde una tienda en línea. Pocos dias despues de haber colocado la orden llamamos al departamento de servicios al cliente y preguntamos acerca del estado de nuestra orden. El representante de servicio responde diciendo que “el pago está pendiente" o la orden ha sido “enviada“. “pago pendiente" o “enviada" son “estados" de la orden. Un diagrama de estados representa los estados del ciclo de vida de un objeto.
CAL/Modelo de Análisis
Diagrama de estados Lo que contiene un diagrama de estados:
Estados Inicio y Final Transiciones Entry, do, y exit
Un estado representa una condición durante la vida de un objeto durante la cual este satisface algunas condiciones o espera por algún evento. Los estados de inicio y final representan el principio y el final de un proceso. Una transición de estados es una relación entre dos estados que indica cuando un objeto puede mover el enfoque de control hacia otro estado cuando ciertas condiciones se alcanzan.
CAL/Modelo de Análisis
Diagrama de estados Cada estado en un diagrama de estados puede
contener multiples acciones internas. Una acción es descrita como una tarea que toma lugar dentro de un estado, existen cuatro posibles acciones:
On entry On exit Do On event
La clase online order es compleja y necesita un diagrama de estados que muestre los estados de la clase.
CAL/Modelo de Análisis
New Order
do/ add line items
Customer Order
Completed Request
entry/ authorize payment
Confirmed
entry/ notify customer
Shipped
entry/ notify customer
Canceled
entry/ record cancellation
create new
line item added
add customer information
payment information added
payment received
shipped to customer
after 15 min.
payment rejected
Diagrama de estados