Lenguaje de Modelación Unificado

Slides:



Advertisements
Presentaciones similares
MOVIMIENTO JOVENES DE LA CALLE CIUDAD DE GUATEMALA chi siamo quienes-somos qui sommes-nous who we are attività actividades activités activities scuola.
Advertisements

SIES – SISTEMA INTEGRADO DE EDUCACIÓN SUPERIOR
1 Datos sobre webloggers Datos extraidos de la encuesta a webloggers disponibles en la web de los autores.
IBD Plan 90 y 2003 Clase 11.
IBD Plan 90 y 2003 Clase 10.
INTELIGENCIA ARTIFICIAL
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN EL COMERCIO GALLEGO (Resumen COMERCIO AL DETALLE) Noviembre de 2004.
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN LAS EMPRESAS GALLEGAS ( Resumen PYMES ) Noviembre de 2004.
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN LAS EMPRESAS GALLEGAS (MICROEMPRESAS, resultados provisionales) 29 de julio de 2004.
TEMA 2 MÚLTIPLOS Y DIVISORES
02- Plan Organización Docente v.2 Noviembre 2009 SIES – SISTEMA INTEGRADO DE EDUCACIÓN SUPERIOR.
02- PLAN DOCENTE Febrero 2009 SIES – SISTEMA INTEGRADO DE EDUCACIÓN SUPERIOR.
ABECEDARIO FIGURAS GEOMÉTRICAS NÚMERO
MOVIMIENTO ARMÓNICO SIMPLE MOVIMIENTO ARMÓNICO SIMPLE
Programación Orientada a Objetos
TECNICATURA UNIVERSITARIA EN INFORMATICA
Introduccion a UML Wilson Peláez Hernández
Diagrama de Clases Por: Ing. Juan Carlos Contreras Villegas
DIAGRAMA DE CLASE.
Ingeniería de Software I
Presentación 20 de Mayo 2009.
MOVIMIENTO JOVENES DE LA CALLE CIUDAD DE GUATEMALA chi siamo quienes-somos qui sommes-nous who we are attività actividades activités activities alimentazione.
1. Apoyo exterior sobre ala inferior de viga de acero
UPC Tema: ESPACIO VECTORIAL Rn
Phone2Wave-Server Manual de Operación.
Tomado de:
Parte 3. Descripción del código de una función 1.
Arquitectura de software dirigida por modelos (Model-Driven Architecture) Liliana Favre UNCPBA 2006.
DSOO - María Eugenia Valencia
UNIDAD 2: FUNCIONES.
EL OSO APRENDIZ Y SUS AMIGOS
Programación Orientada a Objetos
Introducción a la Orientación a Objetos
50 principios 1. Los clientes asumen el mando.
Ecuaciones Cuadráticas
3 Enero 2010 PERÚ: IV CENSO NACIONAL ECONÓMICO, APURÍMAC.
Estadística Computacional I
Parte 1: Modelo de Casos de Uso del Negocio
¿Qué es un conjunto? Un conjunto es una colección de objetos considerada como un todo. Los objetos de un conjunto son llamados elementos o miembros del.
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno.
LENGUAJE UNIFICADO DE MODELADO UML
DIAGRAMAS DE CLASES Completando los diagramas de interacción, es posible identificar la especificación de las clases que participarán en la solución indicando.
Business Proccess Management (BPM)
La transformada de Laplace
DIAGRAMA DE COMPONENTES INTEGRANTES Córdova Vásquez Giovanny Escobar Alvares Calixto Gomez Quinteros Adelaida Pinto Flores Yarmila.
DIAGRAMA DE CLASE.
PROGRAMACION ORIENTADA A OBJETOS
Análisis y Diseño orientado a objetos con UML.
Material Original de Microsoft para desarrolladores adaptado por Jorge Miguel PERALTA para clases de Informática Aplicada (Haga clic para adelantar/atrasar.
Manual de Procedimientos Procedimiento de ejecución del programa de
 2003 Prentice Hall, Inc. All rights reserved. 1 Capítulo 6: Clases y Abstracción de Datos Índice del capítulo 6.1 Introducción 6.2 Estructuras 6.3 Clases.
UNIDAD 2 CLASES Y OBJETOS. CLASE Elementos cabecera y cuerpo de la clase. Cabecera: aporta información fundamental sobre la clase en sí y constituye de.
Diagramas de Clase Angela Carrillo R..

DIAGRAMA DE CLASE Ing. Christian Ovalle.
UNIDAD 3: “Desarrollo Orientado a Objetos con UML”
Modelo de Análisis. Contenido Análisis Modelo de Análisis Modelo Conceptual.
Diagrama de Clases ACI 570.
PROYECTO EMPRESARIAL Clase # 2.
Introducción a UML DIAGRAMA DE CLASES Departamento de Informática
TEMA 9: DIAGRAMA DE CLASE EN UML
Introducción a la Programación Orientada a Objetos (POO)
Ingeniería de Requisitos
Ilustra: E L M ODELO C ONCEPTUAL Conceptos (Objetos) en el dominio del problema. Es el instrumento (artefacto) más importante de crear en el AOO. Es la.
Análisis y Diseño de Aplicaciones 3º Educación Media Tecnológica
Diagrama de Clases.
PRESENTACION DE INGENIERIA ORIENTADA A OBJETOS
1 Qué es UML Es un Lenguaje de Modelado Unificado basado en una notación gráfica que permite especificar,construir, visualizar y documentar los objetos.
Modelado UML Diagrama de Clases
Estructura de Datos Departamento de Programación Universidad Metropolitana Contenido: UML. Envío de mensajes. Relaciones. Asociación. Agregación o composición.
Transcripción de la presentación:

Lenguaje de Modelación Unificado 12/02/13 Lenguaje de Modelación Unificado Diagramas de Clase U Unified L M Modeling Language

La notación UML 12/02/13 Diagrama de clases Describe la estructura estática del modelo del sistema, en particular, las clases, tipos, y objetos, su estructura interna y las relaciones entre ellos.

Construcciones generales La notación UML 12/02/13 Construcciones generales Iconos Formas 2D strings Caminos (path) es parte de

Construcciones generales La notación UML 12/02/13 Construcciones generales Notas Paquete Dependencia Estereotipo Esto es ... <<interfaz>>

La notación UML 12/02/13 Clase Descriptor de un conjunto de objetos con estructura similar, mismo comportamiento y relaciones Representa un concepto en el sistema que se modela Rectángulo p1: Punto p2: Punto <<constructor>> rectángulo(p1, p2: Punto) <<query>> área( ): Real aspecto( ): Real (...) <<update>> mover (delta:Punto) escala (radio: Real) nombre atributos métodos

La notación UML 12/02/13 Objeto Entidad con identidad única que encapsula estado y comportamiento triángulo: Polígono centro = (0,0) vértices = ((0,0),(4,0),(4,3)) color-borde = negro color-relleno = blanco triángulo :Polígono

La notación UML Clase: Estereotipos 12/02/13 <<type>> Tipo de dato <<implementationClass>> Imp. tipo de dato <<interface>> Int. tipo de dato Clase <<utility>> Funciones Un símbolo de clase puede contener o no un estereotipo. Estereotipos: <<type>> <<implementationClass>> <<interface>> <<utility>>

<<utility>> La notación UML 12/02/13 Utilitarios Agrupa variables globales y procedimientos en forma de una declaración de clase. Los atributos y operaciones de un utility se interpretan como atributos globales y operaciones. <<utility>> Math seno(Ángulo): Real coseno(Ángulo): Real raiz2(Real): Real aleatorio():Real

Modelo del dominio: sumando los atributos Caso de Estudio:PV 12/02/13 Modelo del dominio: sumando los atributos Qué es un atributo?? Una información significativa de una clase -o de su instancia- que es necesaria para la comprensión del modelo y para satisfacer un requerimiento. Se indica el nombre y el tipo del atributo Tienda dirección: Text nombre: Text Venta fecha: Fecha hora: Tiempo ......... * 1 realiza

Guías para modelar el dominio: Clase o atributo? 12/02/13 Guías para modelar el dominio: Clase o atributo? Clase o atributo? Vuelo ___________ aeropuerto Aeropuerto ___________ nombre Vuelo O ?

Identifique todos los elementos (tarea en clase) La notación UML 12/02/13 Identifique todos los elementos (tarea en clase) Polígono centro: Punto vértices: Conj-Punto color-borde = Color color-relleno = Color ........ <<constructor>> Polígono(p1,p2,p3:Punto) <<query>> área( ): Real aspecto( ): Real (...) <<update>> mover (delta:Punto) escala (radio: Real) triángulo: Polígono centro = (0,0) vértices = ((0,0),(4,0),(4,3)) color-borde = negro color-relleno = blanco

Relaciones Conexión semántica entre elementos del modelo asociación La notación UML 12/02/13 Relaciones Conexión semántica entre elementos del modelo asociación binaria agregación composición generalización dependencia

Asociación Binaria ¿Qué es una asociación?? 12/02/13 Asociación Binaria ¿Qué es una asociación?? Una relación significativa entre dos clases -o entre sus instancias- Conexión semántica entre elementos del modelo. La flecha -opcional- indica la dirección de lectura del nombre de la asociación Compañía Persona Multiplicidad de la asociación emplea 1..* 1

Asociación binaria incluye: La notación UML 12/02/13 Asociación binaria incluye: un nombre (nombre de la asociación, vinculada a un comportamiento específico) un rol (nombre, dirección y multiplicidad del extremo de una asociación). Compañía Persona jefe * 0..1 empleado 1..* 1 emplea dirige

Multiplicidad Indica cuántos objetos pueden participar en la relación 12/02/13 Multiplicidad Indica cuántos objetos pueden participar en la relación Pedido Cliente fecha nombre ¿es prepagado? dirección 1 número * precio credito( ) despacho( ) Adaptado de Univ. Calgary

12/02/13 Multiplicidad Indica cuántos instancias pueden participar en la relación en un momento dado Cliente Nombre .. * 0 ó más (muchos) Cliente Nombre .. 1..* 1 ó más Cliente Nombre .. 1..10 1 a 10 Cliente Nombre .. 5 Exactamente 5

Roles Una asociación tiene roles 12/02/13 Roles Una asociación tiene roles El Rol tiene dirección en la asociación El Rol es explicitamente etiquetado Pedido fecha ¿es prepagado? número costo despacho( ) 1 Línea de producto * Pedido de producto cantidad precio ¿satisfecho?

Nombre del rol Rol = identifica el extremo de la asociación 12/02/13 Nombre del rol Rol = identifica el extremo de la asociación El nombre del rol es obligatorio para asociaciones entre objetos de la misma clase nombre dirección Compañía Persona trabaja para nombre cédula de Identidad dirección empresa empleado Persona gerente nombre cédula de Identidad dirección vendedor supervisa

Convenciones para asociaciones 12/02/13 Convenciones para asociaciones Convención de lectura de los nombres de las asociaciones LíneaAérea 1 Emplea 1..* Piloto Asignado-a Vuelo Asignado-a Ruta 1 * * 1 1 * Supervisa

Guías para identificar asociaciones 12/02/13 Guías para identificar asociaciones Centrarse en las relaciones que deben ser preservadas sin depender de la existencia de instancias Evitar asociaciones redundantes o derivables Chequear lista de asociaciones típicas. DescripciónItem _______________ descripción precio identificador Item _____________ númeroSerial 1 *

Sumario: notación básica para asociaciones binarias 12/02/13 Sumario: notación básica para asociaciones binarias Nombre de la Asociación Clase B Clase B rol_B rol_A Ejemplo: Contiene Pedido Item Constituído de Incluído en

Composición / agregación (todo/partes) La notación UML 12/02/13 Composición / agregación (todo/partes) Polígono Punto 1 3..* Agregación Gráfico color textura 1 Composición

A partir de la definición, por agregación, de la Clase Polígono, La notación UML 12/02/13 Diagrama de objetos A partir de la definición, por agregación, de la Clase Polígono, Polígono Punto 1 3..* es posible obtener el diagrama de objetos correspondiente al objeto triángulo triángulo: Polígono punto 1: Punto x = 0.0 y= 1.0 punto 2: Punto x = 3.0 y= 1.0 punto 3: Punto x = 3.0 y= 5.0

Asociación n-aria Vuelo Asiento Persona reservación asiento vuelo 12/02/13 Asociación n-aria Vuelo Asiento Persona asiento vuelo pasajero reservación

La notación UML 12/02/13 Especialización Dada una clase, se crea otra clase (subclase) que especializa la clase dada, agregando las diferencias (adición, supresión o redefinición de propiedades) Vehículo Carro Moto Grúa

La notación UML 12/02/13 Generalización Se crea una clase (superclase), que generaliza las propiedades comunes de varias clases Vehículo Carro Moto Grúa

12/02/13 Herencia Mecanismo mediante el cual elementos más específicos incorporan la estructura y el comportamiento de elementos más generales vehículo carro <<hereda>>

12/02/13 Herencia Una clase B hereda de una clase A si adquiere las propiedades (estructura y comportamiento) definidas en la clase A A es una superclase de la clase B B es una subclase de la clase A. A B <<hereda>>

Herencia Simple Una clase B hereda de una y solo una clase A Peces 12/02/13 Herencia Simple Una clase B hereda de una y solo una clase A Peces Peces de colores <<hereda>>

Herencia Múltiple Una clase Z hereda de dos o más clases X, Y Aves 12/02/13 Herencia Múltiple Una clase Z hereda de dos o más clases X, Y Aves Loros Mascotas <<hereda>>

Herencia múltiple La notación UML Vehículo Vehículo aeréo Vehículo 12/02/13 Herencia múltiple Vehículo Vehículo aeréo Vehículo terrestre Vehículo Acuático Aviones acuaticos

asociaciones resumen: notación básica 12/02/13 asociaciones resumen: notación básica Multi- plicidad asociaciones 1 Nombre-de-la-asociación Clase B 1..* Clase A rol_B rol_A Generalización Agregación Superclase Subclase2 Subclase 3 Subclase1 Parte * 1 Todo Parte

12/02/13 Guías para identificar asociaciones: lista de categorías de asociaciones Categoría Sistema A es parte física de B Cabeza - Cuerpo A está contenida en B Producto - Tienda A es una descripción de B Características del Producto - producto A es miembro de B Cajero - Tienda A se comunica con B Cliente - Cajero

Asociaciones complejas: ¿Qué hacer ante estas situaciones? 12/02/13 Asociaciones complejas: ¿Qué hacer ante estas situaciones? Un atributo está relacionado a una asociación Hay dos clases asociadas y no se tiene claro en cual clase colocar un atributo Solución: Crear una clase y anexarla a la asociación Clase Asociación

Asociaciones complejas: Clase Asociación 12/02/13 Asociaciones complejas: Clase Asociación Se utiliza cuando los atributos no pertenecen a las clases sino a la asociación Usuario EstaciónTrabajo Autorizado en Autorización prioridad derechoAcceso inicioSesión Directorio

Diagrama de Casos de Uso La notación UML 12/02/13 Diagrama de Clases proyección Elementos del modelo Vistas del modelo 1..* 0..* Proyección +placement:ListOfPoint + style: Uninterpreted Diagrama Diagrama de Estado Diagrama de Casos de Uso Diagrama de Clases Diagrama de Actividad Diagrama de Objetos (…)

La notación UML 12/02/13 Diagrama de objetos Presenta una imagen del sistema en un instante de tiempo (un ejemplo del sistema).

Bibliografía recomendada: 12/02/13 Bibliografía recomendada: - Martin Fowler. UML Distilled. 3a Ed. Addison-Wesley 2004 - www. omg.org

<<interface>> La notación UML 12/02/13 Interfaces una interfaz permite especificar las operaciones visibles externamente de una clase, componente, subsistema, etc. sin indicar la estructura interna <<interface>> Comparable esIgual(String): Boolean Hash():Integer

Clases Parametrizadas La notación UML 12/02/13 Clases Parametrizadas Es un descriptor para una clase con uno o más parámetros formales no acotados. Define una familia de clases, cada una de las cuales viene dada por la asociación de valores actuales a los parámetros atributos métodos ... nombre parámetros

Clases Parametrizadas La notación UML 12/02/13 Clases Parametrizadas atributos métodos ... nombre parámetros Forma de los parámetros: nombre: tipo = valor por defecto nombre

Composición: diferentes formas de expresarla La notación UML 12/02/13 Composición: diferentes formas de expresarla Window scrollbar:Slider title: Header body: Panel 2 1 Window scrollbar[2]:Slider title: Header body: Panel Slider Scrollbar 2 1 Window Panel Header body 1 title 1

Dependencias entre clases La notación UML 12/02/13 Dependencias entre clases Relación unidireccional semántica entre 2 (o más) elementos del modelo y existe cuándo cambios en la definición de un elemento causa cambios en el otro <<fuente>> <<destino>> Indica que un cambio en el fuente requiere un cambio en el destino

Dependencias entre clases La notación UML 12/02/13 Dependencias entre clases <<refina>> Clase B Clase A ClaseD OperaciónZ( ) <<importa>> <<instancia>> <<usa>> ClaseC Meta: minimizar dependencias