fund. d.b.d. resuelto

207
Fundamentos de Base de Datos Unidad Temas Subtemas 1 Introducción a los sistemas de bases de datos. 1.1 Sistemas de información y bases de datos. 1.1.1Concepto de sistema de información. 1.1.2Sistemas de información para la gestión y para la ayuda en la toma de decisiones. 1.2 Sistemas de información para la gestión y para la ayuda en la toma de decisiones. 1. Sistemas de bases de datos y sus aplicaciones. 1.! Sistemas de bases de datos frente a los sistemas de arc"i#os. 1.$ %os distintitos ni#eles de abstracción d una base de datos. 1.& Usuarios y administradores de la base de datos. 1.' Componentes de los sistemas de bases de datos. 1.( )r*uitectura de los sistemas de bases de datos. 2 +odelo entidad relación. 2.1 Conceptos b,sicos. 2.1.1 -ntidad. 2.1.2 elación. 2.2 Diagramas entidad/relación 0- . 2. Dise o de un es*uema de base datos. 2.! %engua3e de +odelado Unificado U+% 0+odelo Conceptual . +odelo elacional. .1 -l modelo relacional . .2 4lgebra relacional. ! Introducción a S5%.!.1Introducción. !.2 -structura b,sica 0S-%-CT6 78- - . !. Funciones de agregación 09 :U; B<6 8)=I>9 . !.! Consultas sobre m?ltiples tablas. !.!.1Subconsultas. !.!.2:peradores @:I>. !.$ +anipulación de la base de datos 0I>S- T6U;D)T-6D-%-T- . $ Dise o de bases de datos relacionales. $.1 Dise o de es*uemas relacionales de bases de datos. $.1.1 Dependencias funcionales. $.1.2 )nomalAas. $.1. Descomposición.

Upload: adbeljrm

Post on 03-Nov-2015

15 views

Category:

Documents


0 download

DESCRIPTION

Fundamentos Base de Datos resuelto .....

TRANSCRIPT

Fundamentos de base de datos

Fundamentos de Base de Datos

UnidadTemasSubtemas

1Introduccin a los sistemas de bases de datos.1.1 Sistemas de informacin y bases de datos.

1.1.1 Concepto de sistema de informacin.

1.1.2 Sistemas de informacin para la gestin y para la ayuda en la toma de decisiones.

1.2 Sistemas de informacin para la gestin y para la ayuda en la toma de decisiones.

1.3 Sistemas de bases de datos y sus aplicaciones.

1.4 Sistemas de bases de datos frente a los sistemas de archivos.

1.5 Los distintitos niveles de abstraccin de una base de datos.

1.6 Usuarios y administradores de la base de datos.

1.7 Componentes de los sistemas de bases de datos.

1.8 Arquitectura de los sistemas de bases de datos.

2Modelo entidad relacin.2.1 Conceptos bsicos.

2.1.1 Entidad.

2.1.2 Relacin.

2.2 Diagramas entidad-relacin (ER).

2.3 Diseo de un esquema de base datos.

2.4 Lenguaje de Modelado Unificado UML (Modelo Conceptual).

3Modelo Relacional.3.1 El modelo relacional .

3.2 lgebra relacional.

4Introduccin a SQL.4.1 Introduccin.

4.2 Estructura bsica (SELECT, WHERE).

4.3 Funciones de agregacin (GROUP BY, HAVING).

4.4 Consultas sobre mltiples tablas.

4.4.1 Subconsultas.

4.4.2 Operadores JOIN.

4.5 Manipulacin de la base de datos (INSERT,UPDATE,DELETE).

5Diseo de bases de datos relacionales.5.1 Diseo de esquemas relacionales de bases de datos.

5.1.1 Dependencias funcionales.

5.1.2 Anomalas.

5.1.3 Descomposicin.

5.1.4 Formas normales.

5.2 Modelo ER y la normalizacin.

5.3 Reduccin de un esquema ER a tablas.

5.4 Anlisis de un caso prctico.

6Bases de datos relacionales orientadas a objetos.6.1 Relaciones anidadas.

6.2 Tipos complejos.

6.3 Herencia.

6.4 Tipos de referencia.

6.5 Consultas con tipos complejos.

6.6 Comparacin entre las bases de datos orientadas a objetos y las bases de datos relacionales orientadas a objetos.

7XML.7.1 Antecedentes.

7.2 Estructura de los datos XML.

7.3 Esquema de los documentos XML.

7.3.1 Definicin de tipos de documento (DTD).

7.3.2 Esquemas de XML.

7.4 Consulta y transformacin.

7.4.1 Xpath.

7.4.2 Xquery.

7.4.3 XSLT.

7.5 Almacenamiento de datos XML.

7.6 Aplicaciones.

Unidad 1. Introduccin a los sistemas de bases de datos.1.1 Sistemas de informacin y bases de datos.

1.1.1 Concepto de sistema de informacin.

Un sistema de informacin es un conjunto de elementos que interactan entre s con el fin de apoyar las actividades de una empresa o negocio.

El equipo computacional: el hardware necesario para que el sistema de informacin pueda operar.

El recurso humano que interacta con el Sistema de Informacin, el cual est formado por las personas que utilizan el sistema.

Un sistema de informacin realiza cuatro actividades bsicas: entrada, almacenamiento, procesamiento y salida de informacin.

Entrada de Informacin: Es el proceso mediante el cual el Sistema de Informacin toma los datos que requiere para procesar la informacin. Las entradas pueden ser manuales o automticas. Las manuales son aquellas que se proporcionan en forma directa por el usuario, mientras que las automticas son datos o informacin que provienen o son tomados de otros sistemas o mdulos. Esto ltimo se denomina interfases automticas.

Las unidades tpicas de entrada de datos a las computadoras son las terminales, las cintas magnticas, las unidades de diskette, los cdigos de barras, los escners, la voz, los monitores sensibles al tacto, el teclado y el mouse, entre otras.

Almacenamiento de informacin: El almacenamiento es una de las actividades o capacidades ms importantes que tiene una computadora, ya que a travs de esta propiedad el sistema puede recordar la informacin guardada en la seccin o proceso anterior. Esta informacin suele ser almacenada en estructuras de informacin denominadas archivos. La unidad tpica de almacenamiento son los discos magnticos o discos duros, los discos flexibles o diskettes y los discos compactos (CD-ROM).

Procesamiento de Informacin: Es la capacidad del Sistema de Informacin para efectuar clculos de acuerdo con una secuencia de operaciones preestablecida. Estos clculos pueden efectuarse con datos introducidos recientemente en el sistema o bien con datos que estn almacenados. Esta caracterstica de los sistemas permite la transformacin de datos fuente en informacin que puede ser utilizada para la toma de decisiones, lo que hace posible, entre otras cosas, que un tomador de decisiones genere una proyeccin financiera a partir de los datos que contiene un estado de resultados o un balance general de un ao base.

Salida de Informacin: La salida es la capacidad de un Sistema de Informacin para sacar la informacin procesada o bien datos de entrada al exterior. Las unidades tpicas de salida son las impresoras, terminales, diskettes, cintas magnticas, la voz, los graficadores y los plotters, entre otros. Es importante aclarar que la salida de un Sistema de Informacin puede constituir la entrada a otro Sistema de Informacin o mdulo. En este caso, tambin existe una interfase automtica de salida. Por ejemplo, el Sistema de Control de Clientes tiene una interfase automtica de salida con el Sistema de Contabilidad, ya que genera las plizas contables de los movimientos procesales de los clientes.

A continuacin se muestran las diferentes actividades que puede realizar un Sistema de Informacin de Control de Clientes:

Actividades que realiza un Sistema de Informacin:

Entradas:

Datos generales del cliente: nombre, direccin, tipo de cliente, etc.

Polticas de crditos: lmite de crdito, plazo de pago, etc.

Facturas (interfase automtico).

Pagos, depuraciones, etc.

Proceso:

Clculo de antigedad de saldos.

Clculo de intereses moratorios.

Clculo del saldo de un cliente.

Almacenamiento:

Movimientos del mes (pagos, depuraciones).

Catlogo de clientes.

Facturas.

Salidas:

Reporte de pagos.

Estados de cuenta.

Plizas contables (interfase automtica)

Consultas de saldos en pantalla de una terminal.

Las diferentes actividades que realiza un Sistema de Informacin se pueden observar en el diseo conceptual ilustrado en la en la figura 1.2.

Tipos y Usos de los Sistemas de Informacin

Durante los prximos aos, los Sistemas de Informacin cumplirn tres objetivos bsicos dentro de las organizaciones:

1. Automatizacin de procesos operativos.

2. Proporcionar informacin que sirva de apoyo al proceso de toma de decisiones.

3. Lograr ventajas competitivas a travs de su implantacin y uso.

Los Sistemas de Informacin que logran la automatizacin de procesos operativos dentro de una organizacin, son llamados frecuentemente Sistemas Transaccionales, ya que su funcin primordial consiste en procesar transacciones tales como pagos, cobros, plizas, entradas, salidas, etc. Por otra parte, los Sistemas de Informacin que apoyan el proceso de toma de decisiones son los Sistemas de Soporte a la Toma de Decisiones, Sistemas para la Toma de Decisin de Grupo, Sistemas Expertos de Soporte a la Toma de Decisiones y Sistema de Informacin para Ejecutivos. El tercer tipo de sistema, de acuerdo con su uso u objetivos que cumplen, es el de los Sistemas Estratgicos, los cuales se desarrollan en las organizaciones con el fin de lograr ventajas competitivas, a travs del uso de la tecnologa de informacin.

Los tipos y usos de los Sistemas de Informacin se muestran en la figura 1.3.

A continuacin se mencionan las principales caractersticas de estos tipos de Sistemas de Informacin.

Sistemas Transaccionales. Sus principales caractersticas son:

A travs de stos suelen lograrse ahorros significativos de mano de obra, debido a que automatizan tareas operativas de la organizacin.

Con frecuencia son el primer tipo de Sistemas de Informacin que se implanta en las organizaciones. Se empieza apoyando las tareas a nivel operativo de la organizacin.

Son intensivos en entrada y salid de informacin; sus clculos y procesos suelen ser simples y poco sofisticados.

Tienen la propiedad de ser recolectores de informacin, es decir, a travs de estos sistemas se cargan las grandes bases de informacin para su explotacin posterior.

Son fciles de justificar ante la direccin general, ya que sus beneficios son visibles y palpables.

Sistemas de Apoyo de las Decisiones. Las principales caractersticas de estos son:

Suelen introducirse despus de haber implantado los Sistemas Transaccionales ms relevantes de la empresa, ya que estos ltimos constituyen su plataforma de informacin.

