10-Unidad 3: Componente técnico profesional general de la Carrera -3.2 Tópico 2: Base de datos
LuisFerAguas
211 views
51 slides
Jun 08, 2020
Slide 1 of 51
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
About This Presentation
10-Unidad 3: Componente técnico profesional general de la Carrera -3.2 Tópico 2: Base de datos
Size: 733.05 KB
Language: es
Added: Jun 08, 2020
Slides: 51 pages
Slide Content
Unidad 3: Componente técnico profesional general de la Carrera 3.2 Tópico 2: Base de datos Trabajo de Titulación Modalidad de estudios: Semi Presencial Mg. Luis Fernando Aguas Bucheli +593 984015184 @ Aguaszoft [email protected][email protected] Muchos a muchos Muchos a uno Uno a uno A B A B A B
Objetivos del encuentro: Adquirir los conceptos básicos relacionados para el desarrollo del examen de fin de carrera Reconocer las características para el desarrollo del examen de fin de carrera Semana Nro. 10
Frase Motivacional “Siempre que ves una persona exitosa percibes sus glorias, y nunca los sacrificios que la llevaron hasta allí” – Vaibhav Shah .
4 Modelo E-R generalidades El modelo E-R fue creado por Chen (1976). Permite representar una abstracción del mundo real en conceptos de bases de datos. Ampliamente utilizado actualmente en DBMS Oracle DB2 Ms SQL Server MySQL PostgreSQL FireBird Los elementos del modelo E-R son: Entidades con sus atributos Relaciones entre entidades
5 ENTIDAD – conjunto de entidades Entidad Es un objeto del mundo real que se distingue de otros objetos . Observando la realidad podemos abstraer los objetos de los cuales queremos almacenar información, o de la necesidad de los usuarios finales.
6 ATRIBUTOS Los atributos representan las propiedades o características de las entidades y/o de sus relaciones. Los atributos tienen un valor único para cada entidad, que pertenecen a un dominio de valores específico. Ej: atributo dominio: Nombre caracteres A..Z, a..z Fecha de nacimiento fechas válidas Sexo Masculino, Femenino
7 Representación de Entidades y atributos El modelo E-R representa las entidades con rectángulos con su nombre en el interior. El modelo E-R representa los atributos con elipses con su nombre en el interior. Ej: Entidad “Alumnos” tiene los atributos: nombre, cédula, nacionalidad, teléfono, sexo. Alumnos Cédula Nombre Dirección Teléfono Sexo
8 Atributos según su estructura Atributo Simple Valor indivisible Ej..: nombre Atributo Compuesto Valor divisible Ej..: dirección ciudad barrio calle número LECTORES nombre dirección ciudad barrio calle número
9 Atributo Monovalorado Toma un solo valor Ej..: Cédula Atributo Multivalorado Toma n valores Ej..: Teléfono(s) cédula teléfonos Atributos según su número máximo de valores LECTORES
10 Atributos según su información Atributo Primitivo Valor independiente Ejemplos: Existencia Fecha de nacimiento Atributo Derivado Puede ser calculado Ejemplos Total inventario Edad LIBRERIA LIBROS Ofrece Precio ALUMNOS Edad Inventario Fecha de Nacimiento
11 RELACION Una RELACION es una asociación entre entidades. En general son asociaciones entre objetos. Se representan con un rombo con su nombre en la parte interna. Según el número el número de entidades, se clasifican en: relaciones binarias, relaciones ternarias, ...
12 Relaci ó n binaria y ternaria Relación Binaria Relación Ternaria ALUMNO ASIGNATURA PROFESOR GRUPO toma dicta ASIGNATURA
13 Relaciones recursivas Cuando una entidad se relaciona consigo mismo Ejemplo relación “Casado” Es importante el “Rol” marido Mujer PERSONAS Casado mujer marido
14 Atributos en Relaciones Las relaciones pueden tener atributos Por ejemplo: El atributo precio de compra de un libro depende de la librería y del libro comprado. LIBRERÍAS LECTORES LIBROS Compra precio
15 2.2 RESTRICCIONES Y CLAVES La restricción de cardinalidad expresa el número de entidades a las que una entidad puede estar asociada. Se analizan sobre relaciones binarias. Si A y B son entidades, las cardinalidades pueden ser: Uno a uno Uno a muchos Muchos a muchos
16 Cardinalidad Representaci ó n gr á fica PERSONA DEPARTAMENTO dirige 1 1 PERSONA DEPARTAMENTO trabaja N 1 ACTOR PELICULA actúa N N
17 Tipos de Cardinalidad Muchos a muchos Muchos a uno Uno a uno A B A B A B Sean A y B conjuntos de entidades
18 CLAVE Una clave permite identificar de manera única a un elemento. En conjunto de entidades: Permiten identificar de forma única a una entidad dentro del conjunto de entidades. En conjunto de relaciones: Permiten identificar de forma única a una relación dentro del conjunto de relaciones. El(los) atributos que conforman la clave se subrayan en el modelo E-R, para Identificarlos.
19 Tipos de claves en entidades Superclave Conjunto de atributos que identifican unívocamente una entidad. Clave candidata Es una superclave mínima Clave primaria Es una clave candidata seleccionada por el diseñador de la BDD Debe seleccionarse atributos que no cambien o cambien rara vez.
20 Claves en relaciones Si la relación no tiene atributos La superclave de la relación es la unión de las claves primarias de las entidades que relaciona La clave primaria de la relación es igual a la superclave Si la relación tiene atributos La superclave es la unión de las claves primarias de las entidades que relaciona y los atributos existentes. La clave primaria es la unión de las claves primarias de las entidades relacionadas Es mejor descomponer una relación ternaria en dos binarias .
21 Ejemplo de claves Valor único por entidad el RUC la cédula La clave puede ser compuesta Articulo x Bodega Estudiante x Materia LIBRERÍAS LECTORES nombre dirección Frecuenta RUC dirección cédula
22 2.3 PREGUNTAS DE DISEÑO 1) Utilizar entidades o atributos? Ejemplo entidad empleado con atributos nombre y teléfono. Puede ser considerado teléfono como entidad? Puede considerarse nombre como entidad? 2) Utilizar entidades o relaciones ? Ejemplo cliente préstamo Puede considerar préstamo como entidad? Puede considerar préstamo como relación?
23 Preguntas de diseño 3) Relaciones binarias o ternarias Relación padre, madre e hijo , o Relación Padre-hijo, Madre-Hijo 4) Atributos en la relación o en la entidad Considere relación articulo esta en bodega El atributo existencia debe estar en? Entidad bodega Entidad articulo Relación está
24 2.4 Símbolos Entidad – Relación Atributo (monovaluado) Atributo clave Atributo compuesto Atributo multivaluado Atributo derivado Entidad Entidad débil Relación Unión
25 2.5 Conjunto de entidades débiles Entidad Débil Depende de otra entidad Ej.: ESTANTE de librería No existe estante sin librería La clave hereda de entidad fuerte + su clave propia Entidad Fuerte Existe independientemente aporta su clave a entidad débil Ej.: LIBRERIA LIBRERÍAS número RUC Tiene ESTANTES
26 2.6 Características del modelo E-R extendido: Especialización Un conjunto de entidades puede incluir subgrupos de entidades que se diferencian de alguna manera Por ejemplo entidad Empleado (nombre, calle, ciudad) Empleado puede ser: empleado por contrato Atributo numero de contrato empleado por horario Numero de horas trabajadas Sueldo por hora Entonces entidades empleado_hor, empleado_con son ESPECIALIZACIONES de entidad empleado
27 Especialización ejemplo nombre Cédula Empleado dirección Emp_Contrato contratoid Sueldo-hora Emp-Horario horas_trabajo ES
28 Generalización GENERALIZACION A veces se determina primero las entidades especializadas y deduce la entidad superclase. Al proceso inverso de especialización se denomina generalización. HERENCIA La especialización hace que los atributos de la superclase se hereden a todos las entidades subclases. La especialización/generalización crean jerarquías de entidades.
29 Agregación El modelo E-R no soporta relaciones entre relaciones. La agregación sirve para expresar que las ocurrencias de la relación agregada se comportan también como entidades. Para ello, se engloba el símbolo de la relación con un rectángulo, lo que denota que esa relación es un objeto agregado.
30 Agregación ejemplo n Casados_en Juzgado Hombre Matrimonio Mujer n n 1
31 2.7 Diseño de un esquema de Bases de Datos E-R El modelo E-R es flexible (demasiado) Decisiones a tomarse Se usa un atributo o entidad Es mejor representar como entidad o como relación Se usa una relación ternaria o dos binarias Se define una entidad fuerte o débil Se utiliza generalización o una jerarquía de relaciones Se utiliza agrupación El diseñador debe tener un buen entendimiento de la empresa (situación) que se modela
32 MODELAMIENTO
33 MODELO E-R : Fases de Diseño Diseño Conceptual Es la fase inicial Especificación de requerimientos del usuario Especificar de manera sistemática los requerimientos de datos Especificar requisitos funcionales y no funcionales Diseño Lógico Traducir el esquema conceptual a modelo E-R Especificación de tablas Especificación de campos Especificación de relaciones Diseño Físico Utilizar sentencias DDL para crear el esquema de base de datos
34 Caso: BDD para COMPAÑÍA ACME Diseño Conceptual La compañía consiste de departamentos que tienen un nombre y número, tienen un administrador el cual es uno de los empleados. Es necesario mantener la fecha de inicio como administradores del departamento. Los departamentos pueden tener varias ubicaciones, pero tienen por lo menos una ubicación. Un departamento controla un número de proyectos. Un proyecto tiene un nombre, número y una sola ubicación, los cuales pueden no coincidir. Para empleados se requiere el nombre completo, Cedula, dirección, salario, sexo y fecha de nacimiento. Un empleado trabaja para un departamento pero puede estar trabajando en varios proyectos, incluyendo aquellos de otros departamentos. Se realiza un seguimiento de cuántas horas por semana y en que proyecto. Cada empleado también tiene un supervisor directo (otro empleado). Los empleados pueden tener dependientes (esposo (a) o hijos) de quienes necesitamos el nombre, sexo, fecha de nacimiento y relación con el empleado.
35 ACME : Entidades, atributos Identificar Entidades Empleado Javier Castillo El departamento de investigación, y El proyecto Rexona Axe Identificar Atributos de entidad Empleado Atributos: Nombre de pila , CI , Dirección , Sexo , Fecha de nacimiento Valores: ‘Javier Castillo’, 1708547851, ‘Av.Central, La Paz 123’, ‘Masculino’, ‘09-Enero-1955 ’
36 ACME : Tipos de atributos Atributos simples : CI, Sexo, Fecha de nacimiento. Atributos compuestos : Dirección , (Calle, Casa#, Ruta, Ciudad, Departamento#)) Atributos multivaluados : Números Telefónicos Atributos derivados: Edad Atributos compuestos y multivaluados pueden estar anidados arbitrariamente hasta cualquier profundidad, pero esto es raro.
37 ACME : Relaciones Trabaja para Un empleado “trabaja para” el departamento Administra Un empleado “administra” el proyecto Controla El empleado “controla” el departamento Trabaja en Un empleado “trabaja en” el proyecto Depende de La señora MM “depende de” el empleado JJ Es jefe de ….
38 Fecha inicio NroDeEmpls 1 . . N 1 . . N 1 . . 1 . . N CI Fecha Nacimiento Sexo Nombre P Inicial Apellido Nombre Direcci ón Sueldo Nombre N úmero Localidades Localidad Nombre Horas . . 1 . . N 1 . . 1 . . N . . 1 1 . . 1 1 . . N 1 . . 1 CARGA FAMILIAR N úmero ACME diagrama E-R Relación familiar sexo nombre Fecha nacimiento EMPLEADO DEPARTAMENTO PROYECTO Trabaja para Administra Es jefe de Controla Trabaja en Depende de
39 2.8 Reducción de un esquema E-R a tablas Entidades fuertes Cada entidad fuerte es una tabla Cada atributo de la entidad es un campo El dominio de la tabla es D1 x D2 Entidades débiles Cada entidad débil es una tabla Cada atributo de la entidad débil es un campo La clave primaria de la entidad fuerte se traslada como campos a la entidad débil Relación Si la relación es muchos a muchos La relación es una tabla Los atributos de la relación son campos Las claves primarias de las entidades relacionadas son la clave
40 Trasladar E-R a tablas 2 Atributos compuestos Detallar el atributo compuesto Definir un campo por cada atributo simple Atributos multivalorados Se crea una tabla para los atributos Los campos son la clave primaria y el atributo Generalización a tablas Se puede crear una tabla para la entidad de mayor jerarquía Se crea un campo para cada atributo Se crea una tabla por entidad especifica y heredan campos Se puede crear tablas por cada entidad especifica con columnas para cada uno de los atributos
41 2.9 El lenguaje de modelamiento UML ANTECEDENTES Diversos métodos y técnicas OO, con muchos aspectos en común pero utilizando distintas notaciones Inconvenientes para el aprendizaje, aplicación, construcción y uso de herramientas, etc. Pugna entre distintos enfoques (y correspondientes gurús) PARTICIPANTES Rational Software, Digital Equipment , Hewlett-Packard, IBM, Microsoft , ObjecTime, Oracle Corp., Platinum Technology, Texas Instruments , Unisys , entre otros
42 Diagramas de UML Use Case Diagramas Use Case Diagramas Diagramas de Casos de Uso Escenario Diagramas Escenario Diagramas Diagramas de Colaboración State Diagramas State Diagramas Diagramas de Componentes Component Diagramas Component Diagramas Diagramas de Distribución State Diagramas State Diagramas Diagramas de Objetos Escenario Diagramas Escenario Diagramas Diagramas de Estados Use Case Diagramas Use Case Diagramas Diagramas de Secuencia State Diagramas State Diagramas Diagramas de Clases Diagramas de Actividad Modelo “Un modelo es una descripción completa de un sistema desde una perspectiva concreta”
43 Ejemplo Clase ALUMNO ALUMNO Cedula : char[10] número_exp : int nombre : char[50] alta() poner_nota(asignatura:char *, año:int, nota:float) matricular(cursos : asignatura, año : int) listar_expediente() ATRIBUTOS METODOS
44 Relaciones entre Clases Los enlaces entre clases de objetos pueden representarse como relaciones. Formas de relación entre clases: Asociación y Agregación Expresa una conexión bidireccional entre objetos Generalización y Especialización Conceptos simétricos Las relaciones de Agregación y Generalización forman jerarquías de clases
45 Especificación de multiplicidad (mínima ... máxima) 1 Uno y sólo uno 0..1 Cero o uno M..N Desde M hasta N (enteros naturales) * Muchos 0..* Cero o muchos 1..* U no o muchos (al menos uno) La multiplicidad mínima >= 1 establece una restricción de existencia … Asociación multiplicidad
46 Agregación Ejemplos
47 Jerarquías de Generalización Especialización Se obtiene usando los mecanismos de abstracción de Generalización y/o Especialización La Generalización consiste en factorizar las propiedades comunes de un conjunto de clases en una clase más general Nombres usados: clase padre - clase hija, superclase - subclase, clase base - clase derivada Las subclases heredan características de sus superclases, es decir, atributos y operaciones
48 Ejemplos de Jerarquías de Generalización Especialización
49 Ejemplo UML completo
Direccionamiento actividades de aprendizaje Actividades: Revisar el aula virtual Realizar las actividades y tareas planteadas. Se recomienda describir por ejemplo: Tomar apuntes esenciales, revisar el material de clases