ANALISIS Y DISEÑO DE SISTEMAS II GRUPO # 2 CHUQUIMIA CRUZ LIA D. VARGAS LOZA CLAUDIA QUISPE RAMOS LUIS G. SHIRLEY
DIAGRAMAS DE INTERACCION DEFINICION INTRODUCION DIAGRAMAS DE COLABORACION (COMUNICACION) DIAGRAMAS DE SECUENCIA EJEMPLO ¿QUÉ ES? ¿EN QUE CONSISTE? ¿QUÉ REPRESENTA?
INTRODUCION Este tipo de diagramas explican y representan gráficamente las interacciones (comunicaciones) existentes entre las instancias (y las clases) del modelo propuesto El punto de partida de las interacciones es el cumplimiento de las poscondiciones de los contratos de operación
Diagramas de secuencia INTRODUCION El UML define dos tipos de estos diagramas, ambos sirven para expresar interacciones semejantes o idénticas de mensaje Diagramas de secuencia Diagramas de colaboración
DIAGRAMAS DE SECUENCIA Destacan el orden temporal de los mensajes. Describen las interacciones en una especie de formato de cerca. Expresa actuaciones de actores en forma responsable. Cliente Personal De Venta Sistema Elige prod. Y comunica datos Verifica prod. Ingresa datos (cliente) Muestra en pantalla datos y montos de la compra del producto Comunica precio total de los productos que requiere Procede a pagar el precio indicado por el PV y continua en espera Recepciona y registra pago realizado Imprime factura Entrega factura y producto
DIAGRAMAS DE COLABORACION ¿Qué es? Es una forma de representar: Interacción entre objetos. Asociaciones básicas (relaciones) entre las clases. Determinar responsabilidades (una o varias) que el software debe cumplir expresadas en los contratos ¿En que consiste? Diseñar un sistema de objetos interactivos que realicen las tareas, usando como punto de partida las responsabilidades del contrato de operación y las poscondiciones.
¿Qué representa? DIAGRAMAS DE COLABORACION Un diagrama de colaboración representa el comportamiento de los objetos en tiempo de ejecución, por medio de paso de mensajes, para así cumplir con un contrato específico. Sirven para ir depurando el diagrama de clases, porque irán surgiendo métodos nuevos y tal vez atributos necesarios. Nota: Es importante que al elaborar el D. de colaboración te guíes por los principios de bajo acoplamiento y máxima cohesión.
DIAGRAMA DE COLABORACION DEPENDENCIA CON OTROS ARTEFACTOS Un modelo conceptual: a partir de este modelo el diseñador podrá definir las clases del software correspondientes a los conceptos. Los objetos de las clases participan en las interacciones que se describen gráficamente en los diagramas. Contratos de la operación del sistema: a partir de ellos el diseñador identifica las responsabilidades y las poscondiciones que han de llenar los diagramas de interacción.
DIAGRAMAS DE COLABORACION DEPENDENCIA DE ARTEFACTOS Casos de uso: - expandidos - esenciales Diagramas de casos de uso Modelo conceptual Glosario Diagramas de secuencia del sistema Contratos de operación Diagramas de estado - reales Diagramas de Colaboración Diagramas de clase de diseño Diagramas de paquete de arquitectura Esquema de base de datos Ventanas y reportes Métodos Definiciones de clase y de interfaz SQL Casos de prueba Indica Dependencia
DIAGRAMAS DE COLABORACION ARTEFACTOS QUE GENERA Casos de uso: - expandidos - esenciales Diagramas de casos de uso Modelo conceptual Glosario Diagramas de secuencia del sistema Contratos de operación Diagramas de estado - reales Diagramas de Colaboración Diagramas de clase de diseño Diagramas de paquete de arquitectura Esquema de base de datos Ventanas y reportes Métodos Definiciones de clase y de interfaz SQL Casos de prueba Indica Dependencia
DIAGRAMAS DE COLABORACION ETAPAS DE CONSTRUCCION
DIAGRAMAS DE COLABORACION Desplegar en pantalla detalles de seminario :detalle seminario :seminario :curso Matricular :matricular Estudiante :estudiante Actualizar serie de matriculas 1: Obtener_nomb(): nombre_seminario 2: Descripción() 3: Ambiente() 4: Asiento() 5: Lista_Estudiantes() 1.1: Leer_nombre(): String 1.2: Leer_numero(): String 2.1: Leer_Descrip(): String *5.1: Inf estudiante() 5.1.1: Tomar_Info() 5.1.1: Ob_nomb_completo()
DIAGRAMAS DE COLABORACION MATRICULAR UN NUEVO ESTUDIANTE EN LA UNIVERSIDAD
DIAGRAMAS DE COLABORACION Operación efectuar pago :INSTANCIA NUEVA :VENTA :PAGO 1.1:crear (monto) 1:efectuar_ pago (monto) efectuar_ pago (monto) Representar que un mensaje devuelva un valor Numero de secuencia: var. := mensaje (parámetros: tipo): tipo _ retorno
DIAGRAMAS DE COLABORACION También es posible indicar el número de veces (iteraciones) * msg1() { for i := 1 to 10 { miB.mens2(); miC.mens3();} } Es posible definir mensajes condicionales Numero de secuencia: [condición] mensaje (parámetros: tipo)
DIAGRAMAS DE COLABORACION Es posible definir trayectorias condicionales mutuamente excluyentes. Enviar mensajes a la clase y no a una instancia, con el fin de llamar a métodos de la clase
DIAGRAMAS DE COLABORACION
COLABORACION VS SECUENCIA
DIAGRAMAS DE COLABORACION NOTACION BÁSICA
DIAGRAMAS DE COLABORACION Boundary (limite), control y entidad La ilustración siguiente demuestra a un agente que obra recíprocamente con un límite (en este caso, una pantalla de conexion
DIAGRAMAS DE COLABORACION Para elaborar un D. de colaboración se debe aplicar las siguientes normas. Elaborar un diagrama por cada operación del sistema durante el ciclo actual de desarrollo. Si el diagrama se torna complejo, dividir en diagramas mas pequeños. Diseñar un sistema de objetos interactivos que realicen las tareas, usando como punto de partida las responsabilidades del contrato de operación, las poscondiciones y la descripción de casos de uso. Los casos de uso indican los eventos del sistema que se muestran explícitamente en los diagramas de su secuencia. En los contratos se describe la mejor conjetura inicial sobre las operaciones del sistema.
DIAGRAMAS DE COLABORACION CONSTRUCCION Las operaciones del sistema representa mensajes y éstos originan diagramas que explican gráficamente cómo los objetos interactúan para llevar a cabo las funciones requeridas.
BIBLIOGRAFIA http://www.cs.ualberta.ca/~pfiguero/soo/uml/secuencia01.html http://66.196.80.202/babelfish/translate_url_content?.intl=uk&lp=en_es&trurl=http%3a%2f%2fwww.agilemodeling.com%2fessays%2fumlDiagrams.htm http://www.dcc.uchile.cl/~luguerre/cc40b/clase8.html http://www.agilemodeling.com/artifacts/communicationDiagram.htm http://apuntes.rincondelvago.com/metodologia-de-analisis-y-diseno-orientado-a-objetos.html http://jms32.eresmas.net/tacticos/UML/UMLIndex.html http://www.clikear.com/manuales/uml/diagramasestado.aspx TELEMATICA Multicast_Raul_Rivera diagramas.pdf Desarrollo de Software Orientado a Objeto usando UML Patricio Letelier Torres letelier@dsic.upv.es