La informacin que generan sirve de apoyo a los mandos intermedios y a la alta administracin en el proceso de toma de decisiones.

Suelen ser intensivos en clculos y escasos en entradas y salidas de informacin. As, por ejemplo, un modelo de planeacin financiera requiere poca informacin de entrada, genera poca informacin como resultado, pero puede realizar muchos clculos durante su proceso.

No suelen ahorrar mano de obra. Debido a ello, la justificacin econmica para el desarrollo de estos sistemas es difcil, ya que no se conocen los ingresos del proyecto de inversin.

Suelen ser Sistemas de Informacin interactivos y amigables, con altos estndares de diseo grfico y visual, ya que estn dirigidos al usuario final.

Apoyan la toma de decisiones que, por su misma naturaleza son repetitivos y de decisiones no estructuradas que no suelen repetirse. Por ejemplo, un Sistema de Compra de Materiales que indique cundo debe hacerse un pedido al proveedor o un Sistema de Simulacin de Negocios que apoye la decisin de introducir un nuevo producto al mercado.

Estos sistemas pueden ser desarrollados directamente por el usuario final sin la participacin operativa de los analistas y programadores del rea de informtica.

Este tipo de sistemas puede incluir la programacin de la produccin, compra de materiales, flujo de fondos, proyecciones financieras, modelos de simulacin de negocios, modelos de inventarios, etc.

Sistemas Estratgicos. Sus principales caractersticas son:

Su funcin primordial no es apoyar la automatizacin de procesos operativos ni proporcionar informacin para apoyar la toma de decisiones.

Suelen desarrollarse in house, es decir, dentro de la organizacin, por lo tanto no pueden adaptarse fcilmente a paquetes disponibles en el mercado.

Tpicamente su forma de desarrollo es a base de incrementos y a travs de su evolucin dentro de la organizacin. Se inicia con un proceso o funcin en particular y a partir de ah se van agregando nuevas funciones o procesos.

Su funcin es lograr ventajas que los competidores no posean, tales como ventajas en costos y servicios diferenciados con clientes y proveedores. En este contexto, los Sistema Estratgicos son creadores de barreras de entrada al negocio. Por ejemplo, el uso de cajeros automticos en los bancos en un Sistema Estratgico, ya que brinda ventaja sobre un banco que no posee tal servicio. Si un banco nuevo decide abrir sus puerta al pblico, tendr que dar este servicio para tener un nivel similar al de sus competidores.

Apoyan el proceso de innovacin de productos y proceso dentro de la empresa debido a que buscan ventajas respecto a los competidores y una forma de hacerlo en innovando o creando productos y procesos.

Un ejemplo de estos Sistemas de Informacin dentro de la empresa puede ser un sistema MRP (Manufacturing Resoure Planning) enfocado a reducir sustancialmente el desperdicio en el proceso productivo, o bien, un Centro de Informacin que proporcione todo tipo de informacin; como situacin de crditos, embarques, tiempos de entrega, etc. En este contexto los ejemplos anteriores constituyen un Sistema de Informacin Estratgico si y slo s, apoyan o dan forma a la estructura competitiva de la empresa.

Por ltimo, es importante aclarar que algunos autores consideran un cuarto tipo de sistemas de informacin denominado Sistemas Personales de Informacin, el cual est enfocado a incrementar la productividad de sus usuarios.

Evolucin de los Sistemas de Informacin

De la seccin anterior se desprende la evolucin que tienen los Sistemas de Informacin en las organizaciones. Con frecuencia se implantan en forma inicial los Sistemas Transaccionales y, posteriormente, se introducen los Sistemas de Apoyo a las Decisiones. Por ltimo, se desarrollan los Sistemas Estratgicos que dan forma a la estructura competitiva de la empresa.

En la dcada de los setenta, Richard Nolan, un conocido autor y profesor de la Escuela de Negocios de Harvard, desarroll una teora que impact el proceso de planeacin de los recursos y las actividades de la informtica.

Segn Nolan, la funcin de la Informtica en las organizaciones evoluciona a travs de ciertas etapas de crecimiento, las cuales se explican a continuacin:

Comienza con la adquisicin de la primera computadora y normalmente se justifica por el ahorro de mano de obra y el exceso de papeles.

Las aplicaciones tpicas que se implantan son los Sistemas Transaccionales tales como nminas o contabilidad.

El pequeo Departamento de Sistemas depende en la mayora de los casos del rea de contabilidad.

El tipo de administracin empleada es escaso y la funcin de los sistemas suele ser manejada por un administrador que no posee una preparacin formal en el rea de computacin.

El personal que labora en este pequeo departamento consta a lo sumo de un operador y/o un programador. Este ltimo podr estar bajo el rgimen de honorarios, o bien, puede recibirse el soporte de algn fabricante local de programas de aplicacin.

En esta etapa es importante estar consciente de la resistencia al cambio del personal y usuario (ciberfobia) que estn involucrados en los primeros sistemas que se desarrollan, ya que estos sistemas son importantes en el ahorro de mano de obra.

Esta etapa termina con la implantacin exitosa del primer Sistema de Informacin. Cabe recalcar que algunas organizaciones pueden vivir varias etapas de inicio en las que la resistencia al cambio por parte de los primeros usuarios involucrados aborta el intento de introducir la computador a la empresa.

Etapa de contagio o expansin. Los aspectos sobresalientes que permiten diagnosticar rpido que una empresa se encuentra en esta etapa son:

Se inicia con la implantacin exitosa del primer Sistema de Informacin en la organizacin. Como consecuencia de lo anterior, el primer ejecutivo usuario se transforma en el paradigma o persona que se habr que imitar.

Las aplicaciones que con frecuencia se implantan en esta etapa son el resto de los Sistemas Transaccionales no desarrollados en la etapa de inicio, tales como facturacin, inventarios, control de pedidos de clientes y proveedores, cheques, etc.

El pequeo departamento es promovido a una categora superior, donde depende de la Gerencia Administrativa o Contralora.

El tipo de administracin empleado est orientado hacia la venta de aplicaciones a todos los usuarios de la organizacin; en este punto suele contratarse a un especialista de la funcin con preparacin acadmica en el rea de sistemas.

Se inicia la contratacin de personal especializado y nacen puestos tales como analista de sistemas, analista-programador, programador de sistemas, jefe de desarrollo, jefe de soporte tcnico, etc.

Las aplicaciones desarrolladas carecen de interfases automticas entre ellas, de tal forma que las salidas que produce un sistema se tienen que alimentar en forma manual a otro sistema, con la consecuente irritacin de los usuarios.

Los gastos por concepto de sistemas empiezan a crecer en forma importante, lo que marca la pauta para iniciar la racionalizacin en el uso de los recursos computacionales dentro de la empresa. Este problema y el inicio de su solucin marcan el paso a la siguiente etapa.

Etapa de control o formalizacin. Para identificar a una empresa que transita por esta etapa es necesario considerar los siguientes elementos:

Esta etapa de evolucin de la Informtica dentro de las empresas se inicia con la necesidad de controlar el uso de los recursos computacionales a travs de las tcnicas de presupuestacin base cero (partiendo de que no se tienen nada) y la implantacin de sistemas de cargos a usuarios (por el servicio que se presta).

Las aplicaciones estn orientadas a facilitar el control de las operaciones del negocio para hacerlas ms eficaces, tales como sistemas para control de flujo de fondos, control de rdenes de compra a proveedores, control de inventarios, control y manejo de proyectos, etc.

El departamento de sistemas de la empresa suele ubicarse en una posicin gerencial, dependiendo del organigrama de la Direccin de Administracin o Finanzas.

El tipo de administracin empleado dentro del rea de Informtica se orienta al control administrativo y a la justificacin econmica de las aplicaciones a desarrollar. Nace la necesidad de establecer criterios para las prioridades en el desarrollo de nuevas aplicaciones. La cartera de aplicaciones pendientes por desarrollar empieza a crecer.

En esta etapa se inician el desarrollo y la implantacin de estndares de trabajo dentro del departamento, tales como: estndares de documentacin, control de proyectos, desarrollo y diseo de sistemas, auditora de sistemas y programacin.

Se integra a la organizacin del departamento de sistemas, personal con habilidades administrativas y preparado tcnicamente.

Se inicia el desarrollo de interfases automticas entre los diferentes sistemas.

Etapa de integracin. Las caractersticas de esta etapa son las siguientes:

La integracin de los datos y de los sistemas surge como un resultado directo de la centralizacin del departamento de sistemas bajo una sola estructura administrativa.

Las nuevas tecnologas relacionadas con base de datos, sistemas administradores de bases de datos y lenguajes de cuarta generacin, hicieron posible la integracin.

En esta etapa surge la primera hoja electrnica de clculo comercial y los usuarios inician haciendo sus propias aplicaciones. Esta herramienta ayud mucho a que los usuarios hicieran su propio trabajo y no tuvieran que esperar a que sus propuestas de sistemas fueran cumplidas.

El costo del equipo y del software disminuy por lo cual estuvo al alcance de ms usuarios.

En forma paralela a los cambios tecnolgicos, cambi el rol del usuario y del departamento de Sistemas de Informacin. El departamento de sistemas evolucion hacia una estructura descentralizada, permitiendo al usuario utilizar herramientas para el desarrollo de sistemas.

Los usuarios y el departamento de sistema iniciaron el desarrollo de nuevos sistemas, reemplazando los sistemas antiguos, en beneficio de la organizacin.

Etapa de administracin de datos. Entre las caractersticas que destacan en esta etapa estn las siguientes:

El departamento de Sistemas de Informacin reconoce que la informacin es un recurso muy valioso que debe estar accesible para todos los usuarios.

Para poder cumplir con lo anterior resulta necesario administrar los datos en forma apropiada, es decir, almacenarlos y mantenerlos en forma adecuada para que los usuarios puedan utilizar y compartir este recurso.

El usuario de la informacin adquiere la responsabilidad de la integridad de la misma y debe manejar niveles de acceso diferentes.

Etapa de madurez. Entre los aspectos sobresalientes que indican que una empresa se encuentra en esta etapa, se incluyen los siguientes:

Al llegar a esta etapa, la Informtica dentro de la organizacin se encuentra definida como una funcin bsica y se ubica en los primeros niveles del organigrama (direccin).

Los sistemas que se desarrollan son Sistemas de Manufactura Integrados por Computadora, Sistemas Basados en el Conocimiento y Sistemas Expertos, Sistemas de Soporte a las Decisiones, Sistemas Estratgicos y, en general, aplicaciones que proporcionan informacin para las decisiones de alta administracin y aplicaciones de carcter estratgico.

