lunes, 13 de agosto de 2007

Informática

Tabla de Contenidos

Tema

Página
Índice ------------------------------ 1
Diagrama de secuencia ------------------------------ 2
Definición ------------------------------ 2
¿Para que sirven los diagramas? ------------------------------ 2
Características de los diagramas de secuencia ------------------------------ 2
Elementos de los diagramas de secuencia ------------------------------ 3
Construcción de un diagrama de secuencia. ------------------------------ 3
Asignación de nombres a eventos y operaciones. ------------------------------ 3
Descripción del curso normal de eventos. ------------------------------ 4
Línea de vida de um objeto. ------------------------------ 4
Foco de control de Activación. ------------------------------ 4
Mensajes de los diagramas de secuencia ------------------------------ 5
Ejemplos. ------------------------------ 5
Ejemplo Maquina de hacer café instantánea ------------------------------ 5
Segundo Ejemplo. ------------------------------ 6
Descripción de los eventos del segundo ejemplo.
------------------------------
6
Anexo ------------------------------ 7

Diagrama de Secuencia

Definición:

Un diagrama de secuencia muestra la interacción de un conjunto de objetos en una aplicación a través del tiempo. Esta descripción es importante porque puede dar detalle a los casos de uso, aclarándolos al nivel de mensajes de los objetos existentes, como también muestra el uso de los mensajes de las clases diseñadas en el contexto de una operación.

Con el Diagrama de Secuencia identificamos las Operaciones del Sistema. Cada Operación del Sistema va a definirse en cuanto a qué se espera de ella mediante un contrato. Tal definición se va a basar en los cambios que sufren los elementos del Modelo Conceptual. Los Contratos de las Operaciones del Sistema y el Modelo Conceptual van a ir desarrollándose en paralelo: en cada definición de un contrato se va hacer referencia a cambios en el modelo conceptual.

¿Para qué sirven?

– Para mostrar la relación entre los distintos objetos que participan en un escenario.
– La relación se establece mediante el paso de mensajes
– Existen dos tipos
􀁺 Diagramas de Secuencia
􀁺 Diagramas de Colaboración
Diagramas de Secuencia

􀁺 Características

– Dan una idea cronológica de cómo ocurren las interacciones
– Cada objeto viene mostrado por una barra vertical que es la que da idea de tiempo.
– La línea vertical representa el paso del tiempo (de arriba hacia abajo)


Elementos de los diagramas de secuencia

• Elementos
 Objetos

• Actores
• Clases del modelo lógico.

Construcción de un diagrama de secuencias

• Representar el sistema como un objeto con una línea debajo.
• Identificar los actores que directamente operan con el sistema, y dibujar una línea para cada uno de ellos.
• Partiendo del texto del curso típico de eventos del caso de uso, identificar los eventos (externos) del sistema que cada actor genera y representarlos en el diagrama.
• Opcionalmente, incluir el texto del caso de uso en el margen del diagrama.

Asignación de nombre a eventos y operaciones

Los nombres deben comenzar con un verbo (agregar, introducir, terminar, efectuar, etc.)


Ejemplo:

 –introducir Producto() es un buen nombre.
 –introducirTeclaOprimida () es un nombre poco idóneo, es como no debe hacerse.
Es conveniente mostrar al menos fragmentos del texto del caso de uso

Descripción del curso normal de eventos


En todos los productos, el cajero registra el código de los y la cantidad. Introducir producto (código, cantidad)

Al terminar de capturar de los productos, el cajero indica al cliente que si la venta concluyó. termina Venta ()

El cajero le indica el total al cliente, y este le da un pago.
El cajero registra el importe recibido en efectivo. efectuar pago (monto)


Línea de vida de un objeto

Un objeto se representa como una línea vertical punteada con un rectángulo de encabezado y con rectángulos a través de la línea principal que denotan la ejecución de métodos (véase activación). El rectángulo de encabezado contiene el nombre del objeto y el de su clase, en un formato nombreObjeto: nombreClase. Por ejemplo, el objeto m, instancia de la clase MaquinaCafe envía dos mensajes seguidos para dar respuesta a la operación PedirProducto: Servir al objeto p de la clase Producto y DarVueltas a sí mismo.

Foco de Control Activación

Muestra el periodo de tiempo en el cual el objeto se encuentra desarrollando alguna operación, bien sea por sí mismo o por medio de delegación a alguno de sus atributos. Se denota como un rectángulo delgado sobre la línea de vida del objeto. En el ejemplo anterior el objeto _ingredientes se encuentra activado mientras ejecuta el método correspondiente al mensaje Servir; el objeto p se encuentra activo mientras se ejecuta su método Servir (que ejecuta _ingredientes.Servir) y el objeto m se encuentra activo mientras se ejecuta p.Servir y DarVueltas.
Mensaje

El envío de mensajes entre objetos se denota mediante una línea sólida dirigida, desde el objeto que emite el mensaje hacia el objeto que lo ejecuta. En el ejemplo anterior el objeto m envía el mensaje Servir al objeto p y un poco más adelante en el tiempo el objeto m se envía a sí mismo el mensaje DarVueltas.
Ejemplo: Maquina de hacer café instantánea.





En los diagramas de secuencia, la línea de vida de un objeto es la línea discontinua vertical, que representa la existencia de un objeto a lo largo de un periodo de tiempo. El foco de control o activación es un rectángulo delgado que representa el periodo de tiempo durante el cual un objeto ejecuta una acción.

Segundo Ejemplo:

El siguiente diagrama parte del hecho que ya las clases están definidas, además de los procesos que en ellas se encuentran.

Descripción de los eventos

-Podemos apreciar primeramente que el usuario es el único que tiene una permanencia total en mientras el sistema esta activo, lo secunda la que podríamos llamar clase principal, en este caso denominada Aplicación

El mensaje 1, es del usuario hacia Aplicación la cual, desde el mensaje 2 al mensaje 5 se encarga de crear instancias en si de las demás clases.

Ya en el mensaje 6 la clase Aplicación se vale de la clase C Manejador para utilizar el método de esta de SeleccionaVentana (),
Posteriormente la instrucción anterior utiliza los métodos de AbreVentana(), y ActivaVentana () (mensajes 7 y 8) de la clase C Ventana Principal, la cual interactúa con el usuario (mensaje 9 y 10) intercambiando información que es procesada en la clase C Manejador();.

Posteriormente se utiliza CierraVentana(), (mensaje 11), y la paliación vuelve a la clase principal donde es finalizada por el usuario (mensaje 12);

Los objetos C_procesadorDeImagenes(), StackDeImagenes() y AsociaManejador() son usados internamente dentro la aplicación.