1 UMLUML Wilson Peláez Hernández. 2 LAS CLASES – DIAGRAMAS DE CLASES.

Slides:



Advertisements
Presentaciones similares
Introducción a UML DIAGRAMA DE CLASES Departamento de Informática
Advertisements

PRESENTACION DE INGENIERIA ORIENTADA A OBJETOS
Unified Modeling Language (UML) Unified Modeling Language (UML) Lenguaje Unificado de Modelado ConceptosBásicos.
Diagrama de Clases SPI 2016.
Lcda. Ingrid Graü Diseño de Sistemas 1. Lcda. Ingrid Graü Diseño de Sistemas 2.
Conferencia 1: Principios de la Tecnología de Objetos Conceptos básicos de la Orientación a Objetos.
2012-BM5A. Introducción Todos los lenguajes de programación son distintos entre si. Sin embargo, pueden ser agrupados según la forma de pensar y estructurar.
Conferencia 3: Paradigmas de la Orientación a Objetos Tema 1:Principios de la Tecnología de Objetos.
Diseño (Diagrama de Clases) Francisco Valdés Souto 2 al 6 de marzo 2009 © Avantare Consultores S. A. de C. V. – Derechos.
Ingeniería del Software Diseñó de Software Universidad de los Andes Demián Gutierrez Abril 2009.
UML – Lenguaje de Modelado Unificado Centro ISYS Escuela de Computación Facultad de Ciencias. UCV Profa. Zulma González.
PROGRAMACIÓN ORIENTADA A OBJETOS SEGUNDA UNIDAD: “CLASES, OBJETOS Y MÉTODOS” IRVING YAIR SALAS CHÁVEZ ING. EN SISTEMAS COMPUTACIONALES - ITSLP.
Modelo Entidad Relación E-R Modelado y Diseño de Bases de Datos Gabriel Alberto Vásquez Muñoz Dpto. Electrónica, Instrumentación y Control.
Organizaciones involucradas: El centro de cálculo noruego. Crea lenguaje llamado Simula 67, desarrollado por Krinsten Nygaard y Ole-Johan Dahl, en 1967.
Herencia Multiple en Java
Clases y Objetos.
El Lenguaje de Modelación Unificado
DISEÑO DE SISTEMAS Diagrama de clases UNIDAD III:
METODOLOGÍA DE SISTEMAS
Ingeniería Directa. Generar código a través de modelos se le conoce como ingeniería directa.
Ingeniero en Computación José Alfredo Cobián Campos
Programación Avanzada
Programación Avanzada
Programación Avanzada
Ingeniería de Software
Herencia Implementación en Java.
Programación Orientada a Objetos
U.T. 11: Introducción A Las Bases De Datos
Fundamentos de la programación orientada a objetos
Programación Avanzada
Introducción a programación web Martin Esses
Introducción a programación web Martin Esses
Diagramas de clases Modelan la vista estática del sistema
UNIVERSIDAD ICEP INTELIGENCIA ARTIFICIAL INGENIERÍA EN SISTEMAS COMPUTACIONALES Martes, 24 de Octubre de 2017 REPRESENTACIÓN DEL CONOCIMIENTO Y RAZONAMIENTO.
METODOLOGÍA DE SISTEMAS
Aspectos Básicos de Diseño
Ingeniería de Software Somerville
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno. INTRODUCCIÓN A UML  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
DIAGRAMA DE CLASES 2016 Ramos, Pablo.
Tema 3. Lenguaje unificado de modelado UML
(Unified Modeling Language)
Programación Orientada a Objetos I Unidad 4 Relaciones entre clases: herencia.
Introducción al UML Domingo Hernández H.
DIAGRAMA DE CLASES.
UML 2,0 Christian Sáenz.
Diagramas del modelo uml
Resumen: Análisis de requerimientos
Ingeniería del Software
DIAGRAMA DE CLASE.
APLICACIONES II ° Patrones De Diseño ° Esteban Omar Mora Delgado
Conceptos de Objetos, Clases y Otros Modelo Conceptual
Universidad Nacional de Colombia - Leguajes de Programación
Metodologías de Desarrollo de Software RUP – Proceso Racional Unificado Gilber BASILIO ROBLES I.E.S.T.P. “DANIEL ALCIDES CARRIÓN” Taller de Modelamiento.
DIAGRAMA DE COMPONENTES INTEGRANTES Córdova Vásquez Giovanny Escobar Alvares Calixto Gomez Quinteros Adelaida Pinto Flores Yarmila.
ANALISIS DE SISTEMAS ANALISIS ORIENTADO A OBJETOS.
Ejemplo Herencia: Vehiculo # dueno: string # puertas: int
MODELOS DE DATOS Ing. Laura Bazán Díaz. Diseño de Base de Datos Modelo Conceptual Modelo E-RModelo Lógico Modelo Relacional Modelo FísicoSGBD Ing. Laura.
Diagrama de Clases Un diagrama de clases esta compuesto por los siguientes elementos: Clase: atributos, métodos y visibilidad. Relaciones: Herencia, Composición,
Diagramas de clases Modelan la vista estática del sistema
Base de datos simples, relaciones Cardinalidad Claves.
Poder Expresivo de UML 2.0 para especificar arquitecturas de Software
Diagramas de Interacción. Escuela de Ingeniería en Sistemas Computacionales Facultad de Ciencias Matemáticas y Físicas Universidad Estatal
CONTROLES Y ESTRUCTURAS BÁSICAS DE PROGRAMACIÓN  1. Algoritmos: conjunto de instrucciones programadas para resolver una tarea específica.  2. Datos:
PRESENTACION DE INGENIERIA ORIENTADA A OBJETOS. INTRODUCCION. ¿ Qué es UML ?. UML, por sus siglas en Ingles, Unified Modeling Languaje.(Lenguaje Unificado.
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno. INTRODUCCIÓN A UML  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
INTRODUCCIÓN A UML.  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
Unida III: Análisis y Diseño de Sistemas Orientado a Objetos
1. Estructura de UML 2 Modelos Estructura (características estáticas) Comportamiento (características dinámicas ) capturan Vistas Arquitectonicas organizado.
ICI 502 Procesos de Software
Luis Fernando Muñoz Pantoja Ingeniero de Sistemas Copyright 2019 Luis Fernando Muñoz Pantoja Ingeniero de Sistemas Derechos reservados UML.
Transcripción de la presentación:

1 UMLUML Wilson Peláez Hernández

2 LAS CLASES – DIAGRAMAS DE CLASES

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 3 Contenido Introducción Qué es una clase Metamodelo de una clase Representación de una clase Ejemplos representación Utilidad de la presentación Atributos Operaciones Otras características Clases y requisitos

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 4 Contenido Diagramas de clase Elementos de un diagrama de clases Perspectivas de los diagramas de clases Tipos de diagramas Cardinalidad Asociación Agragación Composición Diferencia entre agregación y composición Dependencia

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 5 Contenido Herencia Especificación múltiple Síntesis de notación Clases parametrizadas Ejemplos Valores Enumerados Técnica común de modelado Lecturas recomendadas

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 6 Introducción Son los bloques de construcción mas importantes de cualquier sistema orientado a objetos Se utilizan para capturar el vocabulario del sistema que se esta desarrollando. Muchos lenguajes de programación soportan directamente el concepto de clases

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 7 Qué es una Clase? Una clase es una abstracción de las cosas que forman parte de un sistema. Representa un conjunto de entidades que tienen propiedades comunes. Define la estructura y comportamiento de una colección de objetos

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 8 Una Clase representa a un tipo de objetos que comparten: Las mismas propiedades (Atributos) El mismo comportamiento (Métodos) Las mismas responsabilidades Las mismas relaciones con otros objetos (asociaciones y agregaciones) La misma semántica dentro del sistema Qué es una Clase?

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 9 Metamodelo de una clase

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 10 Representación de una clase en UML En UML la clase está representada por un rectángulo con tres divisiones internas, son los elementos fundamentales del diagrama. Cada clase debe tener un nombre que la distinga de las demás. El nombre debe ser un sustantivo en singular

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 11 Representación de una clase en UML

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 12 Representación de una clase en UML

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 13 Ejemplo representación Clases ClienteJava::awt::Rectangule

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 14 Utilidad de la representacion de clase Muestran los atributos y operaciones de una clase y las restricciones a que se ven sujetos, según las forma en que se conecten los objetos. Ilustra los requerimientos funcionales del sistema (los servicios que proporcionará a los usuarios finales).

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 15 Atributos Atributo: Representa una propiedad de una entidad. Cada atributo de un objeto tiene un valor que pertenece a un dominio de valores determinado. Las sintaxis de una atributo es: Visibilidad : tipo = valor incial { propiedades} Donde visibilidad es uno de los siguientes: + público. # protegido. - privado.

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 16 Operaciones Operación: El conjunto de operaciones que describen el comportamiento de los objetos de una clase. La sintaxis de una operación en UML es: Visibilidad nombre (lista de parámetros): tipo que retorna { propiedades} En las operaciones se puede indicar si los parámetros son de entrada, salida o entrada/salida.

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 17 Otras Características Alcance : Específica si la característica es una instancia de clase o una instancia de objetos. (Subraya la instancia de clase). Elemento abstracto: No existe objetos tangible ( su nombre esta en CURSIVA o explicito “abstract”) Clase sin hijos (usa la palabra {leaf} ) Multiplicidad: Número de instancias que puede tener una clase.

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 18 Ejemplo # Titular: String # Número:Long { frozen} - Saldo:Double = CantidadCuentas:Int= 0 Cuenta {root} + Constructor + Titular() : String + Número(): Long + Saldo : Double + Consigne(Double valor):Double + Retire (Double valor): void + numeroCuentas :Int {leaf}

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 19 Clases y requisitos Las clases de un modelo conceptual representarán conceptos relevantes del dominio del problema sobre los que el sistema debe almacenar información, porque así se ha especificado en uno o más requisitos. Toda clase de un modelo conceptual debe estar trazada hacia aquellos requisitos que la justifican, normalmente requisitos de información, reglas del negocio. Un requisito puede estar modelado por varias clases, o una clase modelar varios requisitos a la vez.

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 20 Definir las Clases Atributos Operaciones

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 21 Diagramas de Clases Los diagramas de clases han llegado a ser realmente la parte central dentro de los métodos orientados a objeto. Un diagrama de clases sirve para visualizar las relaciones entre las clases que involucran el sistema.

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 22 Diagramas de Clase Nivel conceptual Se cuenta con un diagrama que representa los conceptos del dominio Nivel de especificación Se conocen las interfaces del software. No se pueden conocer las estructuras de datos de las clases. Nivel de implementación En este nivel se especifican las estructuras que forman las clases especificadas en el nivel anterior

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 23 Conceptos Diagrama de Clases Muestra de una manera estática la estructura de información del sistema y la visibilidad que tiene cada una de las clases, dada por sus relaciones con los demás en el modelo. Contenido Básico: Clases (Atributos-Operaciones) Relaciones (Dependencia-Asociación- Generalización ) Contenido con mas detalles Interfaces Colaboraciones

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 24 Elementos de un diagrama de Clases

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 25 Perspectivas Hay tres perspectivas que se pueden usar en los diagramas de clase: Conceptual. Obtendrá un diagrama que representa los conceptos del dominio bajo estudio (Vocabulario) Especificación. Ahora vemos el software, pero vemos las interfaces del software, no la implementación. Implementación. En esta vista, nosotros realmente tenemos clases y ponemos la implementación real.

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 26 Tipos de Diagramas Solo las relaciones (multiplicidad) Solo un aspecto del sistema (subsistemas) Herencia – Composición - Agregación Detallado (Clases –atributos-operaciones- Relaciones, multiplicidad, roles, notas)

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 27 Cardinalidad En UML, la cardinalidad de las relaciones indica el grado y nivel de dependencia, se anotan en cada extremo de la relación y éstas pueden ser: uno o muchos: 1..* (1..n) 0 o muchos: 0..* (0..n) número fijo: m (m denota el número).

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 28 Cardinalidad

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 29 Asociación La relación entre clases conocida como Asociación, permite ligar objetos que colaboran entre si. Cabe destacar que no es una relación fuerte, es decir, el tiempo de vida de un objeto no depende del otro.

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 30 Ejemplo asociaciones

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 31 Agregación Asociación que representa una relacion TODO – PARTE Se caracteriza por las siguientes propiedades: Una parte puede pertenecer a varios agregados Una parte puede existir independientemente del agregado Una parte puede cambiar de agregado La eliminación del agregado NO implica la eliminación de las partes Es una relación transitiva y antisimétrica

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 32 Notación agregación

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 33 Composición Agregación “fuerete”, donde se deben cumplir las siguientes caracterizticas: Una parte sólo puede pertenecer a un agregado a la vez La eliminación del agregado implica la eliminación de las partes. Agregación en que las partes nacen y mueren con el todo

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 34 Notación Composición

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 35 Ejemplo Diferencia Agregación - Composición

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 36 Ejemplo agregación - composición Un almacén posee cuentas y clientes. Cuando se destruye el objeto almacén, tambien desaparecen los objetos cuentas asociados, mientras los objetos clientes no.

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 37 Dependencia Representa un tipo de relación muy particular, en la que una clase es instanciada. El uso más particular de este tipo de relación es para denotar la dependencia que tiene una clase de otra

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 38 Herencia:(Especialización /Generalización) Indica que una subclase hereda los métodos y atributos especificados por una súper clase. La subclase además de poseer sus propios métodos y atributos, poseerá las características y atributos visibles de la súper clase (public y protected). A la herencia se le conoce como una relacion ES-UN (ES – UNA)

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 39 Ejemplo: Herencia Especialización / Generalización

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 40 Ejemplo: Herencia Especialización / Generalización

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 41 Clasificación multiple Un conjunto de objetos puede clasificarse por diferentes criterios y un mismo objeto puede clasificarse como una especialización de varias clases.

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 42 Síntesis notación para asociaciones

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 43 Restricciones sobre asociaciones Ordenación:Indica que en el conjunto de objetos asociados existe una relación de orden y que forman una secuencia ordenada. Exclusividad:Indica que las instancias de la clase deben participar en una sóla asociación ala vez.

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 44 Restricciones sobre asociaciones Navegabilidad: Una flecha en el extremo de una asociación indica que solo es navegable en ese sentido. Por defecto una asociación es navegable en ambos sentidos.

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 45 Clases parametrizadas Clases “genéricas” que reciben parametros. Una clase parametrizada se denota con un subcuadro en el extremo superior de la clase, en donde se especifican los parámetros que deben ser pasados.

Ejemplo

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 47 Ejemplo

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 48 Ejemplo 2 : Subsistemas

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 49 Valores enumerados Los valores enumerados permiten modelar tipos de datos simples, que sólo pueden tomar valores dentro un rango o conjunto de datos. Los atributos de las clases pueden tener como tipo una enumeración.

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 50 Técnica común de modelado Revise el enunciado del problema, casos de uso y escenarios para identificar sustantivos. Cree una lista de cantidatos. Incluya objetos físicos y conceptos. Revise los sustantivos para ver si tienen relevancia con el problema, así como para ver si están en contexto. Elimine los sustantivos innecesarios. Una vez obtenidas las clases candidatas vea como se relacionan entre sí (tipos de enlaces, roles, multiplicidad). Defina relaciones avanzadas como agregación o herencia

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 51 Lecturas Recomendadas

52 LOS OBJETOS – DIAGRAMAS DE OBJETOS

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 53 Contenido Los Objetos Instancia de una clase Representación UML de un objeto Ejemplo Diagramas de objetos Ejemplos Lecturas recomendadas Bibliografía

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 54 Los objetos Un objeto representa una identidad del mundo real o inventada. Es un concepto o una abstracción, que dispone de unos límites bien definidos, y tiene una significancia para el sistema que se pretende modelar. Un objetos es una instancia de clase Los objetos tienen un estado y un ciclo de vida. Primero debemos crear una clase antes de poder crear objetos o ejemplares de esa clase

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 55 Objeto: instancia de clase

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 56 Representación de un Objeto en UML

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 57 Ejemplo objeto Libro LIBRO _ titulo: Cien Años de Soledad _autor: Gabriel García M _editorial: Oveja Negra _referencia: C234g _num ejemplar: 7 DarTitulo() DarAutor () DarEditorial() DarReferencia() DarNumejemplar() ActualizarReferencia() Las operaciones son comunes a todos los objetos LIBROS y no se duplican Los valores delos atributos en un momento dado representan el estado de un objeto

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 58 Diagramas de objetos Los diagramas de objetos modelan las instancias de elementos contenidos en los diagramas de clases. Un diagrama de objetos muestra un conjunto de objetos y sus relaciones en un momento concreto. Los diagramas de objetos se emplean para modelar la vista de diseño estática o la vista de procesos estática de un sistema al igual que se hace con los diagramas de clases, pero desde la perspectiva de instancias reales o prototípicas.

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 59 Diagramas de objetos Un diagrama de objetos representa una escena estática dentro de la historia representada por un diagrama de interacción. Los diagramas de objetos se utilizan para visualizar, especificar, construir y documentar la existencia de ciertas instancias en el sistema, junto a las relaciones entre ellas.

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 60 Ejemplo diagrama objetos

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 61 Ejemplo diagrama objetos

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 62 Lecturas Recomendadas

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 63 Bibliografia El Lenguaje Unificado de Modelado UML –G. Booch- J. Rumbauhugh – I Jacobson. UML Distilled Martin Fowler – Kendall Scott

UML –Clases – Objetos Diagramas Wilson Peláez Hernández 64 Fin