En esta etapa se tienen las aplicaciones desarrolladas en la tecnologa de base de datos y se logra la integracin de redes de comunicaciones con terminales en lugares remotos, a travs del uso de recursos computacionales.

http://www.monografias.com/trabajos7/sisinf/sisinf.shtmlCiclo de vida de los sistemas de informacin

Un sistema de informacin es el conjunto de recursos que permiten recoger, gestionar, controlar y difundir la informacin de toda una empresa u organizacin.

Desde los aos setenta, los sistemas de bases de datos han ido reemplazando a los sistemas de ficheros en los sistemas de informacin de las empresas. Al mismo tiempo, se ha ido reconociendo la gran importancia que tienen los datos que stas manejan, convirtindose en uno de sus recursos ms importantes. Esto ha hecho que muchas empresas tengan departamentos que se encarguen de gestionar toda su informacin, que estar almacenada en una base de datos. Aparecen los papeles de administrador de datos y administrador de la base de datos, que son las personas encargadas de supervisar y controlar todas las actividades relacionadas con los datos de la empresa y con el ciclo de vida de las aplicaciones de bases de datos, respectivamente.

Un sistema de informacin est formado por los siguientes componentes:

La base de datos.

El SGBD.

Los programas de aplicacin.

Los dispositivos fsicos (ordenadores, dispositivos de almacenamiento, etc.).

El personal que utiliza y que desarrolla el sistema.

La base de datos es un componente fundamental de un sistema de informacin. El ciclo de vida de un sistema de informacin est ligado al ciclo de vida del sistema de base de datos sobre el que se apoya. Al ciclo de vida de los sistemas de informacin tambin se le denomina ciclo de vida de desarrollo del software. Las etapas tpicas del ciclo de vida de desarrollo del software son: planificacin, recoleccin y anlisis de los requisitos, diseo (incluyendo el diseo de la base de datos), creacin de prototipos, implementacin, prueba, conversin y mantenimiento. Este ciclo de vida hace nfasis en la identificacin de las funciones que realiza la empresa y en el desarrollo de las aplicaciones que lleven a cabo estas funciones. Se dice que el ciclo de vida de desarrollo del software sigue un enfoque orientado a funciones, ya que los sistemas se ven desde el punto de vista de las funciones que llevan a cabo. Por esta razn, el anlisis estructurado hace nfasis en los diagramas de flujo de datos, siguiendo el movimiento de los datos a travs de una secuencia de transformaciones, y refinando stas a travs de una serie de niveles. Lo mismo ocurre en el diseo estructurado, que ve a un sistema como una funcin que se descompone sucesivamente en niveles o subfunciones.

Concentrndose en las funciones se infravaloran los datos y, en especial, la estructura de los datos que son manipulados por las funciones. El resultado es que estos sistemas tienen valor durante poco tiempo en relacin con las necesidades de los usuarios a largo plazo. Esto sucede debido a que al poco tiempo de haber instalado un sistema, las funciones implementadas son en realidad un subconjunto de las funciones que los usuarios realmente desean. Casi inmediatamente, los usuarios descubren una gran variedad de servicios adicionales que quisieran incorporar al sistema. Estas necesidades causan problemas a los sistemas obtenidos con un diseo orientado a funciones, puesto que este diseo puede requerir una revisin importante para acomodar las funciones adicionales.

En contraste, el enfoque orientado a datos centra el foco de atencin en el anlisis de los datos utilizados por las funciones. Esto tiene dos ventajas. La primera es que los datos son una parte considerablemente ms estable que las funciones. La segunda ventaja es que la propia estructura de un esquema de base de datos requiere de un anlisis sofisticado de los datos y de sus relaciones. Una vez que se haya construido un esquema para la base de datos que sea lgico, podran disearse tantas funciones como fuera necesario para sacar provecho del mismo. Sin embargo, sin un esquema tal, la base de datos slo podra ser til para una nica aplicacin. Por lo tanto, el enfoque orientado a funciones puede ser bueno para el desarrollo a corto plazo, pero pierde su valor real a largo plazo. Usando un enfoque orientado a datos, los datos pasan a ser los cimientos sobre los cuales se puede construir una gran variedad de funciones diferentes.

Por lo tanto, en este captulo se van a estudiar cada una de las etapas del ciclo de vida de desarrollo del software desde la perspectiva del desarrollo de una aplicacin de bases de datos, siguiendo un enfoque orientado a datos.

http://www3.uji.es/~mmarques/f47/apun/node66.htmlCiclo de vida de las aplicaciones de bases de datos

Las etapas del ciclo de vida de una aplicacin de bases de datos son las siguientes:

1. Planificacin del proyecto.

2. Definicin del sistema.

3. Recoleccin y anlisis de los requisitos.

4. Diseo de la base de datos.

5. Seleccin del SGBD.

6. Diseo de la aplicacin.

7. Prototipado.

8. Implementacin.

9. Conversin y carga de datos.

10. Prueba.

11. Mantenimiento.

Estas etapas no son estrictamente secuenciales. De hecho hay que repetir algunas de las etapas varias veces, haciendo lo que se conocen como ciclos de realimentacin. Por ejemplo, los problemas que se encuentran en la etapa del diseo de la base de datos pueden requerir una recoleccin de requisitos adicional y su posterior anlisis.

A continuacin, se muestran las tareas ms importantes que se realizan en cada etapa.

1. Planificacin del proyecto

Esta etapa conlleva la planificacin de cmo se pueden llevar a cabo las etapas del ciclo de vida de la manera ms eficiente. Hay tres componentes principales: el trabajo que se ha de realizar, los recursos para llevarlo a cabo y el dinero para pagar por todo ello. Como apoyo a esta etapa, se necesitar un modelo de datos corporativo en donde se muestren las entidades principales de la empresa y sus relaciones, y en donde se identifiquen las principales reas funcionales. Normalmente, este modelo de datos se representa mediante un diagrama entidad-relacin. En este modelo se tiene que mostrar tambin qu datos comparten las distintas reas funcionales de la empresa.

La planificacin de la base de datos tambin incluye el desarrollo de estndares que especifiquen cmo realizar la recoleccin de datos, cmo especificar su formato, qu documentacin ser necesaria y cmo se va a llevar a cabo el diseo y la implementacin. El desarrollo y el mantenimiento de los estndares puede llevar bastante tiempo, pero si estn bien diseados, son una base para el personal informtico en formacin y para medir la calidad, adems, garantizan que el trabajo se ajusta a unos patrones, independientemente de las habilidades y la experiencia del diseador. Por ejemplo, se pueden establecer reglas sobre cmo dar nombres a los datos, lo que evitar redundancias e inconsistencias. Se deben documentar todos los aspectos legales sobre los datos y los establecidos por la empresa como, por ejemplo, qu datos deben tratarse de modo confidencial.

2. Definicin del sistema

En esta etapa se especifica el mbito y los lmites de la aplicacin de bases de datos, as como con qu otros sistemas interacta. Tambin hay que determinar quienes son los usuarios y las reas de aplicacin.

3. Recoleccin y anlisis de los requisitos

En esta etapa se recogen y analizan los requerimientos de los usuarios y de las reas de aplicacin. Esta informacin se puede recoger de varias formas:

Entrevistando al personal de la empresa, concretamente, a aquellos que son considerados expertos en las reas de inters.

Observando el funcionamiento de la empresa.

Examinando documentos, sobre todo aquellos que se utilizan para recoger o visualizar informacin.

Utilizando cuestionarios para recoger informacin de grandes grupos de usuarios.

Utilizando la experiencia adquirida en el diseo de sistemas similares.

La informacin recogida debe incluir las principales reas de aplicacin y los grupos de usuarios, la documentacin utilizada o generada por estas reas de aplicacin o grupos de usuarios, las transacciones requeridas por cada rea de aplicacin o grupo de usuarios y una lista priorizada de los requerimientos de cada rea de aplicacin o grupo de usuarios.

Esta etapa tiene como resultado un conjunto de documentos con las especificaciones de requisitos de los usuarios, en donde se describen las operaciones que se realizan en la empresa desde distintos puntos de vista.

La informacin recogida se debe estructurar utilizando tcnicas de especificacin de requisitos, como por ejemplo tcnicas de anlisis y diseo estructurado y diagramas de flujo de datos. Tambin las herramientas CASE ( Computer-Aided Software Engineering) pueden proporcionar una asistencia automatizada que garantice que los requisitos son completos y consistentes.

4. Diseo de la base de datos

Esta etapa consta de tres fases: diseo conceptual, diseo lgico y diseo fsico de la base de datos. La primera fase consiste en la produccin de un esquema conceptual, que es independiente de todas las consideraciones fsicas. Este modelo se refina despus en un esquema lgico eliminando las construcciones que no se pueden representar en el modelo de base de datos escogido (relacional, orientado a objetos, etc.). En la tercera fase, el esquema lgico se traduce en un esquema fsico para el SGBD escogido. La fase de diseo fsico considera las estructuras de almacenamiento y los mtodos de acceso necesarios para proporcionar un acceso eficiente a la base de datos en memoria secundaria.

Los objetivos del diseo de la base de datos son:

Representar los datos que requieren las principales reas de aplicacin y los grupos de usuarios, y representar las relaciones entre dichos datos.

Proporcionar un modelo de datos que soporte las transacciones que se vayan a realizar sobre los datos.

Especificar un esquema que alcance las prestaciones requeridas para el sistema.

Hay varias estrategias a seguir para realizar el diseo: de abajo a arriba, de arriba a abajo, de dentro a fuera y la estrategia mixta. La estrategia de abajo a arriba parte de todos los atributos y los va agrupando en entidades y relaciones. Es apropiada cuando la base de datos es simple, con pocos atributos. La estrategia de arriba a abajo es ms apropiada cuando se trata de bases de datos complejas. Se comienza con un esquema con entidades de alto nivel, que se van refinando para obtener entidades de bajo nivel, atributos y relaciones. La estrategia de dentro a fuera es similar a la estrategia de abajo a arriba, pero difiere en que se parte de los conceptos principales y se va extendiendo el esquema para considerar tambin otros conceptos, asociados con los que se han identificado en primer lugar. La estrategia mixta utiliza ambas estrategias, de abajo a arriba y de arriba a abajo, con un esquema de divide y vencers. Se obtiene un esquema inicial de alto nivel, se divide en partes, y de cada parte se obtiene un subesquema. Estos subesquemas se integran despus para obtener el modelo final.

5. Seleccin del SGBD

Si no se dispone de un SGBD, o el que hay se encuentra obsoleto, se debe escoger un SGBD que sea adecuado para el sistema de informacin. Esta eleccin se debe hacer en cualquier momento antes del diseo lgico.

6. Diseo de la aplicacin

