Clase 3 Diagrama entidad relación
¿Cómo funciona el modelado de datos?
Introducción al mundo de los datos
- Se menciona que incluso personas de telecomunicaciones pueden no entender completamente el mundo de los datos y su funcionamiento.
- La base de datos es un sistema complejo, similar a un sistema operativo, con gestión propia de memoria y capacidad para manejar grandes volúmenes de información.
Estructura básica de una base de datos
- Una base de datos se puede simplificar como tablas con columnas; no debe confundirse con una hoja Excel.
- Ejemplo: en una tabla de empleados, cada columna representa atributos específicos, siendo la clave primaria un identificador único.
Conceptos fundamentales en modelado
- Es crucial diferenciar entre funcionalidad y dato; un dato implica persistencia, es decir, que permanece grabado incluso tras apagar el sistema.
- Al modelar sistemas, se deben considerar las tablas necesarias para representar entidades como mediadores o inscripciones.
Relación entre tablas
- Las bases de datos relacionales permiten establecer relaciones entre tablas para evitar la repetición y asegurar la integridad.
- Se introduce el concepto de claves foráneas para referenciar otras tablas sin repetir información.
Proceso del modelado
- El primer paso en el modelado es identificar funcionalidades mediante diagramas contextuales y casos de uso.
- Para crear un modelo de datos se utilizan herramientas como el modelo entidad-relación extendido y el modelo relacional.
Normativas en bases de datos
- Las bases de datos relacionales siguen normas específicas sobre integridad referencial que son esenciales para comprender su funcionamiento práctico.
¿Cómo modelar la parte persistente del sistema?
Introducción a los Diagramas de Clase y Modelos de Datos
- Los diagramas de clase se utilizan para modelar la parte persistente del sistema, en comparación con el modelo entidad-relación que es conceptualmente expresivo.
- El modelo entidad-relación y los diagramas de clase son intercambiables; si se comprende uno, se puede entender el otro fácilmente.
- Se conceptualiza en términos de entidades reales (ej. empleado, solicitud), evitando pensar en tablas y enfocándose en objetos del mundo real.
Atributos y Entidades
- Las entidades tienen un nombre único que las identifica y pueden tener atributos que describen sus características (ej. NIF, nombre, apellidos).
- Ejemplo práctico: una entidad "funcionario" puede incluir atributos como su código DIR 3 y las naves industriales que supervisa.
Relaciones entre Entidades
- La relación entre entidades se establece mediante acciones (ej. "el funcionario inspecciona naves industriales"), lo cual ayuda a trasladar el enunciado al modelo.
- Es importante identificar cómo las entidades interactúan entre sí para crear un modelo coherente.
Clave Primaria y Diseño de Base de Datos
- Cada entidad debe tener una clave primaria obligatoria (ej. NIF), que identifica de manera única cada registro dentro del sistema.
- En programación, a menudo se crea un identificador artificial incremental además de la clave primaria para facilitar la gestión.
Importancia del Modelo Conceptual
- Un buen diseño de base de datos es fundamental para asegurar la comunicación efectiva entre diccionarios y metadatos.
- Es esencial dominar el modelado de bases de datos para poder hablar tanto en términos funcionales como en términos técnicos sobre los datos.
Complejidad en Relaciones
- Las relaciones son más complejas que las entidades; es crucial entender cómo establecer correctamente estas relaciones durante el modelado.
- La práctica constante ayuda a simplificar el proceso mental necesario para crear modelos entidad-relación efectivos.
¿Cómo abordar la cardinalidad en diagramas de entidad-relación?
Conceptos básicos de cardinalidad
- La cardinalidad se refiere a cuántos empleados trabajan en un departamento como mínimo y máximo, así como cuántos departamentos puede abarcar un funcionario.
- En el contexto de los diagramas entidad-relación, estas preguntas sobre la cardinalidad son interdependientes y deben ser consideradas conjuntamente.
Diagramas de clases y su complejidad
- Se menciona que en UML, el diagrama de clases permite representar la cardinalidad de manera más natural, aunque puede generar confusión.
- Se asignan tareas para crear un diagrama entidad-relación y se enfatiza que no es necesario incluir las cardinalidades en este ejercicio específico.
Ejercicios semanales y su importancia
- A partir de la próxima semana, se realizarán ejercicios semanales que incluyen diagramas de contexto, casos de uso, entidad-relación y clases. Esto ayudará a consolidar conocimientos prácticos.
- Dominar los diagramas de casos de uso y clases es crucial ya que representan una parte significativa del examen. Un buen manejo facilitará responder otras preguntas relacionadas con arquitectura del sistema y seguridad.
¿Qué es la jerarquía en los diagramas?
Relación entre supertipos y subtipos
- En el diagrama de clases se utiliza la agregación para establecer relaciones jerárquicas entre supertipos (como "empleado") y subtipos (fijo, temporal). Esto ayuda a conceptualizar mejor el sistema a desarrollar.
- Es importante expresar estas relaciones conceptualmente cuando son relevantes para el desarrollo práctico del sistema; no deben añadirse sin razón justificada.
Ejemplificación práctica
- Se propone un ejercicio donde los participantes deben dar ejemplos reales para ilustrar relaciones entre objetos; esto facilita la comprensión del concepto teórico mediante aplicaciones prácticas.
- Un ejemplo discutido incluye entidades como "documento" con herencia hacia "solicitud", "acuse recibo" o "adjunto". Esto muestra cómo las entidades pueden relacionarse dentro del modelo propuesto.
Desafíos al modelar sistemas
Importancia del equilibrio en el diseño
- Los estudiantes discuten sobre la dificultad de equilibrar lo esencial con lo innecesario al modelar sistemas; añadir elementos irrelevantes puede consumir tiempo valioso durante exámenes prácticos.
- La representación gráfica debe ser clara; errores comunes incluyen olvidar establecer relaciones necesarias entre entidades ya definidas, lo cual complica aún más el proceso si no se corrige a tiempo.
Uso de Friction y Gomas en el Aprendizaje
Herramientas de Escritura
- Se menciona la preferencia por el uso de gomas específicas para borrar, como las de fricción, que requieren una técnica particular para su uso.
- Un alumno utiliza un bolígrafo normal para escribir rápidamente, pero opta por usar fricción para diagramas, mostrando la adaptabilidad en el uso de herramientas.
- La goma de borrar específica para fricción es destacada por su eficacia y precisión al eliminar marcas del papel.
Dudas y Ejercicios
- Se plantea que las dudas surgirán principalmente durante la realización de ejercicios prácticos, lo cual es parte del proceso de aprendizaje.
- Se discute la complejidad en A1 sobre cómo traducir textos a diagramas, enfatizando la necesidad de discernir información relevante.
Enfrentando Desafíos
- El instructor anima a los estudiantes a enfrentarse a los desafíos como parte esencial del aprendizaje efectivo.
- La importancia de trabajar con soluciones visibles se cuestiona; se sugiere que aprender requiere esfuerzo personal.
Documentación y Plantillas
- Se aconseja crear documentos organizados donde cada tipo de pregunta tenga su propio espacio o título para facilitar el estudio.
- Los estudiantes deben construir un documento que sirva como plantilla personalizada para sus exámenes futuros.
Preparación para Exámenes
- La creación de un documento compartido es fundamental; servirá como guía personal con frases y descripciones relevantes.
- Se destaca la importancia de tener una estructura clara al abordar preguntas específicas durante los exámenes.