Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porSantiago Agüero García Modificado hace 9 años
1
1 2015-11-23/27 1 Introducción a UML Antonio F. Rodríguez CNIG (IGN)
2
2 2015-11-23/27 Introducción al modelado Modelado de datos Lenguajes de modelado Lenguaje Unificado de Modelado Ejemplos Conclusiones
3
3 2015-11-23/27 Modelado de datos Búsqueda de la estructura de datos óptima Cuántos ficheros, registros, campos, claves,... Formatos, longitudes de campos,... Para explotar un SI Para intercambiar datos Para armonizar un campo de aplicación Problema de ingeniería
4
4 2015-11-23/27 Ventajas de tener un Modelo Comprensión profunda del problema Modelo independiente de plataformas Facilita: migraciones, ampliaciones, y mejoras Permite la estandarización Descripción formalizada Inteligible por otros (humanos/sistemas) Documentación del sistema
5
5 2015-11-23/27 Construcción de un edificioPlanos Implantación de un SIModelo
6
6 2015-11-23/27 Para modelar Tener experiencia Tener tiempo suficiente Es un proceso de maduración Nunca modelar en solitario Siempre en equipo Hay métodos Experiencia y criterios generales a aplicar
7
7 2015-11-23/27 El modelo El modelo explica el significado de los datos Transforma los datos en información Datos: representación simbólica de una información Datos diferente, información igual 2015MMXV Información: conocimiento comunicado o adquirido Datos iguales, información diferente 2015 puede ser : 2015 d. C.1393 (hégira)
8
8 2015-11-23/27 Lenguajes de Modelado Diagramas Entidad-Relación Lenguaje gráfico adaptado al Modelo Relacional UML Norma ISO/IEC 19501: 2005 Lenguaje Unificado de Modelado Tiene muchos tipos de diagramas Diagramas de clase Diagramas de casos de uso
9
9 2015-11-23/27 ¿Porqué es tan importante UML? Es el lenguaje de modelado UNIVERSAL Las normas ISO 19100 están en UML Las especificaciones OGC están en UML Las especificaciones Inspire están en UML Incluso hay esquemas UML publicados en el BOE, todo está en UML
10
10 2015-11-23/27 UML: Diagramas de clase Nombre + atributo1 + atributo2 +… OperacionA ( ) OperacionB ( ) … Clase Agrupación genérica > Instancia Caso, ejemplar Fulano
11
11 2015-11-23/27 Agregación y composición Agregación Características: Agrupación débil 1) Se puede concebir una Uva separada del Racimo 2) Si se destruye el Racimo, no siempre desaparece la Uva Una Uva puede formar parte de un Racimo o de otro Multiplicidad típica: 1..* a 0..1 La frase “A es una mera agrupación de B” tiene sentido Bosque y Árbol Provincia y Municipio Rebaño y Oveja 0..
12
12 2015-11-23/27 Agregación y composición Composición Características: Agrupación fuerte 1) No se puede concebir un Dedo separado de la Mano 2) Si se destruye la Mano, siempre desaparece el Dedo El Dedo no puede formar parte de una Mano u otra Multiplicidad típica: 1 a N La frase “A está hecho de B” tiene sentido Silla y Pata Familia y Persona Coche y Motor
13
13 2015-11-23/27 Agregación y Composición A veces es dudoso En caso de duda y por defecto: Agregación Es más general
14
14 2015-11-23/27 Generalización Caso particular, especializado, incluido en Propiedades Toda instancia de una clase hija, lo es de la madre Las clases hijas heredan todo de la clase madre La frase “B es un caso particular de A” tiene sentido Vía interurbana Autopista Autovía Carretera Desdoblada De 1 orden …
15
15 2015-11-23/27 Las clases hijas no siempre son excluyentes Ni tampoco exhaustivas Generalizaciones no limpias
16
16 2015-11-23/27 Clases de generalizaciones Disyuntiva: las instancias de la clase madre, lo son solo de una clase hija No hay instancias de las dos, no hay intersección
17
17 2015-11-23/27 Clases de generalizaciones Completa: no es posible añadir más clases hijas La clase madre es abstracta y se escribe con cursiva
18
18 2015-11-23/27 Asociaciones lógicas Establecen vínculos lógicos entre clases Relación casual, contingente Es una relación que puede darse o no La frase que mejor funciona tiene un verbo diferente a los anteriores: «tiene» Se debe dar siempre nombre (tiene) a la asociación
19
19 2015-11-23/27 Multiplicidad y roles Multiplicidades Se elige una clase Una Persona ¿con cuántos Perros se relaciona? 0..* Un Perro ¿con cuántas Personas se relaciona? 0..1 Roles Nombre del papel que juega cada clase Inspire: poner siempre nombre de rol
20
20 2015-11-23/27 Asociaciones reflexivas Se relaciona una instancia de una clase con otra instancia de la misma clase No necesariamente una instancia consigo misma
21
21 2015-11-23/27 Relaciones Agregación Composición Generalización Asociación lógica Multiplicidades
22
22 2015-11-23/27 Para modelar Lo primero: Definir el Universo de discurso El subconjunto abstraído del mundo real que tiene todo lo que resulta de interés El contexto Ayuda a fijar los límites del modelo y a no echar a volar la imaginación Evita los: “¿no quedaría mejor si añadimos…?”
23
23 2015-11-23/27 Un ejemplo: el jardín de Juan Juan es un jardinero muy cuidadoso que tiene un jardín con un invernadero y cuatro parterres exteriores, dónde cultiva plantas con flores de colores Mantiene la temperatura del invernadero casi sin fluctuaciones, para que las plantas de interior que cultiva allí sobrevivan sin problemas También mantiene una acidez diferente en el suelo de cada parterre para poder cultivar plantas de exterior de todo varios tipos Tiene etiquetas para nombrar a cada planta con el nombre común y el nombre científico
24
24 2015-11-23/27
25
25 2015-11-23/27
26
26 2015-11-23/27 Clase-asociación Una asociación lógica con atributos
27
27 2015-11-23/27 Otro ejemplo: la academia Se quiere diseñar una Base de Datos para la gestión administrativa de un centro educativo: Para generar Horarios Listas de clase Listas de notas Calcular sueldo de los profesores Cada asignatura es impartida por un solo profesor, en las asignaturas hay alumnos matriculados que sacan notas
28
28 2015-11-23/27 Clases PROFESOR ASIGNATURA ALUMNO
29
29 2015-11-23/27 UML: un esquema
30
30 2015-11-23/27 Otro ejemplo: el Registro Civil muy tradicional Relaciones entre personas: matrimonios (gananciales, separación de bienes), relación padres-hijos y entre los hermanos Matrimonio Fecha Régimen No hay divorcio Persona Datos de identificación Se tienen en cuenta: Matrimonio (clásico) Nacimientos Defunciones
31
31 2015-11-23/27
32
32 2015-11-23/27
33
33 2015-11-23/27 Objetos Nombres autoexplicativos Hay que buscar el mejor nombre posible, el más claro En singular Salvo excepciones: gafas, tijeras, pantalones… En español, mejor en español Comenzar por Mayúscula, cada palabra con May. A, B, C…Z, a, b…z, 1, 2, 3, 4… con _ en prefijo y sin - UPM_DirectordeCine
34
34 2015-11-23/27 Atributos Autoexplicativos, claros y en español Comienzan por minúscula, sin _ ni – A, B, C…Z, a, b…z…1, 2, 3… Hay atributos que pueden tener (n) valores Por defecto: públicos (+)
35
35 2015-11-23/27 Para modelar 1) Definir el contexto Universo de discurso: parte y visión del mundo que interesa 2) Resumirlo 3) Definir los requerimientos de usuario Las preguntas que va a responder el sistema 4) Sustantivosobjetos 5) Verbosrelaciones 6) Adjetivosatributos 7) Simplificar 8) La semántica es importante
36
36 2015-11-23/27 Estereotipos Es una manera de clasificar las clases UML, de decir que son de un tipo (estereotipo) especial. Se escribe un nombre entre « » Por ejemplo «Enumeration», Tipos «type», Interfaces «interface»
37
37 2015-11-23/27 Enumeration y codelist Se pueden definir listas de valores controlados cerradas (enumeration) y abiertas (codelist) Siempre mejor codificadas codelist
38
38 2015-11-23/27 Tipos de datos de usuario Tipo de datos de usuario Un lenguaje nos da unos tipos de datos básicos Char, string, boolean, integer, real…. Se pueden definir tipos de datos de usuario
39
39 2015-11-23/27 Un objeto puede ser un tipo de datos Manejar un objeto como un tipo de datos Se define como «type» Se utiliza como un tipo de datos de usuario
40
40 2015-11-23/27 Primitivas de ISO 19107 Spatial schema
41
41 2015-11-23/27 Ejemplo de uso de los Tipos de primitiva
42
42 2015-11-23/27 Estereotipos Estereotipos Enumeration Codelist Type …
43
43 2015-11-23/27 Dependencia Cuando una clase depende de otra Tiene una operación que utiliza los atributos de otra clase Se representa con una flecha discontinua
44
44 2015-11-23/27 Paquetes Son submodelos o partes del modelo que interesa aislar por su significado Los objetos pueden llevar un prefijo de paquete GM_Point TP_Node
45
45 2015-11-23/27 Notas y restricciones Conectados a los objetos afectados Nota Restricción
46
46 2015-11-23/27 Un concepto de modelado en INSPIRE Un atributo [1] es obligatorio [0..1] es opcional «voidable» significa: si se conoce el valor, es obligatorio (es omisible) Ejemplo: El CRS de un fichero Parece obligatorio Pero ¿y si no se sabe?
47
47 2015-11-23/27 Objetos geométricos
48
48 2015-11-23/27 ISO 19137 Modelo espacial esencial
49
49 2015-11-23/27 Modelo, esquema y especificaciones Un Modelo consta de: Esquema Objetos, atributos, asociaciones… Definiciones Reglas Un texto explicativo Unas especificaciones constan de un Modelo y más cosas (metadatos, calidad, CRS, catálogo de objetos geográficos, representación…)
50
50 2015-11-23/27 Conclusiones Modelar, tarea clave Larga vida al UML Normas ISO, estándares OGC, textos Inspire… Hay que aprender a leer UML
51
51 2015-11-23/27 Antonio F. Rodríguez CNIG (IGN) afrodriguez@fomento.es +34 91 5979661 ¡Muchas gracias!
52
52 2015-11-23/27 Referencias «Aprendiendo UMP en 24 horas» Joseph SchummerAprendiendo UMP en 24 horas Herramientas para UML http://modeling-languages.com/herramientas-para-uml/ http://www.umlzone.com/
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.