En esta etapa se disean los programas de aplicacin que usarn y procesarn la base de datos. Esta etapa y el diseo de la base de datos, son paralelas. En la mayor parte de los casos no se puede finalizar el diseo de las aplicaciones hasta que se ha terminado con el diseo de la base de datos. Por otro lado, la base de datos existe para dar soporte a las aplicaciones, por lo que habr una realimentacin desde el diseo de las aplicaciones al diseo de la base de datos.

En esta etapa hay que asegurarse de que toda la funcionalidad especificada en los requisitos de usuario se encuentra en el diseo de la aplicacin. Habr algunos programas que utilicen y procesen los datos de la base de datos.

Adems, habr que disear las interfaces de usuario, aspecto muy importante que se suele ignorar. El sistema debe ser fcil de aprender, fcil de usar, ser directo y estar ``dispuesto a perdonar''. Si la interface no tiene estas caractersticas, el sistema dar problemas, sin lugar a dudas.

7. Prototipado

Esta etapa, que es opcional, es para construir prototipos de la aplicacin que permitan a los diseadores y a los usuarios probar el sistema. Un prototipo es un modelo de trabajo de las aplicaciones del sistema. El prototipo no tiene toda la funcionalidad del sistema final, pero es suficiente para que los usuarios puedan utilizar el sistema e identificar qu aspectos estn bien y cules no son adecuados, adems de poder sugerir mejoras o la inclusin de nuevos elementos. Este proceso permite que quienes disean e implementan el sistema sepan si han interpretado correctamente los requisitos de los usuarios. Otra ventaja de los prototipos es que se construyen rpidamente.

Esta etapa es imprescindible cuando el sistema que se va a implementar tiene un gran coste, alto riesgo o utiliza nuevas tecnologas.

8. Implementacin

En esta etapa se crean las definiciones de la base de datos a nivel conceptual, externo e interno, as como los programas de aplicacin. La implementacin de la base de datos se realiza mediante las sentencias del lenguaje de definicin de datos (LDD) del SGBD escogido. Estas sentencias se encargan de crear el esquema de la base de datos, los ficheros en donde se almacenarn los datos y las vistas de los usuarios.

Los programas de aplicacin se implementan utilizando lenguajes de tercera o cuarta generacin. Partes de estas aplicaciones son transacciones sobre la base de datos, que se implementan mediante el lenguaje de manejo de datos (LMD) del SGBD. Las sentencias de este lenguaje se pueden embeber en un lenguaje de programacin anfitrin como Visual Basic, Delphi, C, C++, Java, COBOL, Fortran, Ada o Pascal. En esta etapa, tambin se implementan los mens, los formularios para la introduccin de datos y los informes de visualizacin de datos. Para ello, el SGBD puede disponer de lenguajes de cuarta generacin que permiten el desarrollo rpido de aplicaciones mediante lenguajes de consultas no procedurales, generadores de informes, generadores de formularios, generadores de grficos y generadores de aplicaciones.

Tambin se implementan en esta etapa todos los controles de seguridad e integridad. Algunos de estos controles se pueden implementar mediante el LDD y otros puede que haya que implementarlos mediante utilidades del SGBD o mediante programas de aplicacin.

9. Conversin y carga de datos

Esta etapa es necesaria cuando se est reemplazando un sistema antiguo por uno nuevo. Los datos se cargan desde el sistema viejo al nuevo directamente o, si es necesario, se convierten al formato que requiera el nuevo SGBD y luego se cargan. Si es posible, los programas de aplicacin del sistema antiguo tambin se convierten para que se puedan utilizar en el sistema nuevo.

10. Prueba

En esta etapa se prueba y valida el sistema con los requisitos especificados por los usuarios. Para ello, se debe disear una batera de tests con datos reales, que se deben llevar a cabo de manera metdica y rigurosa. Es importante darse cuenta de que la fase de prueba no sirve para demostrar que no hay fallos, sirve para encontrarlos. Si la fase de prueba se lleva a cabo correctamente, descubrir los errores en los programas de aplicacin y en la estructura de la base de datos. Adems, demostrar que los programas ``parecen'' trabajar tal y como se especificaba en los requisitos y que las prestaciones deseadas ``parecen'' obtenerse. Por ltimo, en las pruebas se podr hacer una medida de la fiabilidad y la calidad del software desarrollado.

11. Mantenimiento

Una vez que el sistema est completamente implementado y probado, se pone en marcha. El sistema est ahora en la fase de mantenimiento en la que se llevan a cabo las siguientes tareas:

Monitorizacin de las prestaciones del sistema. Si las prestaciones caen por debajo de un determinado nivel, puede ser necesario reorganizar la base de datos.

Mantenimiento y actualizacin del sistema. Cuando sea necesario, los nuevos requisitos que vayan surgiendo se incorporarn al sistema, siguiendo de nuevo las etapas del ciclo de vida que se acaban de presentar.

http://www3.uji.es/~mmarques/f47/apun/node67.html1.1.1 Sistemas de informacin para la gestin y para la ayuda en la toma de decisiones.

1.2 Sistemas de informacin para la gestin y para la ayuda en la toma de decisiones.

1.3 Sistemas de bases de datos y sus aplicaciones.

Los sistemas de base de datos se disean para manejar grandes cantidades de informacin, la manipulacin de los datos involucra tanto la definicin de estructuras para el almacenamiento de la informacin como la provisin de mecanismos para la manipulacin de la informacin, adems un sistema de base de datos debe de tener implementados mecanismos de seguridad que garanticen la integridad de la informacin, a pesar de cadas del sistema o intentos de accesos no autorizados.

Un objetivo principal de un sistema de base de datos es proporcionar a los usuarios finales una visin abstracta de los datos, esto se logra escondiendo ciertos detalles de como se almacenan y mantienen los datos.

Objetivos de los sistemas de bases de datos. Los objetivos principales de un sistema de base de datos es disminuir los siguientes aspectos:

Redundancia e inconsistencia de datos. Puesto que los archivos que mantienen almacenada la informacin son creados por diferentes tipos de programas de aplicacin existe la posibilidad de que si no se controla detalladamente el almacenamiento, se pueda originar un duplicado de informacin, es decir que la misma informacin sea ms de una vez en un dispositivo de almacenamiento. Esto aumenta los costos de almacenamiento y acceso a los datos, adems de que puede originar la inconsistencia de los datos - es decir diversas copias de un mismo dato no concuerdan entre si -, por ejemplo: que se actualiza la direccin de un cliente en un archivo y que en otros archivos permanezca la anterior.

Dificultad para tener acceso a los datos. Un sistema de base de datos debe contemplar un entorno de datos que le facilite al usuario el manejo de los mismos. Supngase un banco, y que uno de los gerentes necesita averiguar los nombres de todos los clientes que viven dentro del cdigo postal 78733 de la ciudad. El gerente pide al departamento de procesamiento de datos que genere la lista correspondiente. Puesto que esta situacin no fue prevista en el diseo del sistema, no existe ninguna aplicacin de consulta que permita este tipo de solicitud, esto ocasiona una deficiencia del sistema.

Aislamiento de los datos. Puesto que los datos estn repartidos en varios archivos, y estos no pueden tener diferentes formatos, es difcil escribir nuevos programas de aplicacin para obtener los datos apropiados.

Anomalas del acceso concurrente. Para mejorar el funcionamiento global del sistema y obtener un tiempo de respuesta ms rpido, muchos sistemas permiten que mltiples usuarios actualicen los datos simultneamente. En un entorno as la interaccin de actualizaciones concurrentes puede dar por resultado datos inconsistentes. Para prevenir esta posibilidad debe mantenerse alguna forma de supervisin en el sistema.

Problemas de seguridad. La informacin de toda empresa es importante, aunque unos datos lo son ms que otros, por tal motivo se debe considerar el control de acceso a los mismos, no todos los usuarios pueden visualizar alguna informacin, por tal motivo para que un sistema de base de datos sea confiable debe mantener un grado de seguridad que garantice la autentificacin y proteccin de los datos. En un banco por ejemplo, el personal de nminas slo necesita ver la parte de la base de datos que tiene informacin acerca de los distintos empleados del banco y no a otro tipo de informacin.

Problemas de integridad. Los valores de datos almacenados en la base de datos deben satisfacer cierto tipo de restricciones de consistencia. Estas restricciones se hacen cumplir en el sistema aadiendocdigos apropiados en los diversos programas de aplicacin.

http://www.itlp.edu.mx/publica/tutoriales/basedat1/tema1_2.htmSistemas de bases de datos

Los inconvenientes de los sistemas de ficheros se pueden atribuir a dos factores:

La definicin de los datos se encuentra codificada dentro de los programas de aplicacin, en lugar de estar almacenada aparte y de forma independiente.

No hay control sobre el acceso y la manipulacin de los datos ms all de lo impuesto por los programas de aplicacin.

Para trabajar de un modo ms efectivo, surgieron las bases de datos y los sistemas de gestin de bases de datos (SGBD).

Una base de datos es un conjunto de datos almacenados entre los que existen relaciones lgicas y ha sido diseada para satisfacer los requerimientos de informacin de una empresa u organizacin. En una base de datos, adems de los datos, tambin se almacena su descripcin.

La base de datos es un gran almacn de datos que se define una sola vez y que se utiliza al mismo tiempo por muchos departamentos y usuarios. En lugar de trabajar con ficheros desconectados e informacin redundante, todos los datos se integran con una mnima cantidad de duplicidad. La base de datos no pertenece a un departamento, se comparte por toda la organizacin. Adems, la base de datos no slo contiene los datos de la organizacin, tambin almacena una descripcin de dichos datos. Esta descripcin es lo que se denomina metadatos, se almacena en el diccionario de datos o catlogo y es lo que permite que exista independencia de datos lgica-fsica.

El modelo seguido con los sistemas de bases de datos, en donde se separa la definicin de los datos de los programas de aplicacin, es muy similar al modelo que se sigue en la actualidad para el desarrollo de programas, en donde se da una definicin interna de un objeto y una definicin externa separada. Los usuarios del objeto slo ven la definicin externa y no se deben preocupar de cmo se define internamente el objeto y cmo funciona. Una ventaja de este modelo, conocido como abstraccin de datos, es que se puede cambiar la definicin interna de un objeto sin afectar a sus usuarios ya que la definicin externa no se ve alterada. Del mismo modo, los sistemas de bases de datos separan la definicin de la estructura de los datos, de los programas de aplicacin y almacenan esta definicin en la base de datos. Si se aaden nuevas estructuras de datos o se modifican las ya existentes, los programas de aplicacin no se ven afectados ya que no dependen directamente de aquello que se ha modificado.

