Sesion 9 1 secuencias y estados
-
Upload
julio-pari -
Category
Documents
-
view
539 -
download
1
Transcript of Sesion 9 1 secuencias y estados
Secuencias y Estados
Lic. César Alcántara Loayza
2CAL/Fundamentos
Criterio para las clases analisis del problema: Los siguientes elementos vienen a ser buenos
candidatos para clases de dominio del problema:
Actores Suministros y Materiales Productos Registros de transacciones, como adquisición, ventas,
mantenimiento y disposición.
Análisis Del Problema
3CAL/Fundamentos
Buenas clases del dominio del problema para una tienda de flores: Actores: Tomador de orden, Floristas,
Conductores, personas de ventas, tenedor de libros.
Suministros y materiales: Flores, Papel, vasos, alambre, tarjetas y asi.
Análisis Del Problema
4CAL/Fundamentos
Productos: arreglos de flores, artículos de regalo.
Registros: Ordenes, despachos, recepción de ventas, factura del cliente, factura del proveedor.
Análisis Del Problema
5CAL/Fundamentos
Identificar Clases y objetos Inspección gramatical a partir del vocabulario
del dominio del problema. 1. Encontrar nombres – Leer la declaración del
problema y la documentación asociada y destaque los nombres, sustantivos. Los sustantivos se transforman en clases u objetos o atributos, o valores de atributos. De igual forma los verbos revelan operaciones u asociaciones.
Análisis Del Problema
6CAL/Fundamentos
Análisis Del ProblemaTexto Elemento del ModeloSustantivo Objeto (útil como data de prueba
ClaseAtributoValor de Atributo
Verbo AsociaciónOperaciónEvento
Adjetivo Estado
7CAL/Fundamentos
2. Evalúe los nombres (sustantivos) para hallar las clases: Algunas preguntas:
¿Es el término necesario dentro del alcance del proyecto?
Si es así, ¿El nombre califica como recurso del dominio del problema? Pensar en el nombre de clase apropiado para el recurso del dominio al cual se refiere el nombre.
De otro modo, ¿ el nombre es un ejemplar de clase, por ejem. Un objeto, una instancia de una clase? – escriba este hecho para referirlo cuando se necesite data de prueba.
Análisis Del Problema
8CAL/Fundamentos
De otro modo, ¿es el nombre un atributo de una clase?, ¿de que clase?. Escríbalo.
De otro modo, ¿el nombre es un ejemplar de atributo, un valor de atributo’ escriba este hecho para referirse a el cuando necesite data de prueba.
Asegúrese de concordar los términos. Frecuentemente encontrará sinónimos.
Análisis Del Problema
9CAL/Fundamentos
3. Defina el propósito – Describa porque la clase es un recurso necesario del dominio del problema. Ejem. “nuestro auditorio es utilizado por tipos diferentes de eventos. Algunos eventos son de una sola vez, tales como juego de Basquet. Otros eventos comprenden una número de presentaciones como obras o conciertos”
Análisis Del Problema
10CAL/Fundamentos
Análisis Del ProblemaTérminos No es clase Clase Propósito Clase
Auditorio Auditorio El lugar donde se llevan a cabo los eventos y para los cuales se venden boletos
Evento Evento Una actuación negociada por el planeador de eventos y llevada a cabo en una o mas presentaciones.
Juego Basquet
tipo de evento
Presentación Presentación Un simple presentación de un evento
Obra Tipo de evento
Concierto Tipo de evento
11CAL/Fundamentos
Máquina de Estados Muchos objetos requieren la aplicación
de una máquina de estados. Una máquina de estados describe un objeto en términos de los estados que atraviesa desde su creación hasta su terminación. El movimiento de un estado a otro se activa por los eventos. La transición real de un estado a otro se logra por una acción.
12CAL/Fundamentos
Estado y Transición Estado:
La condición de un objeto en un punto del tiempo.
Transición: Un cambio de un estado a otro estado dentro
de un objeto.
13CAL/Fundamentos
Diagrama de Estados El diagrama de transición de estados
es el estandar UML para modelar respuestas del objeto a los eventos y para rastrear las transiciones en los estados del objeto. El diagrama de transición de estados proporciona la notación para describir eventos, estados, transiciones, acciones, y actividades para un objeto.
14CAL/Fundamentos
Diagrama de Estados En muchos sistemas, existen al menos
unas pocas clases de objeto clave que sufren cambios sustanciales durante su tiempo de vida. Para estos objetos, un único evento puede resultar en muchas respuestas diferentes basadas en las condiciones actuales del objeto. La condición del objeto es referida como el estado del objeto.
15CAL/Fundamentos
Estado del objeto: El estado se define por los valores de los atributos y las relaciones del objeto. Por ejemplo, cuando se abre una cuenta de crédito, un intento de comprar un artículo resultaría en una comparación del monto comprado y el crédito disponible. Cuando la cuenta de crédito es cerrada, un intento de comprar artículos resultaría en un error.
Diagrama De Estados
16CAL/Fundamentos
Igualmente, una relación puede provocar una respuesta diferente. Por ejemplo, cuando en el sistema de boletaje un AsientoPresentación no está asociada con un NivelDePrecio, no puede venderse. Una vez que se establezca el enlace con el NivelDePrecio, el AsientoPresentación se puede vender.
Diagrama De Estados
17CAL/Fundamentos
El diagrama de estados no se usará para todas las clases del modelo. El diagrama de estados es una herramienta de propósito especial que se emplea solo para objetos que poseen substancial comportamiento de estados específico. ¿cómo reconcer esos objetos? ...
Diagrama De Estados
18CAL/Fundamentos
Una técnica es revisar los diagramas de interacción e identificar aquellos objetos que participan en muchos, o mas aún todos, los escenarios. Específicamente, busque aquellos objetos que tengan mas flechas de evento entrantes, pues cada evento entrante tiene el potencial de cambiar el estado actual del objeto.
Diagrama De Estados
19CAL/Fundamentos
A B C
El objeto permanece en una condición o estado hasta que algo le ocurra al objeto que active un cambio en el estado llamado “transición”.
Diagrama De Estados
20CAL/Fundamentos
Revisión D. Estados Notación Revisar la notación del diagrama de estados en la
presentación: UML – Diagrama de Estados.
En el siguiente ejemplo se ayuda a empezar la construcción de un diagrama de estados usando un diagrama de secuencia como fuente. Los ejemplos son muy pequeños de modo que se puede enfocar en los mecanismos mas que en la complejidad del dominio del problema. Pero la misma estrategia se puede emplear a media que la complejidad del dominio se incrementa.
21CAL/Fundamentos
Identifique los estados.
Revisión D. Estados Notación
aGestionFacilidad aPresentación aAsientoPresentación
CrearPresentación
CrearAsientoPresentación
Hecho
Hecho
El objeto no existe hasta que el el evento lo crea. El objeto comienza en un estado inicial: “sin precio, no seleccionado, y no vendido”
Caso de Uso: Planear PresentaciónEscenario: Programar Presentación con éxito
22CAL/Fundamentos
Identifique los eventos que activan la transición entre estados.
Revisión D. Estados Notación
aGestionFacilidad aPresentación aAsientoPresentación
CrearPresentación
CrearAsientoPresentación
Hecho
Hecho
Transición eventos
Caso de Uso: Planear PresentaciónEscenario: Programar Presentación con éxito
23CAL/Fundamentos
Dibuje el diagrama de estados
Revisión D. Estados Notación
aGestionFacilidad aPresentación aAsientoPresentación
CrearPresentación
CrearAsientoPresentación
Hecho
HechoSin precio
No separadoNo vendido
Caso de Uso: Planear PresentaciónEscenario: Programar Presentación con éxito
24CAL/Fundamentos
Mezcle el nuevo diagrama con el diagrama previo para formar un único diagrama de estados para el AsientoPresentación.
Revisión D. Estados Notación
aGestionFacilidad aAsientoPresentación
Precio(NivelDePrecio)
Hecho
Sin precioNo separadoNo vendido
Con precioNo separadoNo vendido
Precio(NivelDePrecio
Caso de Uso: Planear PresentaciónEscenario: Programar Presentación con éxito
25CAL/Fundamentos
NoDisponible Disponible Separado Vendido
AsientoPresentaciónestado
Sin precioNo separadoNo vendido
Con precioNo separadoNo vendido
con precioseparado
No vendido
con precioNo separado
vendido
RemoverPrecio()
Reembolsar()
Precio(NivelPrecio)
Cancel() Select()
Compra(TipoPrecio)
Patron Diseño de Estado
No Disponible
Disponible
Separado
Vendido
Para cada estado en el diagrama de estados, crear su correspondiente definición de clase.