Transcript descargar (powerpoint) - Ciencias de la Computación e Inteligencia
Programación de Bases de Datos © Carlos de Mesa Mansilla
Programación de Bases de Datos
2º Curso de I.T. de Gestión Ciencias de la Computación e I.A.
Carlos de Mesa Mansilla 1
Introducción
• • • Diseño, creación y desarrollo de BD y aplicaciones de gestión.
Estudiaremos técnicas y herramientas para desarrollo de pequeños S.I.
Partimos de diseño orientado a los datos.
» Utilizamos E/R para el esquema de BD.
» Obtenemos un esquema funcional.
» Integramos ambos esquemas.
• • Implantamos el esquema de BD en el Modelo Relacional.
Programamos las aplicaciones del esquema funcional.
» Lenguajes de programación de BD.
• » Programación de Integridad y optimización de programas.
Herramientas avanzadas de ayuda al desarrollo.
2
Programa de la Asignatura
•
MÓDULO I. Diseño de bases de datos.
•
MÓDULO II. Programación de BD en el modelo relacional.
3
MÓDULO I. Diseño de bases de datos
1. Introducción al diseño de BD.
2. Metodología para el diseño conceptual.
3. Análisis funcional usando el modelo de flujo de datos.
4. Análisis conjunto de datos y funciones.
4
MÓDULO II. Programación de BD en el modelo relacional
5. Implantación de BD en el modelo relacional.
6. Lenguajes para el desarrollo de aplicaciones.
7. Programación de la integridad.
8. Optimización.
5
Bibliografía Básica
• de datos. Mc-Graw Hill.
• Mc-Graw Hill.
• Mc-Graw-Hill.
• Batini, Ceri, Navathe. Diseño conceptual de bases James R. Groff, Paul N. Weinberg. Aplique SQL. ORACLE DATABASE 10g. Guía de aprendizaje.
Oracle9i2 Server. Application Developer’s Guide
•
Oracle 8i : Programación avanzada con PL/SQL
•
Oracle9i2 PL/SQL. User’s guide and reference
•
Libros de la serie Oracle Press de Mcgraw-hill
6
Programa de Prácticas
• • • Manejo de lenguajes de datos procedurales. PL/SQL Programación de integridad. Procedimientos almacenados y disparadores.
Otras herramientas de programación: » » SQL inmerso ó embebido en C, Java, PHP,… API » Herramientas RAD o de desarrollo rápido. » Herramientas Case 7
Evaluación y Tutorías
Evaluación: Asistencia a clase. Ejercicio teórico.
Desarrollo de proyecto de prácticas.
Tutoría: Despacho en dpto. CCIA. Despacho nº1. Jueves 18:30 a 19:30.
Avisar previamente. 8
Introducción al diseño de BD
• Introducción.
» Metodología a seguir.
• Sistemas de Información.
» Etapas del desarrollo de un S.I.
• Enfoque de diseño orientado a los datos y a las funciones.
» Fases del diseño de Bases de Datos.
» Enfoque orientado a las funciones.
» Herramientas: El modelo E/R y el modelo de flujo de datos.
9
Introducción
• Un Sistema de Información es un conjunto de procesos informatizados que resuelven una serie de necesidades funcionales de una empresa.
• Elementos: » Un esquema de BD . Los datos de la empresa.
» Aplicaciones que lo usan. Requisitos funcionales.
• Enfoques de un S.I.: Estructurado y Orientado a objeto.
» Usaremos variante enfoque estructurado.
• Metodología » : Procedimientos, técnicas y ayudas de documentación para desarrollo de S.I.
Análisis y diseño: » Diseño conceptual BD con E/R.
» Análisis funcional con modelo flujo datos.
» Refinamiento conjunto.
» Implantación: » BD en modelo Relacional.
» Técnicas y lenguajes para implantación aplicaciones.
10
Sistemas de Información
• Componentes: » Configuración hardware.
» Topología de comunicación.
» Base de datos.
» SGBD.
» Aplicaciones de Gestión.
• Algunos vienen impuestos: » Sólo incidiremos en el desarrollo de la BD y de las a plicaciones que la gestionan.
• Herramientas para el desarrollo: » Lenguajes de programación.
» Herramientas CASE.
11
Etapas del desarrollo de un S.I.
» • Ciclo de vida del software
Un marco de referencia que contiene los procesos , las actividades y las tareas involucradas en el desarrollo , la hasta la finalización de su uso (ISO 12207).
explotación y el mantenimiento de un producto software, abarcando la vida del sistema desde la definición
y en qué » El ciclo de vida de un proyecto especifica el enfoque general del desarrollo, indicando los procesos, actividades y tareas que se van a realizar orden , y los productos que se van a generar, los que se van a entregar al cliente y en qué orden se van a entregar.
Ciclo de Vida Clásico (En cascada).
12
Etapas del desarrollo de un S.I.
• Ciclos de Vida Evolutivos.
» Ciclo de Vida Iterativo . Repetición de varios ciclos de vida en cascada . Al final de cada ciclo se entrega una versión completa del software mejorada respecto a la anterior.
» Ciclo de Vida Incremental . Repetición de varios ciclos de vida en cascada . Al final de cada ciclo se entrega una cierta funcionalidad versión parcial del software incrementada con nueva respecto a las entregas anteriores.
13
Etapas del desarrollo de un S.I.
• Ciclo de Vida Iterativo con Prototipos.
Prototipo: Desarrollo no definitivo.
» Los prototipos se pueden usar como una herramienta para obtener y validar los requisitos de clientes y usuarios en cualquier ciclo de vida.
» Lo habitual es usar prototipos de interfaz de usuario, que pueden reutilizarse (ejecutables) o desecharse (papel).
14
Enfoque de diseño orientado a los datos y a las funciones
• Fases del diseño de bases de datos » Diseño conceptual : – Requerimientos de datos-> esquema conceptual Esquema conceptual – Descripción abstracta del contenido de la BD – Modelo conceptual, lenguaje para la descripción del » Diseño lógico : – Esquema conceptual-> Esquema lógico – Descripción estructura usando un modelo lógico: Relacional, Redes, Jerárquico o distribuido.
» Diseño físico datos.
: – Esquema lógico-> Esquema físico – Relativo a un SGBD concreto.
– Estructuras almacenamiento y métodos de acceso a los 15
Enfoque de diseño orientado a los datos y a las funciones
• Enfoque orientado a las funciones » Análisis funcional.
– Requerimientos de las aplicaciones-> funcional.
actividades.
Esquema funcional – Diferentes lenguajes y modelos de representación esquema – BD depósitos de información para intercambio entre » Diseño funcional.
– Esquema funcional-> Especificaciones de aplicación » Implantación.
– Especificaciones de aplicación-> Especificación detallada del programa.
• Enfoque orientado a los datos y a las funciones.
» Diferentes perspectivas del problema.
» Metodología conjunta – Influidas – Comprueba no : – Desarrollo esquemas conceptual y funcional paralelamente.
mutuamente.
existan conflictos entre enfoques.
16
Herramientas: El modelo E/R y el modelo de flujo de datos
• E/R modelo para identificar las estructuras de datos relevantes problema.
» Facilita representación , comprensión y transmisión características esquema conceptual.
» Lenguaje gráfico. Diagramas E/R.
• Modelo flujo de datos orientado a procesamiento de datos.
» Lenguaje gráfico.
• Herramientas CASE » Basadas en diferentes metodologías.
» Soporte para todas las etapas desarrollo.
» Generación automática diseño físico y aplicaciones.
17
Metodología para el diseño conceptual de BD
1. Introducción.
2.
Notación para el modelo E/R.
3.
Primitivas del diseño conceptual.
4.
Estrategias para el diseño de esquemas.
5. Criterios de elección entre conceptos.
6.
Entradas , salidas y actividades del diseño conceptual.
18
Notación para el modelo E/R.
• • Entidades: Atributos: Hay tres conceptos básicos: • Entidades.
• • Atributos.
Conjuntos de relaciones.
Una entidad es un objeto en el mundo real que es distinguible de todos los demás y que posee un conjunto de propiedades (atributos). Va a haber un subconjunto de propiedades cuyos valores van a determinar de una manera unívoca a una entidad.
» Atributos simples y compuestos. Los atributos simples son aquellos que no tienen capacidad de ser descompuestos, mientras que los atributos compuestos son aquellos que permiten descomponerse en otros atributos conformando lo que se denominan jerarquías. Un ejemplo de atributo simple podría ser la edad, mientras que uno compuesto podría ser la dirección de un cliente » Atributos nulos. Un atributo es nulo cuando para una determinada entidad ese atributo no tiene valor.
» Clave Primaria. Es el conjunto de atributos que es elegido para identificar a cada una de las entidades de un conjunto de entidades .
19
Notación para el modelo E/R.
• Relaciones: Relación.- Una relación es una asociación entre diferentes entidades.
»
(participación, cardinalidad)
- La Participación de un conjunto de entidades E en un conjunto de relaciones R es total si cada entidad en E participa en al menos una relación de R. Si sólo algunas entidades en E participan en relaciones en R, la participación se denomina parcial. Participación parcial > 0 Participación total > 1 Cardinalidad: Cardinalidad 1 -> Cada entidad participa una sola vez en la interrelación.
Cardinalidad n -> Cada entidad puede participar varias veces en la interrelación.
20
Notación para el modelo E/R.
• Jerarquía de generalización » ({ t,p },{ e,o }) » Clasificación total (t) o parcial » Clasificación exclusiva (e) o (p) superpuesta (o) Una entidad E es una Cada jerarquía es Es
parcial superpuesta
generalización de un grupo de entidades E1, E2, ... En, si cada ocurrencia de cada una de esas entidades es también una ocurrencia de E. Todas las propiedades de la entidad genérica E son heredadas por las subentidades. total o parcial , y exclusiva o superpuesta ocurrencia de la entidad genérica corresponde al menos con una ocurrencia de alguna subentidad. si existe alguna ocurrencia de la entidad genérica que no corresponde con ninguna ocurrencia de ninguna subentidad. Una jerarquía es dos o más subentidades diferentes. . Una jerarquía es
exclusiva total
si cada si cada ocurrencia de la entidad genérica corresponde, como mucho, con una ocurrencia de una sola de las subentidades. Es si existe alguna ocurrencia de la entidad genérica que corresponde a ocurrencias de Un
subconjunto
es un caso particular de generalización con una sola entidad como subentidad. Un subconjunto siempre es una jerarquía parcial y exclusiva.
21
Primitivas del diseño conceptual
• Características de una transformación : » Esquema inicial + transformación = esquema resultante » Correspondencia entre los nombres de conceptos del esquema inicial y los del resultante.
» Conceptos esquema resultante heredan conexiones presentes en esquema inicial.
• Primitiva: transformación elemental.
» Primitivas descendentes – Concepto E.I.-> conjunto conceptos E.F.
Nombres se refinan pasando a conjunto de nuevos nombres.
– – Conexiones lógicas heredadas un solo concepto E.R.
» Primitivas ascendentes – Introducen nuevos conceptos o propiedades en el E.R.
– Adaptar esquema con nuevos rasgos dominio no percibidos inicialmente.
– Para fusionar esquemas en uno global. 22
Primitivas descendentes
23
Primitivas descendentes:Ejemplos
24
Primitivas descendentes: Ejemplo complejo
25
• Tras primitiva B3 comprobar si las propiedades pasan de una entidad a otra.
Primitivas ascendentes
26
Primitivas ascendentes:Ejemplos
• Propiedades de las Primitivas » » Las primitivas Las primitivas descendentes no son mínimas : T5 se puede expresar usando T1 - {T1,T2,T3,T4,T6,T7}, este conjunto si es mínimo.
descendentes no son completas : sólo pueden generar gráficos que se puedan reducir a conexiones serie o paralelo de interrelaciones.
» Las primitivas ascendentes son mínimas y c ompletas.
» Todos los esquemas pueden generarse con primitivas ascendentes.
» Esquemas producibles descendentemente los que se pueden generar con primitivas descendentes .
27
Estrategias para el diseño de esquemas. Estrategia descendente
• Se aplican las primitivas descendentes en sucesivos pasos de refinamiento.
• Todos los conceptos están presentes en todos los planos de refinamiento.
• El proceso termina cuando están representados todos los requerimientos.
28
Estrategias para el diseño de esquemas.
Estrategia ascendente.
• Se aplican las primitivas ascendentes para pasar de conceptos elementales a otros más complejos.
• Ventaja : sencillez inicial, permite introducir versiones preliminares del problema.
• Inconveniente : hay que reestructurar el esquema.
» Para esquemas complejos reestructuración difícil.
• Descendente vs Ascendente » Descendente si se percibe bien el bosque pero no el árbol.
» Ascendente si se percibe bien el árbol pero no el bosque.
29
Estrategias para el diseño de esquemas. Estrategia Centrífuga.
• Caso particular ascendente.
» 1 Se fijan los conceptos más evidentes o importantes.
» 2 Se modelan los conceptos más próximos a estos.
» 3 Se modelan sucesivamente los más lejanos.
• Ventaja : Orden en la aplicación de refinamientos.
• Inconveniente : Grado de abstracción similar para cada refinamiento .
30
Estrategias para el diseño de esquemas. Estrategia mixta
• Combina descendente con ascendente para particionar el problema.
» 1 Se dividen los requerimientos en dos subconjuntos.
» 2 Se produce un esquema armazón que aglutina los conceptos más importantes y las conexiones entre las particiones.
» 3 Se modela cada partición.
» 4 Se integran utilizando el armazón.
• Ventaja : El esquema armazón permite una integración ascendente más fácil de las particiones.
• Aplica el enfoque de “divide y vencerás”.
31
Estrategias para el diseño de esquemas.
Comparación de Estrategias.
• Cada estrategia puede conducir a un esquema diferente » Dada una estrategia y unos requerimientos pueden obtenerse resultados diferentes.
• Estrategia descendente para entornos de desarrollo altamente estructurados . Debe usarse siempre que sea posible.
• • Estrategia parciales.
» Se ascendente parte para organizaciones informales Generalmente se adopta una mezcla de estrategias de una estrategia descendente en las que integrar a posteriori los diferentes aproximaciones y se utiliza estrategia ascendente para incorporar conceptos ignorados en fases iniciales.
• En teoría no todos los esquemas pueden ser generados descendentemente; en la práctica es aplicable a la mayoría de los diseños.
32
Criterios para elección entre conceptos
• Entidad o atributo simple » Entidad : si el objeto va a llevar asociadas características.
» Atributo : si no le es aplicable ninguna propiedad.
• Generalización o atributo.
» Generalización : se espera utilizar alguna característica entidad de bajo nivel.
• Atributo compuesto o conjunto atributos simples » Compuesto : resulta natural asignarle un nombre.
» Conjunto simples : representan propiedades independientes.
33
Entradas, salidas y actividades del diseño conceptual. Entradas.
• Esquema de caja negra . La Metodología utiliza las entradas de requerimientos para obtener los resultados perseguidos.
• Entradas > requerimientos (especificaciones de la aplicación de la base de datos).
» Requerimientos de datos : estructura de datos.
» » Requerimientos Requerimientos de de funciones aplicación : funciones y actividades del sistema y flujos de información.
: operaciones sobre los datos.
• Lenguajes de descripción de requerimientos : » Lenguaje natural.
» Formularios . Para recabar información de usuarios » Formatos de registros y de pantallas . Para desarrollo sobre sistemas antígüos.
» Esquemas de datos . Describen las estructuras de datos. Para cambiar de SGBD.
34
Salidas y actividades del diseño conceptual.
• Salidas : » Esquema conceptual de la base de datos.
» Esquema de funciones.
» Especificaciones de alto nivel de la aplicación.
» Documentación de diseño • Actividades : » Análisis de requerimientos . Producir descripciones claras a partir de los requerimientos obtenidos.
» Conceptualización inicial . Selección de los conceptos a representar inicialmente (estrategias descendentes , centrífugas y mixtas )-> esquema preliminar incompleto.
» Conceptualización incremental . Aplicación de las estrategias para refinar el esquema.
» Integración . ( Estrategias mixtas y ascendentes ) fusión de esquemas. Se descubren conflictos y propiedades interesquemáticas.
» Reestructuración . Evaluar la bondad del esquema conceptual y mejorar la calidad del mismo.
35
Análisis funcional usando el modelo de flujo de datos.
• Introducción.
• El modelo de flujo de datos.
• Primitivas del modelo de flujo de datos.
• Estrategias: » Descendentes.
» Ascendentes.
» Centrífuga.
» Mixta.
• Metodología para el análisis funcional.
• Cualidades de un esquema funcional.
• Documentación y mantenimiento de un Esq. Funcional.
36
Introducción
• Análisis funcional. Modelado de actividades de una empresa.
• Cómo cada función utiliza la información y como se intercambia la información entre las funciones.
• Primer paso para el diseño de programas de aplicación sobre la BD.
• Es útil para diseño conceptual. Permite verificar la compleción.
• Visión procedimental de la base de datos.
37
Modelo de flujo de datos
• MFD elaborar esquema funcional de sistemas de procesamiento de datos.
• Conduce a la elaboración del Diagrama de Flujo de Datos (DFD).
• Elementos: » » Proceso : actividad Flujo de datos : dentro de un sistema – Generar, usar, manipular o destruir información.
intercambio información entre procesos.
– Flechas indican dirección del flujo.
» » Almacén de datos electrónicos.
los datos.
contenido almacén.
Interfaz : usuario : depósito de información.
– Archivos, tablas consulta, formularios, papel, – Flecha hacia proceso: el proceso utiliza – Flecha hacia almacén: el proceso modifica el externo al sistema.
– Puede originar o recibir los flujos de datos o de los almacenes de datos.
38
Modelo de flujo de datos. Ejemplo.
• • HACER_RESERVAS: El billete.
pasajero solicita una reserva ACEPTAR_REGISTROS: El pasajero con billete ; si se acepta se almacena la reserva y al pasajero se le entrega un solicita cerrar vuelo • ; si existen billetes libres se le da la tarjeta de embarque; si no, se le asigna un vuelo posterior.
pasajeros_para_ser_programados: indicación de pasajero , destino y vuelo reservado originalmente.
39
Primitivas para el análisis funcional
40
Estrategias para el análisis funcional. Descendente
• T1, T2 y T3 son las más utilizadas • Descomposición de un proceso en subprocesos » Debe existir independencia funcional .
41
Estrategias para el análisis funcional. Ascendente
• El DFD se construye a partir de conceptos elementales : 1 Se incluyen los procesos elementales.
2 Se incluyen las interfaces y se conectan a los procesos.
3 Se interconectan los procesos y se introducen los almacenes de datos.
42
Estrategias para el análisis funcional. Centrífuga.
• Comienza con los interfases y determina progresivamente los procesos que participan en los flujos.
• Estrategia orientada hacia la entrada.
» Parte de los interfases que proporcionan información.
• Estrategia orientada hacia la salida » Parte de los interfases que reciben información mostrada como salida del sistema.
43
Estrategias para el análisis funcional. Mixta.
1 Esquema armazón que aglutina los principales procesos.
2 Diseño descendente sobre esos procesos.
3 Se integran de acuerdo con el esquema armazón.
• Conveniente si el sistema es complejo ( divide y vencerás ).
44
Diseño de un esquema funcional
1 Identificar interfaces.
2 Identificar flujos entrada/salida entre interfaces y sistema.
3 Diseñar un esquema armazón.
4
Repetir:
» Refinar los procesos con estrategias diseño vistas
hasta que:
requerimientos se vean reflejados sin entrar en rasgos procedimentales.
5 Verificar las cualidades del esquema: independencia, compleción, exactitud, legibilidad y minimalidad.
• Los rasgos procedimentales se introducen cuando utilizamos: iteraciones , bucles y ejecuciones condicionales.
45
Cualidades de un esquema funcional.
• Independencia funcional : puede realizar sus funciones independientemente.
» » » Separabilidad : analizado de forma independiente.
Facilidad integración esquema global.
Flexibilidad a los cambios : el DFD resultante se puede integrar en : proceso se adapta sin alterar al resto procesos.
• Compleción : representa todos los detalles de la aplicación sin entrar en rasgos procedimentales.
• Corrección : usa correctamente elementos MFD para expresar los requerimientos.
» Es conveniente que las conexiones a través de una frontera se mantengan tras un refinamiento 46
Cualidades de un esquema funcional
• Legibilidad : entendible .
» Legibilidad conceptual y gráfica.
• Minimalidad : cada aspecto de los requerimientos debe aparecer una sola vez en DFD.
» Cada actividad > un solo proceso.
» almacenes de datos no tienen partes en común.
• El DFD de una empresa real puede no presentar estas cualidades : » Análisis funcional permite estudiar los problemas funcionales presentes en una empresa.
47
Documentación y mantenimiento de un esquema funcional.
• Deben documentarse de forma descendente.
• Esquema armazón incluirá pocos procesos complejos y casi todos las interfaces.
• Los conceptos se expanden a través de varios planos de refinamiento.
• El mantenimiento se realiza teniendo en cuenta la documentación anterior.
48
Análisis conjunto de datos y funciones.
• Introducción.
• Esquemas externos para los diagramas de flujo de datos.
• Metodología para el análisis conjunto de datos y funcional.
• Sugerencias para refinamientos mutuos.
• Esquemas de navegación para operaciones con bases de datos.
49
Introducción
• Diseño conceptual de BD y funcional conjunto • DFD con esquemas externos; descripción ER de los datos que usan los procesos o presentes en los almacenes de datos.
• Metodología de refinamientos mutuos de datos y funciones.
• Partimos de los esquemas externos para especificar operaciones de BD , necesario para diseño lógico y físico.
» Obtenemos esquemas de operación y esquemas de navegación.
• Esquema D <--> Esquema conceptual de datos • Esquema F <--> Esquema funcional 50
Esquemas externos para los diagramas de flujo de datos.
• Esquema externo vista particular de la BD de una aplicación.
• Diagrama ER que incluye sólo los datos que conciernen a un proceso o almacén de datos.
• Ventajas: » Ayuda a ver los datos que formarán parte del esquema conceptual.
» Ayuda a verificar la compleción del esquema D.
» Útiles para la identificación y especificación de las operaciones de BD.
51
Esquemas externos para los diagramas de flujo de datos. Ejemplo 52
Metodología para el análisis conjunto de datos y funcional.
• Facilita verificar la compleción mutua en etapas intermedias.
• Metodología descendente : 1 Identificar interfaces.
2 Identificar flujos E/S entre interfaces y sistema.
3 Encontrar un primer esquema armazón para los datos y para las – funciones.
4 Repetir: Refinar el esquema D con esquema D previo , considerando esquema F anterior.
– Refinar el esquema F con esquema F previo, considerando esquema D anterior.
– (Opcional) Probar compleción mutua esquemas D y F.
hasta que: Todos los requerimientos estén expresados.
5 Verificar las cualidades de los esquemas D y F.
Modificarlos hasta que cumplan las cualidades.
• Compleción mutua: » Cada concepto expresado en los flujos y almacenes de datos está en el esquema D.
» Para cada elemento de datos y posiblemente que lo debe haber un manipule.
proceso que lo cree
Metodología para el análisis conjunto de datos y funcional.
• Se pueden emplear otras estrategias (mixta, centrífuga).
• Variantes: Diseño orientado a los datos y diseño orientado a las funciones.
• Ejemplo. Requerimientos: » Oficina registro universidad con información plan de estudios de cada estudiante (cursos realizados y previstos).
» Registro de fechas de cursos (inicio y fin), calificaciones .
» Estudiantes doctorado: departamento, tutores, título tesis y fecha defensa.
» La información se modifica : – Estudiante presenta plan estudio para periodo siguiente.
– Profesores entregan calificaciones.
– Estudiantes doctorado escogen tutores y definen título tesis.
» Estudiantes pueden solicitar información de sus calificaciones o de su situación en el doctorado.
54
Metodología para el análisis conjunto de datos y funcional. Ejemplo
55
Metodología para el análisis conjunto de datos y funcional. Ejemplo
56
Metodología para el análisis conjunto de datos y funcional. Ejemplo
57
Sugerencias para refinamientos mutuos.
58
Sugerencias para refinamientos mutuos.
59
Esquemas de navegación para operaciones con BD.
• • Esquema de navegación: relaciones.
Metodología: » 1 Determinar las esquema ER anotado con símbolos especiales que indican como se accede a las entidades y como se recorren las Por cada proceso conectado con un almacén de datos: operaciones de BD.
2 Por cada operación : – Determinar el esquema de la operación . Subconjunto del esquema que interviene en la operación.
– Determinar el esquema de la navegación. Esquema con flechas que indican las condiciones de acceso y símbolos que indican las operaciones (seleccionar, insertar, actualizar, suprimir).
• Esquema operación incluye: » Atributos usados en las condiciones.
» Atributos usados en operaciones de recuperación o actualización.
» Entidades o interrelaciones que son insertadas o suprimidas.
» Interrelaciones o jerarquías que intervienen en la navegación.
Esquemas de navegación para operaciones con BD.
• Esquema de navegación es un esquema de operación que incluye símbolos de navegación.
• Notación esquema de navegación: » Flechas que apuntan hacia atributos indican que estos se usan en las condiciones de selección.
» Las flechas entre interrelaciones o jeraquías indican como se recorren .
» Los símbolos R, M, I, D en las entidades o interrelaciones indican leer, modificar, insertar y suprimir , respectivamente. 61
Esquemas de navegación para operaciones con BD. Ejemplos.
• Operaciones para el ejemplo 1: » Proceso P1 : INTRODUCIR LAS CALIFICACIONES DE UN CURSO – O1: Introducir las calificaciones de un curso.
– O2: Cambiar las calificaciones de un curso. – O3: Determinar la curva de calificaciones de un curso y calcular su desviación respecto a una curva normal.
» Proceso P2 : PREPARAR PLAN DE ESTUDIO – O4: Insertar o suprimir un estudiante.
– O5: Introducir el plan de estudio para un estudiante (para un semestre en particular).
– O6: Cambiar la opción para un estudiante en un curso.
– O7: Retirar una materia del plan de estudio de un estudiante.
» Proceso P3 : DIRIRIGIR ESTUDIANTES DE DOCTORADO – O8: Introducir un nuevo estudiante de doctorado y su asesor.
– O9: Introducir el titulo de la tesis y fecha de defensa.
– O10: Detectar todos los estudiantes que han recibido un notable o menos en un curso impartido por un profesor dado.
• Ejemplo2: Seleccionar los nombres de los médicos que viven en la misma ciudad donde nacieron.
62
Esquemas de navegación para operaciones con BD. Ejemplos.
63