El sistema de gestin de la base de datos (SGBD) es una aplicacin que permite a los usuarios definir, crear y mantener la base de datos, y proporciona acceso controlado a la misma.

El SGBD es la aplicacin que interacciona con los usuarios de los programas de aplicacin y la base de datos. En general, un SGBD proporciona los siguientes servicios:

Permite la definicin de la base de datos mediante el lenguaje de definicin de datos. Este lenguaje permite especificar la estructura y el tipo de los datos, as como las restricciones sobre los datos. Todo esto se almacenar en la base de datos.

Permite la insercin, actualizacin, eliminacin y consulta de datos mediante el lenguaje de manejo de datos. El hecho de disponer de un lenguaje para realizar consultas reduce el problema de los sistemas de ficheros, en los que el usuario tiene que trabajar con un conjunto fijo de consultas, o bien, dispone de un gran nmero de programas de aplicacin costosos de gestionar.

Hay dos tipos de lenguajes de manejo de datos: los procedurales y los no procedurales. Estos dos tipos se distinguen por el modo en que acceden a los datos. Los lenguajes procedurales manipulan la base de datos registro a registro, mientras que los no procedurales operan sobre conjuntos de registros. En los lenguajes procedurales se especifica qu operaciones se deben realizar para obtener los datos resultado, mientras que en los lenguajes no procedurales se especifica qu datos deben obtenerse sin decir cmo hacerlo. El lenguaje no procedural ms utilizado es el SQL (Structured Query Language) que, de hecho, es un estndar y es el lenguaje de los SGBD relacionales.

Proporciona un acceso controlado a la base de datos mediante:

un sistema de seguridad, de modo que los usuarios no autorizados no puedan acceder a la base de datos;

un sistema de integridad que mantiene la integridad y la consistencia de los datos;

un sistema de control de concurrencia que permite el acceso compartido a la base de datos;

un sistema de control de recuperacin que restablece la base de datos despus de que se produzca un fallo del hardware o del software;

un diccionario de datos o catlogo accesible por el usuario que contiene la descripcin de los datos de la base de datos.

A diferencia de los sistemas de ficheros, el SGBD gestiona la estructura fsica de los datos y su almacenamiento. Con esta funcionalidad, el SGBD se convierte en una herramienta de gran utilidad. Sin embargo, desde el punto de vista del usuario, se podra discutir que los SGBD han hecho las cosas ms complicadas, ya que ahora los usuarios ven ms datos de los que realmente quieren o necesitan, puesto que ven la base de datos completa. Conscientes de este problema, los SGBD proporcionan un mecanismo de vistas que permite que cada usuario tenga su propia vista o visin de la base de datos. El lenguaje de definicin de datos permite definir vistas como subconjuntos de la base de datos.

Las vistas, adems de reducir la complejidad permitiendo que cada usuario vea slo la parte de la base de datos que necesita, tienen otras ventajas:

Las vistas proporcionan un nivel de seguridad, ya que permiten excluir datos para que ciertos usuarios no los vean.

Las vistas proporcionan un mecanismo para que los usuarios vean los datos en el formato que deseen.

Una vista representa una imagen consistente y permanente de la base de datos, incluso si la base de datos cambia su estructura.

Todos los SGBD no presentan la misma funcionalidad, depende de cada producto. En general, los grandes SGBD multiusuario ofrecen todas las funciones que se acaban de citar y muchas ms. Los sistemas modernos son conjuntos de programas extremadamente complejos y sofisticados, con millones de lneas de cdigo y con una documentacin consistente en varios volmenes. Lo que se pretende es proporcionar un sistema que permita gestionar cualquier tipo de requisitos y que tenga un 100% de fiabilidad ante cualquier fallo hardware o software. Los SGBD estn en continua evolucin, tratando de satisfacer los requerimientos de todo tipo de usuarios. Por ejemplo, muchas aplicaciones de hoy en da necesitan almacenar imgenes, vdeo, sonido, etc. Para satisfacer a este mercado, los SGBD deben cambiar. Conforme vaya pasando el tiempo irn surgiendo nuevos requisitos, por lo que los SGBD nunca permanecern estticos.

http://www3.uji.es/~mmarques/f47/apun/node4.html1.4 Sistemas de bases de datos frente a los sistemas de archivos.

Ventajas de las bases de datos frente a los ficheros clsicos.Las principales ventajas de las bases de datos sobre los ficheros clsicos son las siguientes:

Compacidad.

Rapidez de acceso a la informacin.

Facilidad de trabajo.

Actualizacin.

Control centralizado, ostentado por el administrador de la base de datos.

Reduccin de redundancias.

Eliminar inconsistencias.

Los datos pueden compartirse.

Los estndares se mantienen.

Mayor seguridad.

Mayor facilidad en el chequeo de errores.

Equilibrado de requerimientos opuestos.

http://html.rincondelvago.com/bases-de-datos_18.htmlVentajas e inconvenientes de los sistemas de bases de datos

Los sistemas de bases de datos presentan numerosas ventajas que se pueden dividir en dos grupos: las que se deben a la integracin de datos y las que se deben a la interface comn que proporciona el SGBD.

Ventajas por la integracin de datos Control sobre la redundancia de datos. Los sistemas de ficheros almacenan varias copias de los mismos datos en ficheros distintos. Esto hace que se desperdicie espacio de almacenamiento, adems de provocar la falta de consistencia de datos. En los sistemas de bases de datos todos estos ficheros estn integrados, por lo que no se almacenan varias copias de los mismos datos. Sin embargo, en una base de datos no se puede eliminar la redundancia completamente, ya que en ocasiones es necesaria para modelar las relaciones entre los datos, o bien es necesaria para mejorar las prestaciones.

Consistencia de datos. Eliminando o controlando las redundancias de datos se reduce en gran medida el riesgo de que haya inconsistencias. Si un dato est almacenado una sola vez, cualquier actualizacin se debe realizar slo una vez, y est disponible para todos los usuarios inmediatamente. Si un dato est duplicado y el sistema conoce esta redundancia, el propio sistema puede encargarse de garantizar que todas las copias se mantienen consistentes. Desgraciadamente, no todos los SGBD de hoy en da se encargan de mantener automticamente la consistencia.

Ms informacin sobre la misma cantidad de datos. Al estar todos los datos integrados, se puede extraer informacin adicional sobre los mismos.

Comparticin de datos. En los sistemas de ficheros, los ficheros pertenecen a las personas o a los departamentos que los utilizan. Pero en los sistemas de bases de datos, la base de datos pertenece a la empresa y puede ser compartida por todos los usuarios que estn autorizados. Adems, las nuevas aplicaciones que se vayan creando pueden utilizar los datos de la base de datos existente.

Mantenimiento de estndares. Gracias a la integracin es ms fcil respetar los estndares necesarios, tanto los establecidos a nivel de la empresa como los nacionales e internacionales. Estos estndares pueden establecerse sobre el formato de los datos para facilitar su intercambio, pueden ser estndares de documentacin, procedimientos de actualizacin y tambin reglas de acceso.

Ventajas por la existencia del SGBD

Mejora en la integridad de datos. La integridad de la base de datos se refiere a la validez y la consistencia de los datos almacenados. Normalmente, la integridad se expresa mediante restricciones o reglas que no se pueden violar. Estas restricciones se pueden aplicar tanto a los datos, como a sus relaciones, y es el SGBD quien se debe encargar de mantenerlas.

Mejora en la seguridad. La seguridad de la base de datos es la proteccin de la base de datos frente a usuarios no autorizados. Sin unas buenas medidas de seguridad, la integracin de datos en los sistemas de bases de datos hace que stos sean ms vulnerables que en los sistemas de ficheros. Sin embargo, los SGBD permiten mantener la seguridad mediante el establecimiento de claves para identificar al personal autorizado a utilizar la base de datos. Las autorizaciones se pueden realizar a nivel de operaciones, de modo que un usuario puede estar autorizado a consultar ciertos datos pero no a actualizarlos, por ejemplo.

Mejora en la accesibilidad a los datos. Muchos SGBD proporcionan lenguajes de consultas o generadores de informes que permiten al usuario hacer cualquier tipo de consulta sobre los datos, sin que sea necesario que un programador escriba una aplicacin que realice tal tarea.

Mejora en la productividad. El SGBD proporciona muchas de las funciones estndar que el programador necesita escribir en un sistema de ficheros. A nivel bsico, el SGBD proporciona todas las rutinas de manejo de ficheros tpicas de los programas de aplicacin. El hecho de disponer de estas funciones permite al programador centrarse mejor en la funcin especfica requerida por los usuarios, sin tener que preocuparse de los detalles de implementacin de bajo nivel. Muchos SGBD tambin proporcionan un entorno de cuarta generacin consistente en un conjunto de herramientas que simplifican, en gran medida, el desarrollo de las aplicaciones que acceden a la base de datos. Gracias a estas herramientas, el programador puede ofrecer una mayor productividad en un tiempo menor.

Mejora en el mantenimiento gracias a la independencia de datos. En los sistemas de ficheros, las descripciones de los datos se encuentran inmersas en los programas de aplicacin que los manejan. Esto hace que los programas sean dependientes de los datos, de modo que un cambio en su estructura, o un cambio en el modo en que se almacena en disco, requiere cambios importantes en los programas cuyos datos se ven afectados. Sin embargo, los SGBD separan las descripciones de los datos de las aplicaciones. Esto es lo que se conoce como independencia de datos, gracias a la cual se simplifica el mantenimiento de las aplicaciones que acceden a la base de datos.

Aumento de la concurrencia. En algunos sistemas de ficheros, si hay varios usuarios que pueden acceder simultneamente a un mismo fichero, es posible que el acceso interfiera entre ellos de modo que se pierda informacin o, incluso, que se pierda la integridad. La mayora de los SGBD gestionan el acceso concurrente a la base de datos y garantizan que no ocurran problemas de este tipo.

Mejora en los servicios de copias de seguridad y de recuperacin ante fallos. Muchos sistemas de ficheros dejan que sea el usuario quien proporcione las medidas necesarias para proteger los datos ante fallos en el sistema o en las aplicaciones. Los usuarios tienen que hacer copias de seguridad cada da, y si se produce algn fallo, utilizar estas copias para restaurarlos. En este caso, todo el trabajo realizado sobre los datos desde que se hizo la ltima copia de seguridad se pierde y se tiene que volver a realizar. Sin embargo, los SGBD actuales funcionan de modo que se minimiza la cantidad de trabajo perdido cuando se produce un fallo.

Inconvenientes de los sistemas de bases de datos

Complejidad. Los SGBD son conjuntos de programas muy complejos con una gran funcionalidad. Es preciso comprender muy bien esta funcionalidad para poder sacar un buen partido de ellos.

