Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
APLICACIONES DE BASES DE DATOS PARA LA ADMINISTRACION DE EMPRESAS Y ECONOMIA ¿Bases de Datos? Bases de Datos? ¿Bases de Datos? INTRODUCCIÓN Concepto de Base de Datos Base de Datos: Conjunto de datos relacionados entre si. Propiedades: Una Base de Datos tiene una fuente de la cuál derivan los datos. Tienen cierto grado de interacción con los acontecimientos del mundo real. Tienen una ordenación lógica, consistente y coherente. Responden a una serie de requerimientos de sus interesados, que consiste en la administración de información Registro de datos. Realización de formularios de entrada de datos o interfaz hombre / computador. Realización de consultas de los datos almacenados. Informes que muestran los datos. Dirigidos para un objetivo determinado y a un grupo de usuarios específicos, activamente interesados en su contenido. Concepto de Base de Datos Base de Datos: Conjunto de datos ordenados y organizados en tablas (o entidades) Tablas: están compuestas por un grupo de datos llamados campos Registro: Grupo de campos Algunas tablas se relacionan con otras a través de vínculos formados por algunos de sus campos Los campos de una tabla y los datos Los datos pueden corresponder a cualquier entidad del mundo real (números, nombres, direcciones, fechas, etc.). Los campos almacenan datos del mismo tipo y pueden ser por ejemplo: Nombre Dirección Numero de Teléfono RUT Fecha de Nacimiento Número de Teléfono Cantidad de empleados Según los requerimientos de los campos pueden variar en cantidad y tipo de datos: Texto Números Fechas Tipos especiales (Memo, gráficos, etc.) ¿Para quiénes o qué se aplican las Bases de Datos? En general para todas las entidades físicas o lógicas que necesiten administrar su información. Una persona jurídica (ej. una empresa) Una persona física (ej. un individuo) El ámbito de acción de las Bases de Datos es muy variable, y depende de la especificación de los requerimientos de los interesados. Algunos ámbitos pueden ser: Económicos Profesionales Empresas e Individuos en general Titulares de tarjetas de crédito Bancos Universidades, etc. ¿Para qué sirve una Base de Datos? Mediante una Base de Datos de alguna Empresa, es posible Administrar los datos de sus clientes potenciales Dirigir una campaña comercial en forma directa y programada Proveer a los clientes y empleados de datos a la medida de sus necesidades Realizar un control de los productos ofrecidos Contar con el registro de las ventas realizadas Obtener información gerencial útil para la toma de decisiones Etc. ¿Para qué sirve una Base de Datos? Por ejemplo: la Empresa ya no tendría que esperar que los mejores clientes se acerquen a ella, ésta los podría atraer en forma directa ofreciéndoles un beneficio concreto, diferenciándose, ganándole a su competencia, canalizando sus esfuerzos comerciales vía telemarketing, mailings, visitas personalizadas, etc., de la manera mas efectiva ejerciendo un control completo sobre su fuerza de ventas e inversión publicitaria. Algunos beneficios inmediatos Optimización de su inversión Costos mínimos Comunicación uno a uno Altas posibilidades de comunicación Respuesta personalizada asegurada Programación profesional de campañas de ventas Obtención de información ''en línea'' Interfaces Interfaz Basada en Menús Se presenta al usuario opciones en forma de menús (no se requiere memorizar comandos ni sintaxis). Interfaces gráficas Se presenta el esquema en forma de diagrama. La consulta se hace Manipulando el Diagrama. Puede combinarse con la interfaz basada en menús. Interfaces de Formularios El Usuario llena ciertos espacios del formulario, y el sistema busca los registros que coincidan. Interfaz de Lenguaje Natural Solicitud en Inglés o Castellano. Existe un diccionario de palabras. Interfaz para usuarios paramétricos Ejemplo : Cajero de un banco. Interfaz especial con un conjunto muy reducido de opciones. Pueden usarse teclas de funciones, etc. Interfaz para el DBA (Administrador de la Base de Datos) Crear cuentas Modificar esquemas Reorganizar estructura de almacenamiento de la BD Establecer parámetros del sistema. Los actores en torno a una Base de Datos Administrador de la BD (DBA) Responsable de administrar los dos recursos fundamentales de este enfoque: La base de datos de la misma El SGBD Diseñadores de la BD Identifican los datos necesarios y crean esquemas en los distintos niveles. Usuarios Finales Esporádicos (diferente información cada vez, leguaje de consulta) Simples o Paramétricos (transacciones programadas) Avanzados (ingenieros, científicos, analistas) Analistas de Sistemas y programadores Analistas: Determinan los requerimientos de los usuarios (simples o paramétricos). Especificación de las transacciones programadas. Programadores: Implementan las especificaciones del diseño conceptual, realizan las pruebas de funcionamiento de la Base de Datos, efectúan la documentación y depuración de la Base de Datos. MODELO ENTIDAD - RELACIÓN Modelo Entidad-Relación Diseño Conceptual (Modelo E-R) Antes de construir una BD, es fundamental realizar el diseño de la misma. El diseño de una BD requiere de: La descripción concisa de los requerimientos de información de los usuarios. El diseño de una BD contiene: Descripciones detalladas de tipos de datos, vínculos y restricciones expresadas en lenguaje de alto nivel (diagramas). El modelo Entidad-Relación (E-R) Se trata de una técnica de diseño de BD gráfica, que muestra información relativa a los datos y la relación existente entre ellos. Sus características principales son: Reflejan sólo la existencia de los datos sin expresar lo que se hace con ellos. Es independiente de las BD´s, de los Sistemas Operativos y de los SGBD. Está abierto a la evolución del sistema. Incluye todos los datos que se estudian sin tener en cuenta las aplicaciones que se van a tratar. No tienen en cuenta restricciones de espacio y almacenamiento del sistema. Es uno de los lenguajes de alto nivel más utilizados para este fin. Es muy fácil de entender, por tanto es una buena herramienta de comunicación entre los diseñadores y los usuarios no técnicos. Conceptos Básicos del Modelo E-R Entidades Son objetos del mundo real concretos o abstractos que presentan interés para el sistema y sobre los que se recoge información que será representada en un sistema de bases de datos. Por ejemplo, clientes, proveedores y facturas serían entidades en el entorno de una empresa. Entidad 1 Modelo Entidad Relación Conceptos Básicos del Modelo E-R Atributos Es una unidad básica e indivisible de información acerca de una entidad o una relación. Por ejemplo la entidad proveedor puede tener los atributos nombre, domicilio, producto, etc. Los atributos son propiedades específicas que sirven para describir las entidades. Cada uno de éstos, estará asociado a un valor o dato para una entidad determinada. Pueden ser: Simples (nombre, edad) o Compuestos (dirección: calle, cuidad, país, etc.) Monovaluados (edad) o Multivaluados (colores, grados académicos, etc.) Almacenados (fecha de nacimiento) o Derivados (edad) Atributos Claves, quienes identifican de manera única la entidad. Atributo 1 Modelo Entidad Relación Conceptos Básicos del Modelo E-R Vínculos Un Vínculo, permite asociar dos o más entidades. Cada instancia de un vínculo R es una asociación de las entidades que participan en ella. Vínculos recursivos: entidades se distinguen asignando un rol a cada uno de ellos. Por ejemplo: Supervisa_A corresponde a un vínculo binario entre Empleado y Empleado, pero existen dos roles: el de Supervisor y el de Supervisado. Razónde cardinalidad: Es el número de instancias de vínculos en que puede participar una entidad. En el caso de vínculos Binarios podemos tener: 1:1 DIRIGE entre EMPLEADO y DEPTO 1:N TRABAJA_EN entre DEPTO y EMPLEADO M:N La misma que la anterior, pero si los empleados pudiesen trabajar en más de un DEPTO. Vínculo 1 Modelo Entidad Relación Conceptos Básicos del Modelo E-R Tablas relacionales Son tablas que cumplen los siguientes requisitos: Cada fila debe ser única, es decir no pueden existir filas duplicadas. Cada columna debe ser única. Los valores de las columnas deben pertenecer al dominio de cada atributo. (Domino: Conjunto de valores que puede tomar cada atributo) Debe tener un solo tipo de fila, cuyo formato está definido por el esquema de tabla o la relación. El valor de la columna para cada fila debe ser único. No puede contener columnas duplicadas. Conceptos Básicos del Modelo E-R Claves En una tabla relacional a veces es necesario poder determinar una tupla (registro) concreta, lo cual es posible mediante la clave. Se debe elegir la clave entre los atributos, de forma que no puedan existir valores duplicados (la clave puede contener uno o más atributos). Integridad Referencial Se especifica entre dos relaciones y sirve para mantener la constancia entre tuplas de las dos relaciones. La idea es asegurar que si una tupla en una relación hace referencia a otra de una segunda relación, ésta última exista. Notación Ejemplo Ejemplos del diseño de Base de Datos Vamos a crear una base de datos para organizar la información de una empresa. En la empresa quieren que la base de datos se encargue de manejar los empleados, los departamentos y los proyectos. Con esta simple descripción ya sabemos que necesitaremos por lo menos 3 entidades: EMPLEADO, DEPTO Y PROYECTO. EMPLEADO DEPTO PROYECTO Qué atributos están interesados en guardar por entidad en la empresa? El analista averigua lo siguiente: Cada departamento tiene un nombre y un número único. Además un departamento puede estar ubicado en varios lugares (o sucursales de la empresa). Para los empleados se quiere almacenar nombre, apellido paterno, apellido materno, RUT, sexo y salario. Cada proyecto se distingue por un número único, un nombre y un lugar en donde está ubicado. Todos los atributos nombrados en la descripción son atributos simples, menos los lugares que es un atributo multivaluado (ya que puede ser más de uno) Qué atributos están interesados en guardar por entidad en la empresa? Cómo se relacionan estas 3 entidades dentro de la empresa? El analista nos dice: Cada departamento controla un cierto número de proyectos. Y cada proyecto solamente puede pertenecer a un solo departamento. Vamos a incluir esta relación usando un vínculo entre DEPTO y PROYECTO, CONTROLA (ya que cada departamento controla proyectos). Esta relación será 1 a N porque un departamento puede contener N proyectos y un proyecto puede estar contenido en sólo 1 departamento. Cómo se relacionan estas 3 entidades dentro de la empresa? Cómo se relacionan estas 3 entidades dentro de la empresa? Cada departamento está dirigido por un empleado, su gerente. Y se desea almacenar en la base de datos la fecha en que comenzó el gerente en ese departamento. Esta relación la vamos a incluir con nuevo vínculo entre EMPLEADO y DEPTO, el vínculo se llamará DIRIGE (ya que un empleado dirige un departamento). Esta relación será 1 a 1 ya que un empleado sólo puede dirigir 1 departamento y un departamento sólo puede ser dirigido por 1 empleado. Además nos falta incluir en el vínculo el atributo FECHA_INICIO. Cómo se relacionan estas 3 entidades dentro de la empresa? Cómo se relacionan estas 3 entidades dentro de la empresa? Los empleados trabajan en proyectos (pueden trabajar en varios). Y un proyecto puede haber sido asignado a un grupo de empleados. Con esta descripción podemos ver que entre EMPLEADO y PROYECTO existe una relación M a N, ya que un empleado puede trabajar en M proyectos y un proyecto puede estar siendo desarrollado por N empleados. A este nuevo vínculo lo llamaremos TRABAJA_EN: Cómo se relacionan estas 3 entidades dentro de la empresa? Cómo se relacionan estas 3 entidades dentro de la empresa? A la empresa le interesa saber cuantas horas asignadas a cada proyecto tienen sus empleados. Dado la información anterior podemos darnos cuenta que tendremos que agregarle un atributo al vínculo TRABAJA_EN, el atributo HORAS. Cómo se relacionan estas 3 entidades dentro de la empresa? Modelo Relacional EMPLEADO(NOMBRE, AP_PAT, AP_MAT, SEXO, RUT, SALARIO) PROYECTO(NOMBRE, NUMERO PROY, LUGAR_PROY) DEPTO(NOMBRE, NUMERO DEPTO, LUGAR_D) LUGARES_DEPTOS(NUMERO_DEPTO, LUGAR_D) LUGAR_D) es MULTIVALUADO CLAVES Vínculo 1 a 1 (DIRIGE) El vínculo más simple que tenemos en nuestro diagrama es DIRIGE, ya que es 1 a 1. En este caso lo que se hace es agregar los datos claves de una de las tablas a la otra (ya que sólo se asocia una tupla a otra). En nuestro caso agregaremos el atributo clave de EMPLEADO en DEPTO, y así en la misma tabla en donde almacenamos los datos del proyecto almacenaremos el RUT del gerente del departamento. Consideremos que el vínculo DIRIGE contiene un atributo, FECHA_INICIO. Por lo tanto las tablas hasta el momento tienen la siguiente forma: EMPLEADO(NOMBRE, AP_PAT, AP_MAT, SEXO, RUT, SALARIO) PROYECTO(NOMBRE, NUMERO PROY, LUGAR_PROY) DEPTO(NOMBRE, NUMERO DEPTO, RUT_GTE, FECHA_INIC_GTE) LUGARES_DEPTOS(NUMERO_DEPTO, LUGAR_D) Vínculo 1 a N (CONTROLA) El siguiente vínculo que analizaremos es CONTROLA, ya que es un vínculo 1 a N. Como un proyecto tiene asociado sólo un departamento, podemos agregar en la tabla PROYECTO el atributo clave de DEPTO, es decir NUMERO. Luego las tablas quedarían de la siguiente forma: EMPLEADO(NOMBRE, AP_PAT, AP_MAT, SEXO, RUT, SALARIO) PROYECTO(NOMBRE, NUMERO PROY, LUGAR_P, N_DEPTO) DEPTO(NOMBRE, NUMERO DEPTO, RUT_GTE, FECHA_INIC_GTE) LUGARES_DEPTOS(NUMERO_DEPTO, LUGAR_D) Vínculo M a N (TRABAJA_EN) Nos queda sólo un vínculo por analizar, TRABAJA_EN, que es M a N. En este caso como siempre se asocia más de una tupla a la otra tabla no es posible agregar los atributos claves de una en la otra. Luego tendremos que crear una nueva tabla, TRABAJA. Esta tabla debe contener los atributos claves de las tablas EMPLEADO y PROYECTO (para conectar las 2 tablas) más los atributos propios del vínculo (en este caso HORAS). Por lo tanto la nueva tabla sería: TRABAJA(NUMERO_PROY, RUT, HORAS) Hemos elegido como clave principal de la tabla TRABAJA, a los atributos NUMERO_PROY y RUT, ya que la idea de crear esta tabla es asociar muchos proyectos con muchos empleados y por lo tanto es necesario crear una tupla para cada proyecto de cada empleado. Modelo Relacional Final Ya hemos analizado todas las entidades y los vínculos existentes entre ellas. La base de datos que obtenemos finalmente, lista para ser implementada en Access es: EMPLEADO(NOMBRE, AP_PAT, AP_MAT, SEXO, RUT, SALARIO) DEPTO(NOMBRE, NUMERO DEPTO, RUT_GTE, FECHA_INIC_GTE) LUGARES_DEPTOS(NUMERO_DEPTO, LUGAR_D) PROYECTO(NOMBRE, NUMERO PROY, LUGAR_P, N_DEPTO) TRABAJA(NUMERO_PROY, RUT, HORAS) Esquema de relaciones, en Access
Compartir