Tamao. Los SGBD son programas complejos y muy extensos que requieren una gran cantidad de espacio en disco y de memoria para trabajar de forma eficiente.

Coste econmico del SGBD. El coste de un SGBD vara dependiendo del entorno y de la funcionalidad que ofrece. Por ejemplo, un SGBD para un ordenador personal puede costar 500 euros, mientras que un SGBD para un sistema multiusuario que d servicio a cientos de usuarios puede costar entre 10.000 y 100.000 euros. Adems, hay que pagar una cuota anual de mantenimiento que suele ser un porcentaje del precio del SGBD.

Coste del equipamiento adicional. Tanto el SGBD, como la propia base de datos, pueden hacer que sea necesario adquirir ms espacio de almacenamiento. Adems, para alcanzar las prestaciones deseadas, es posible que sea necesario adquirir una mquina ms grande o una mquina que se dedique solamente al SGBD. Todo esto har que la implantacin de un sistema de bases de datos sea ms cara.

Coste de la conversin. En algunas ocasiones, el coste del SGBD y el coste del equipo informtico que sea necesario adquirir para su buen funcionamiento, es insignificante comparado al coste de convertir la aplicacin actual en un sistema de bases de datos. Este coste incluye el coste de ensear a la plantilla a utilizar estos sistemas y, probablemente, el coste del personal especializado para ayudar a realizar la conversin y poner en marcha el sistema. Este coste es una de las razones principales por las que algunas empresas y organizaciones se resisten a cambiar su sistema actual de ficheros por un sistema de bases de datos.

Prestaciones. Un sistema de ficheros est escrito para una aplicacin especfica, por lo que sus prestaciones suelen ser muy buenas. Sin embargo, los SGBD estn escritos para ser ms generales y ser tiles en muchas aplicaciones, lo que puede hacer que algunas de ellas no sean tan rpidas como antes.

Vulnerable a los fallos. El hecho de que todo est centralizado en el SGBD hace que el sistema sea ms vulnerable ante los fallos que puedan producirse.

http://www3.uji.es/~mmarques/f47/apun/node7.html1.5 Los distintitos niveles de abstraccin de una base de datos.

Abstraccin de la informacin. Una base de datos es en esencia una coleccin de archivos relacionados entre s, de la cual los usuarios pueden extraer informacin sin considerar las fronteras de los archivos. Un objetivo importante de un sistema de base de datos es proporcionar a los usuarios una visin abstracta de los datos, es decir, el sistema esconde ciertos detalles de cmo se almacenan y mantienen los datos. Sin embargo para que el sistema sea manejable, los datos se deben extraer eficientemente.

Existen diferentes niveles de abstraccin para simplificar la interaccin de los usuarios con el sistema; Interno, conceptual y externo, especficamente el de almacenamiento fsico, el del usuario y el del programador.

Nivel fsico. Es la representacin del nivel ms bajo de abstraccin, en ste se describe en detalle la forma en como de almacenan los datos en los dispositivos de almacenamiento(por ejemplo, mediante sealadores o ndices para el acceso aleatorio a los datos).

Nivel conceptual. El siguiente nivel ms alto de abstraccin, describe que datos son almacenados realmente en la base de datos y las relaciones que existen entre los mismos, describe la base de datos completa en trminos de su estructura de diseo. El nivel conceptual de abstraccin lo usan los administradores de bases de datos, quienes deben decidir qu informacin se va a guardar en la base de datos.

Consta de las siguientes definiciones:

1. Definicin de los datos: Se describen el tipo de datos y la longitud de campo todos los elementos direccionables en la base. Los elementos por definir incluyen artculos elementales (atributos), totales de datos y registros conceptuales (entidades).

2. Relaciones entre datos: Se definen las relaciones entre datos para enlazar tipos de registros relacionados para el procesamiento de archivos mltiples.

En el nivel conceptual la base de datos aparece como una coleccin de registros lgicos, sin descriptores de almacenamiento. En realidad los archivos conceptuales no existen fsicamente. La transformacin de registros conceptuales a registros fsicos para el almacenamiento se lleva a cabo por el sistema y es transparente al usuario.

Nivel de visin. Nivel ms alto de abstraccin, es lo que el usuario final puede visualizar del sistema terminado, describe slo una parte de la base de datos al usuario acreditado para verla. El sistema puede proporcionar muchas visiones para la misma base de datos. La interrelacin entre estos tres niveles de abstraccin se ilustra en la siguiente figura.

http://www.itlp.edu.mx/publica/tutoriales/basedat1/tema1_3.htm1.6 Usuarios y administradores de la base de datos.

Administrador de Bases de DatosDenominado por sus siglas como: DBA, Database Administrator.

Es la persona encargada y que tiene el control total sobre el sistema de base de datos, sus funciones principales son:

Definicin de esquema. Es el esquema original de la base de datos se crea escribiendo un conjunto de definiciones que son traducidas por el compilador de DDL a un conjunto de tablas que son almacenadas permanentemente en el diccionario de datos.

Definicin de la estructura de almacenamiento del mtodo de acceso. Estructuras de almacenamiento y de acceso adecuados se crean escribiendo un conjunto de definiciones que son traducidas por e compilador del lenguaje de almacenamiento y definicin de datos.

Concesin de autorizacin para el acceso a los datos. Permite al administrador de la base de datos regular las partes de las bases de datos que van a ser accedidas por varios usuarios.

Especificacin de lmitantes de integridad. Es una serie de restricciones que se encuentran almacenados en una estructura especial del sistema que es consultada por el gestor de base de datos cada vez que se realice una actualizacin al sistema.

Usuarios de las bases de datos. Podemos definir a los usuarios como toda persona que tenga todo tipo de contacto con el sistema de base de datos desde que este se disea, elabora, termina y se usa.

Los usuarios que accesan una base de datos pueden clasificarse como:

Programadores de aplicaciones. Los profesionales en computacin que interactuan con el sistema por medio de llamadas en DML (Lenguaje de Manipulacin de Datos), las cuales estn incorporadas en un programa escrito en un lenguaje de programacin (Por ejemplo, COBOL, PL/I, Pascal, C, etc.)

Usuarios sofisticados. Los usuarios sofisticados interactuan con el sistema sin escribir programas. En cambio escriben sus preguntas en un lenguaje de consultas de base de datos.

Usuarios especializados. Algunos usuarios sofisticados escriben aplicaciones de base de datos especializadas que no encajan en el marco tradicional de procesamiento de datos.

Usuarios ingenuos. Los usuarios no sofisticados interactuan con el sistema invocando a uno de los programas de aplicacin permanentes que se han escrito anteriormente en el sistema de base de datos, podemos mencionar al usuario ingenuo como el usuario final que utiliza el sistema de base de datos sin saber nada del diseo interno del mismo por ejemplo: un cajero.

http://www.itlp.edu.mx/publica/tutoriales/basedat1/tema1_10.htm1.7 Componentes de los sistemas de bases de datos.

Estructura general del sistema. Un sistema de base de datos se encuentra dividido en mdulos cada uno de los cuales controla una parte de la responsabilidad total de sistema. En la mayora de los casos, el sistema operativo proporciona nicamente los servicios ms bsicos y el sistema de la base de datos debe partir de esa base y controlar adems el manejo correcto de los datos. As el diseo de un sistema de base de datos debe incluir la interfaz entre el sistema de base de datos y el sistema operativo.

Los componentes funcionales de un sistema de base de datos, son:

Gestor de archivos. Gestiona la asignacin de espacio en la memoria del disco y de las estructuras de datos usadas para representar informacin.

Manejador de base de datos. Sirve de interfaz entre los datos y los programas de aplicacin.

Procesador de consultas. Traduce las proposiciones en lenguajes de consulta a instrucciones de bajo nivel. Adems convierte la solicitud del usuario en una forma ms eficiente.

Compilador de DDL. Convierte las proposiciones DDL en un conjunto de tablas que contienen metadatos, estas se almacenan en el diccionario de datos.

Archivo de datos. En l se encuentran almacenados fsicamente los datos de una organizacin.

Diccionario de datos. Contiene la informacin referente a la estructura de la base de datos.

Indices. Permiten un rpido acceso a registros que contienen valores especficos.

Una forma grfica de representar los componentes antes mencionados y la relacin que existe entre ellos sera la siguiente.

http://www.itlp.edu.mx/publica/tutoriales/basedat1/tema1_12.htm1.8 Arquitectura de los sistemas de bases de datos.

Arquitectura de los sistemas de bases de datos

Hay tres caractersticas importantes inherentes a los sistemas de bases de datos: la separacin entre los programas de aplicacin y los datos, el manejo de mltiples vistas por parte de los usuarios y el uso de un catlogo para almacenar el esquema de la base de datos. En 1975, el comit ANSI-SPARC (American National Standard Institute - Standards Planning and Requirements Committee) propuso una arquitectura de tres niveles para los sistemas de bases de datos, que resulta muy til a la hora de conseguir estas tres caractersticas.

El objetivo de la arquitectura de tres niveles es el de separar los programas de aplicacin de la base de datos fsica. En esta arquitectura, el esquema de una base de datos se define en tres niveles de abstraccin distintos:

1. En el nivel interno se describe la estructura fsica de la base de datos mediante un esquema interno. Este esquema se especifica mediante un modelo fsico y describe todos los detalles para el almacenamiento de la base de datos, as como los mtodos de acceso.

2. En el nivel conceptual se describe la estructura de toda la base de datos para una comunidad de usuarios (todos los de una empresa u organizacin), mediante un esquema conceptual. Este esquema oculta los detalles de las estructuras de almacenamiento y se concentra en describir entidades, atributos, relaciones, operaciones de los usuarios y restricciones. En este nivel se puede utilizar un modelo conceptual o un modelo lgico para especificar el esquema.

3. En el nivel externo se describen varios esquemas externos o vistas de usuario. Cada esquema externo describe la parte de la base de datos que interesa a un grupo de usuarios determinado y oculta a ese grupo el resto de la base de datos. En este nivel se puede utilizar un modelo conceptual o un modelo lgico para especificar los esquemas.

La mayora de los SGBD no distinguen del todo los tres niveles. Algunos incluyen detalles del nivel fsico en el esquema conceptual. En casi todos los SGBD que se manejan vistas de usuario, los esquemas externos se especifican con el mismo modelo de datos que describe la informacin a nivel conceptual, aunque en algunos se pueden utilizar diferentes modelos de datos en los niveles conceptual y externo.

Hay que destacar que los tres esquemas no son ms que descripciones de los mismos datos pero con distintos niveles de abstraccin. Los nicos datos que existen realmente estn a nivel fsico, almacenados en un dispositivo como puede ser un disco. En un SGBD basado en la arquitectura de tres niveles, cada grupo de usuarios hace referencia exclusivamente a su propio esquema externo. Por lo tanto, el SGBD debe transformar cualquier peticin expresada en trminos de un esquema externo a una peticin expresada en trminos del esquema conceptual, y luego, a una peticin en el esquema interno, que se procesar sobre la base de datos almacenada. Si la peticin es de una obtencin (consulta) de datos, ser preciso modificar el formato de la informacin extrada de la base de datos almacenada, para que coincida con la vista externa del usuario. El proceso de transformar peticiones y resultados de un nivel a otro se denomina correspondencia o transformacin. Estas correspondencias pueden requerir bastante tiempo, por lo que algunos SGBD no cuentan con vistas externas.

La arquitectura de tres niveles es til para explicar el concepto de independencia de datos que podemos definir como la capacidad para modificar el esquema en un nivel del sistema sin tener que modificar el esquema del nivel inmediato superior. Se pueden definir dos tipos de independencia de datos:

La independencia lgica es la capacidad de modificar el esquema conceptual sin tener que alterar los esquemas externos ni los programas de aplicacin. Se puede modificar el esquema conceptual para ampliar la base de datos o para reducirla. Si, por ejemplo, se reduce la base de datos eliminando una entidad, los esquemas externos que no se refieran a ella no debern verse afectados.

La independencia fsica es la capacidad de modificar el esquema interno sin tener que alterar el esquema conceptual (o los externos). Por ejemplo, puede ser necesario reorganizar ciertos ficheros fsicos con el fin de mejorar el rendimiento de las operaciones de consulta o de actualizacin de datos. Dado que la independencia fsica se refiere slo a la separacin entre las aplicaciones y las estructuras fsicas de almacenamiento, es ms fcil de conseguir que la independencia lgica.

En los SGBD que tienen la arquitectura de varios niveles es necesario ampliar el catlogo o diccionario, de modo que incluya informacin sobre cmo establecer la correspondencia entre las peticiones de los usuarios y los datos, entre los diversos niveles. El SGBD utiliza una serie de procedimientos adicionales para realizar estas correspondencias haciendo referencia a la informacin de correspondencia que se encuentra en el catlogo. La independencia de datos se consigue porque al modificarse el esquema en algn nivel, el esquema del nivel inmediato superior permanece sin cambios, slo se modifica la correspondencia entre los dos niveles. No es preciso modificar los programas de aplicacin que hacen referencia al esquema del nivel superior.

Por lo tanto, la arquitectura de tres niveles puede facilitar la obtencin de la verdadera independencia de datos, tanto fsica como lgica. Sin embargo, los dos niveles de correspondencia implican un gasto extra durante la ejecucin de una consulta o de un programa, lo cual reduce la eficiencia del SGBD. Es por esto que muy pocos SGBD han implementado esta arquitectura completa.

http://www3.uji.es/~mmarques/f47/apun/node33.htmlUnidad 2. Modelo entidad relacin.

El modelo E-R se basa en una percepcin del mundo real, la cual esta formada por objetos bsicos llamados entidades y las relaciones entre estos objetos as como las caractersticas de estos objetos llamados atributos.

2.5 Conceptos bsicos.}El modelo entidad-relacin

El modelo entidad-relacin es el modelo conceptual ms utilizado para el diseo conceptual de bases de datos. Fue introducido por Peter Chen en 1976. El modelo entidad-relacin est formado por un conjunto de conceptos que permiten describir la realidad mediante un conjunto de representaciones grficas y lingsticas.

Originalmente, el modelo entidad-relacin slo inclua los conceptos de entidad, relacin y atributo. Ms tarde, se aadieron otros conceptos, como los atributos compuestos y las jerarquas de generalizacin, en lo que se ha denominado modelo entidad-relacin extendido.

Figura 6.1: Conceptos del modelo entidad-relacin extendido.

Entidad

Cualquier tipo de objeto o concepto sobre el que se recoge informacin: cosa, persona, concepto abstracto o suceso. Por ejemplo: coches, casas, empleados, clientes, empresas, oficios, diseos de productos, conciertos, excursiones, etc. Las entidades se representan grficamente mediante rectngulos y su nombre aparece en el interior. Un nombre de entidad slo puede aparecer una vez en el esquema conceptual.

Hay dos tipos de entidades: fuertes y dbiles. Una entidad dbil es una entidad cuya existencia depende de la existencia de otra entidad. Una entidad fuerte es una entidad que no es dbil.

Relacin (interrelacin)

Es una correspondencia o asociacin entre dos o ms entidades. Cada relacin tiene un nombre que describe su funcin. Las relaciones se representan grficamente mediante rombos y su nombre aparece en el interior.

Las entidades que estn involucradas en una determinada relacin se denominan entidades participantes. El nmero de participantes en una relacin es lo que se denomina grado de la relacin. Por lo tanto, una relacin en la que participan dos entidades es una relacin binaria; si son tres las entidades participantes, la relacin es ternaria; etc.

Una relacin recursiva es una relacin donde la misma entidad participa ms de una vez en la relacin con distintos papeles. El nombre de estos papeles es importante para determinar la funcin de cada participacin.

La cardinalidad con la que una entidad participa en una relacin especifica el nmero mnimo y el nmero mximo de correspondencias en las que puede tomar parte cada ocurrencia de dicha entidad. La participacin de una entidad en una relacin es obligatoria (total) si la existencia de cada una de sus ocurrencias requiere la existencia de, al menos, una ocurrencia de la otra entidad participante. Si no, la participacin es opcional (parcial). Las reglas que definen la cardinalidad de las relaciones son las reglas de negocio.

A veces, surgen problemas cuando se est diseado un esquema conceptual. Estos problemas, denominados trampas, suelen producirse a causa de una mala interpretacin en el significado de alguna relacin, por lo que es importante comprobar que el esquema conceptual carece de dichas trampas. En general, para encontrar las trampas, hay que asegurarse de que se entiende completamente el significado de cada relacin. Si no se entienden las relaciones, se puede crear un esquema que no represente fielmente la realidad.

Una de las trampas que pueden encontrarse ocurre cuando el esquema representa una relacin entre entidades, pero el camino entre algunas de sus ocurrencias es ambiguo. El modo de resolverla es reestructurando el esquema para representar la asociacin entre las entidades correctamente.

Otra de las trampas sucede cuando un esquema sugiere la existencia de una relacin entre entidades, pero el camino entre una y otra no existe para algunas de sus ocurrencias. En este caso, se produce una prdida de informacin que se puede subsanar introduciendo la relacin que sugera el esquema y que no estaba representada.

Atributo

Es una caracterstica de inters o un hecho sobre una entidad o sobre una relacin. Los atributos representan las propiedades bsicas de las entidades y de las relaciones. Toda la informacin extensiva es portada por los atributos. Grficamente, se representan mediante bolitas que cuelgan de las entidades o relaciones a las que pertenecen.

Cada atributo tiene un conjunto de valores asociados denominado dominio. El dominio define todos los valores posibles que puede tomar un atributo. Puede haber varios atributos definidos sobre un mismo dominio.

Los atributos pueden ser simples o compuestos. Un atributo simple es un atributo que tiene un solo componente, que no se puede dividir en partes ms pequeas que tengan un significado propio. Un atributo compuesto es un atributo con varios componentes, cada uno con un significado por s mismo. Un grupo de atributos se representa mediante un atributo compuesto cuando tienen afinidad en cuanto a su significado, o en cuanto a su uso. Un atributo compuesto se representa grficamente mediante un valo.

Los atributos tambin pueden clasificarse en monovalentes o polivalentes. Un atributo monovalente es aquel que tiene un solo valor para cada ocurrencia de la entidad o relacin a la que pertenece. Un atributo polivalente es aquel que tiene varios valores para cada ocurrencia de la entidad o relacin a la que pertenece. A estos atributos tambin se les denomina multivaluados, y pueden tener un nmero mximo y un nmero mnimo de valores. La cardinalidad de un atributo indica el nmero mnimo y el nmero mximo de valores que puede tomar para cada ocurrencia de la entidad o relacin a la que pertenece. El valor por omisin es .

Por ltimo, los atributos pueden ser derivados. Un atributo derivado es aquel que representa un valor que se puede obtener a partir del valor de uno o varios atributos, que no necesariamente deben pertenecer a la misma entidad o relacin.

Identificador

Un identificador de una entidad es un atributo o conjunto de atributos que determina de modo nico cada ocurrencia de esa entidad. Un identificador de una entidad debe cumplir dos condiciones:

1. No pueden existir dos ocurrencias de la entidad con el mismo valor del identificador.

2. Si se omite cualquier atributo del identificador, la condicin anterior deja de cumplirse.

Toda entidad tiene al menos un identificador y puede tener varios identificadores alternativos. Las relaciones no tienen identificadores.

Jerarqua de generalizacin

Una entidad E es una generalizacin de un grupo de entidades E, E, ... E, si cada ocurrencia de cada una de esas entidades es tambin una ocurrencia de E. Todas las propiedades de la entidad genrica E son heredadas por las subentidades.

Cada jerarqua es total o parcial, y exclusiva o superpuesta. Una jerarqua es total si cada ocurrencia de la entidad genrica corresponde al menos con una ocurrencia de alguna subentidad. Es parcial si existe alguna ocurrencia de la entidad genrica que no corresponde con ninguna ocurrencia de ninguna subentidad. Una jerarqua es exclusiva si cada ocurrencia de la entidad genrica corresponde, como mucho, con una ocurrencia de una sola de las subentidades. Es superpuesta si existe alguna ocurrencia de la entidad genrica que corresponde a ocurrencias de dos o ms subentidades diferentes.

Un subconjunto es un caso particular de generalizacin con una sola entidad como subentidad. Un subconjunto siempre es una jerarqua parcial y exclusiva.

http://www3.uji.es/~mmarques/f47/apun/node83.html2.5.1 Entidad.

Entidades y conjunto de entidades Una entidad es un objeto que existe y se distingue de otros objetos de acuerdo a sus caractersticas llamadas atributos . Las entidades pueden ser concretas como una persona o abstractas como una fecha.

Un conjunto de entidades es un grupo de entidades del mismo tipo. Por ejemplo el conjunto de entidades CUENTA, podra representar al conjunto de cuentas de un banco X, o ALUMNO representa a un conjunto de entidades de todos los alumnos que existen en una institucin.

Una entidad se caracteriza y distingue de otra por los atributos, en ocasiones llamadas propiedades, que representan las caractersticas de una entidad. Los atributos de una entidad pueden tomar un conjunto de valores permitidos al que se le conoce como dominio del atributo. As cada entidad se describe por medio de un conjunto de parejas formadas por el atributo y el valor de dato. Habr una pareja para cada atributo del conjunto de entidades.

Ejemplo: Hacer una descripcin en pareja para la entidad alumno con los atributos No_control, Nombre y Especialidad.Nombre_atributo, Valor No_control , 96310418

Nombre , Snchez Osuna Ana

Esp , LI

O considerando el ejemplo del Vendedor cuyos aributos son: RFC, Nombre, Salario.

Nombre_atributo, Valor RFC , COMD741101YHR

Nombre , Daniel Coln Morales

Salario , 3000

2.5.2 Relacin.

Relaciones y conjunto de relaciones.Una relacin es la asociacin que existe entre dos a ms entidades.

Un conjunto de relaciones es un grupo de relaciones del mismo tipo.

La cantidad de entidades en una relacin determina el grado de la relacin, por ejemplo la relacin ALUMNO-MATERIA es de grado 2, ya que intervienen la entidad ALUMNO y la entidad MATERIA, la relacin PADRES, puede ser de grado 3, ya que involucra las entidades PADRE, MADRE e HIJO.

Aunque el modelo E-R permite relaciones de cualquier grado, la mayora de las aplicaciones del modelo slo consideran relaciones del grado 2. Cuando son de tal tipo, se denominan relaciones binarias.

La funcin que tiene una relacin se llama papel, generalmente no se especifican los papeles o roles, a menos que se quiera aclarar el significado de una relacin.

Diagrama E-R (sin considerar los atributos, slo las entidades) para los modelos ejemplificados:

Limitantes de mapeo. Existen 4 tipos de relaciones que pueden establecerse entre entidades, las cuales establecen con cuantas entidades de tipo B se pueden relacionar una entidad de tipo A:

Tipos de relaciones:

Relacin uno a uno. Se presenta cuando existe una relacin como su nombre lo indica uno a uno, denominado tambin relacin de matrimonio. Una entidad del tipo A solo se puede relacionar con una entidad del tipo B, y viceversa;

Por ejemplo: la relacin asignacin de automvil que contiene a las entidades EMPLEADO, AUTO, es una relacin 1 a 1, ya que asocia a un empleado con un nico automvil por lo tanto ningn empleado posee ms de un automvil asignado, y ningn vehculo se asigna a ms de un trabajador.

Es representado grficamente de la siguiente manera:

A: Representa a una entidad de cualquier tipo diferente a una entidad B.R: en el diagrama representa a la relacin que existe entre las entidades.El extremo de la flecha que se encuentra punteada indica el uno de la relacin, en este caso, una entidad A ligada a una entidad B.

Relacin uno a muchos.

Significa que una entidad del tipo A puede relacionarse con cualquier cantidad de entidades del tipo B, y una entidad del tipo B solo puede estar relacionada con una entidad del tipo A.

Su representacin grfica es la siguiente:

Ntese en este caso que el extremo punteado de la flecha de la relacin de A y B, indica una entidad A conectada a muchas entidades B.

Muchos a uno. Indica que una entidad del tipo B puede relacionarse con cualquier cantidad de entidades del tipo A, mientras que cada entidad del tipo A solo puede relacionarse con solo una entidad del tipo B.

Muchas a muchas. Establece que cualquier cantidad de entidades del tipo A pueden estar relacionados con cualquier cantidad de entidades del tipo B.

A los tipos de relaciones antes descritos, tambin se le conoce como cardinalidad.

La cardinalidad nos especifica los tipos de relaciones que existen entre las entidades en el modelo E-R y establecer con esto las validaciones necesarias para conseguir que los datos de la instancia (valor nico en un momento dado de una base de datos) correspondan con la realidad.

Algunos ejemplos de cardinalidades de la vida comn pueden ser:

Uno a uno.

El noviazgo, el RFC de cada persona, El CURP personal, El acta de nacimiento, ya que solo existe un solo documento de este tipo para cada una de las diferentes personas.

Uno a muchos. Cliente Cuenta en un banco, Padre-Hijos, Camin-Pasajeros, zoologico- animales, rbol hojas.

Muchos a muchos. Arquitecto proyectos, fiesta personas, estudiante materias.

Cabe mencionar que la cardinalidad para cada conjunto de entidades depende del punto de vista que se le de al modelo en estudio, claro esta, sujetndose a la realidad.

Otra clase de limitantes lo constituye la dependencia de existencia. Refirindonos a las mismas entidades A y B, decimos que si la entidad A depende de la existencia de la entidad B, entonces A es dependiente de existencia por B, si eliminamos a B tendramos que eliminar por consecuente la entidad A, en este caso B es la entidad Dominante y A es la entidad subordinada.

2.6 Diagramas entidad-relacin (ER).

Diagrama Entidad-Relacin Denominado por sus siglas como: E-R; Este modelo representa a la realidad a travs de un esquema grfico empleando los terminologa de entidades, que son objetos que existen y son los elementos principales que se identifican en el problema a resolver con el diagramado y se distinguen de otros por sus caractersticas particulares denominadas atributos, el enlace que que rige la unin de las entidades esta representada por la relacin del modelo. Recordemos que un rectngulo nos representa a las entidades; una elipse a los atributos de las entidades, y una etiqueta dentro de un rombo nos indica la relacin que existe entre las entidades, destacando con lneas las uniones de estas y que la llave primaria de una entidad es aquel atributo que se encuentra subrayado.

A continuacin mostraremos algunos ejemplos de modelos E-R, considerando las cardinalidades que existen entre ellos:

Relacin Uno a Uno.Problema: Disear el modelo E-R, para la relacin Registro de automvil que consiste en obtener la tarjeta de circulacin de un automvil con los siguientes datos:- Automvil- Modelo, Placas, Color - Tarjeta de circulacin -Propietario, No_serie, Tipo.

Indicamos con este ejemplo que existe una relacin de pertenencia de uno a uno, ya que existe una tarjeta de circulacin registrada por cada automvil.

En este ejemplo, representamos que existe un solo presidente para cada pas.

Relacin muchos a muchos.

El siguiente ejemplo indica que un cliente puede tener muchas cuentas, pero que una cuenta puede llegar a pertenecer a un solo cliente (Decimos puede, ya que existen cuentas registradas a favor de ms de una persona).

Reduccin de diagramas E-R a tablas Un diagrama E-R, puede ser representado tambin a travs de una coleccin de tablas. Para cada una de las entidades y relaciones existe una tabla nica a la que se le asigna como nombre el del conjunto de entidades y de las relaciones respectivamente, cada tabla tiene un nmero de columnas que son definidas por la cantidad de atributos y las cuales tienen el nombre del atributo.

La transformacin de nuestro ejemplo Venta en la que intervienen las entidades de Vendedor con los atributos RFC, nombre, puesto, salario y Artculo con los atributos Clave, descripcin, costo.

Cuyo diagrama E-R es el siguiente:

Entonces las tablas resultantes siguiendo la descripcin anterior son:

Tabla EmpleadoNombrePuestoSalarioRFC

TefiloVendedor2000TEAT701210XYZ

CesarAuxiliar ventas1200COV741120ABC

Tabla artculoClaveDescripcinCosto

A100Abanico460

C260Colcha matrimonial1200

Tabla VentaRFCClave

TEAT701210XYZC260

COV741120ABCA100

Ntese que en la tabla de relacin - Venta -, contiene como atributos a las llaves primarias de las entidades que intervienen en dicha relacin, en caso de que exista un atributo en las relaciones, este atributo es anexado como una fila ms de la tabla;

Por ejemplo si anexamos el atributo fecha a la relacin venta, la tabla que se originaria sera la siguiente:

RFCClaveFecha

TEAT701210XYZC26010/12/96

COV741120ABCA10011/12/96

DIAGRAMAS DE ENTIDAD - RELACIN Son esquemas que nos permitan representar conjunto de entidades y sus relaciones mediante la siguiente simbologa.

* Conjunto de entidades o relacin con sus atributos * Conjunto entidades con relaciones * Cada elemento debe etiquetarse con su nombre.

CARDINALIDAD DE LAS RELACIONES

Notas:

a) Las entidades dbiles se sealan como rectngulos de doble pared

b) Los papeles se indican etiquetando las lneas que conectan a los rectngulos con los rombos.

Ejercicios:

Represente mediante Diagramas E-R las siguientes situaciones:

-- Un vdeo club mantiene el control de sus clientes utilizando los siguientes datos: numero de credencial, nombre, direccin y telfono; l catalogo de pelculas contiene para cada cassette los datos clave, titulo, clasificacin y costo de renta.

A fin de imprimir los pagares y mantener un control de rentas, se registran tambin las fechas de renta y la cantidad de das que el cliente mantendr la pelcula.

CONJUNTO DE RELACIONES CON DERIVACIN MLTIPLE

Puede darse el caso de que una relacin sea binaria: es decir, que asocie a mas de dos conjunto de entidades. En estos casos la nica variacin para representar el modelo consiste en que se establecer CARDINALIDAD para cada pareja de conjuntos de entidades.

-- En un almacn se lleva el control de los artculos que son vendidos y facturados. El objetivo primordial adems de mantener la informacin almacenada consisten en proceso de facturacin. Los datos que se registran: RFC del cliente, nombre del cliente, domicilio, clave del articulo, descripcin, costo unitario, numero de factura, fecha, cantidad de artculos vendidos (de cada uno).

http://www.itlp.edu.mx/publica/tutoriales/basedat2/index.htm2.7 Diseo de un esquema de base datos.

Diseo de un esquema de bases de datos Entidad - Relacin.Para un diseo de un esquema de base de datos hay cuatro fases:

Especificacin de requisitos del usuario.- Consiste en obtener las necesidades de datos de los usuarios de la base de datos, esto es, sonsacarle al usuario toda la informacin que se desea plasmar en la base de datos. Esta es la fase que se dar en el examen.

Diseo conceptual (Entidad - Relacin). Especificacin de requisitos funcionales.- Vamos a definir las operaciones que se harn sobre la base de datos (operaciones permitidas sobre la base de datos)

Especificacin de requisitos funcionales.- Primero se procede a realizar el diseo lgico, que consiste en adaptar el diseo conceptual al sistema de gestin de la base de datos, y a continuacin se realiza el diseo fsico, que consiste en dar todas las caractersticas de almacenamiento de la base de datos.

http://html.rincondelvago.com/bases-de-datos_18.htmlDISEO DE UN ESQUEMA DE BASE DE DATOS E-REl modelo de datos E-R proporciona un alto grado de flexibilidad en el diseo de un esquema de base de datos para modelar una empresa.

Un diseador de base de datos puede elegir entre una amplia variedad de alternativas. Entre las decisiones a tomar se encuent