dbmain

8
DB-Main Bases de Datos E.U.I.T.I.O Belén Martínez Luis Vinuesa Bases de Datos Introducción Fases del Ciclo de Vida Análisis de Requisitos Diseño de la Estructura Conceptual Diseño Lógico Refinamiento por el uso Diseño Físico Implementación Prueba, Monitorización y Mantenimiento DB-Main

Upload: darwin-gualotuna

Post on 21-Apr-2015

39 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: dbmain

1

DB-MainBases de Datos

E.U.I.T.I.O

Belén MartínezLuis Vinuesa Bases de Datos

Introducción

Fases del Ciclo de Vida

Análisis de RequisitosDiseño de la Estructura ConceptualDiseño LógicoRefinamiento por el usoDiseño FísicoImplementaciónPrueba, Monitorización y Mantenimiento

DB-Main

Page 2: dbmain

2

Belén MartínezLuis Vinuesa Bases de Datos

Introducción

n Herramienta Case desarrollada inicialmente como un proyecto de investigación (1991) en la Universidad de Namur (Francia)

n Comercializada desde enero de 2004

n Soporta el modelado conceptual, lógico y físico

n Accesible en:n http://www.db-main.be/

Belén MartínezLuis Vinuesa Bases de Datos

Pasos en la creación de un modelon 1) Crear un proyecto -> File/New Projectn 2) Definir un esquema -> Product/ New Scheman 3) Especificación de los elementos del modelo:

n Entidades -> New Entity-typen Relaciones -> New Rel-typen Atributos -> New Attribute

n 4) Generar BD SQL -> Transform /Quick SQLn 5) Guardar Proyecto -> File /Save Project

Page 3: dbmain

3

Belén MartínezLuis Vinuesa Bases de Datos

Visualización del esqueman 1) Vistas gráficas

n Compacta -> View/Graph compactn Estándar -> View/Graph standardn Para configurar características de estas vistas: View/Graphical settings

n 2) Vistas Textualesn Compacta -> View/Text compactn Estándar -> View/Text standardn Extendida -> View/Text extendedn Ordenada -> View/Text sorted

Belén MartínezLuis Vinuesa Bases de Datos

Modelado ConceptualElementos Soportados

n 1) Tipo entidadn Representa un conjunto de objetos similares, o entidades, que tienen cierta

relevancia en el dominio de la aplicación

n 2) Atributosn Representan una propiedad de un tipo entidadn Se caracterizan por

n Tipo: numérico, carácter, fecha,…n Longitudn Cardinalidad, se representa como [0-1],[1-1],…

n Si el límite inferior es 0 -> atributo opcionaln Si el límite inferiior es <>0 -> atributo obligatorion Si el límite superior es >1 -> atributo multivaluado (ej. teléfono de una persona)n Si la cardinalidad es [0-1] ó [1-1] ->atributo monovaloradon Se pueden especificar atributos compuestos con DB-main (atributos que pueden

descomponerse en otros atributos significativos). Para ello se selecciona el atributo compuesto ypulsamos “First att” en la barra de herramientas. A partir de ahí se pueden especificar los atributos componentes.

Page 4: dbmain

4

Belén MartínezLuis Vinuesa Bases de Datos

Modelado Conceptual (II)Elementos Soportados

n 3) Tipos de Relacionesn Representa asociaciones entre tipos de entidadesn Características:

n Papel. Cada entidad participante juega un rol o papel caracterizado por una restricción de cardinalidad expresada con un par de símbolos tales como [1-0],[1-1]

n Grado. El número de entidades implicadas pueden ser 2(binarias), 3 (ternarias) y en general N-arias.

n Atributos. Las relaciones pueden contar con atributos descriptivosn En las relaciones cíciclas (entre la misma entidad) es necesario especificar

explícitamente el nombre de los roles

Belén MartínezLuis Vinuesa Bases de Datos

Modelado Conceptual (III)Elementos soportados

n 4) Identificadoresn Representan un grupo de atributos que cualifican únicamente las

entidades de un tipon Puede definirse identificadores primarios (id) y secundarios (id’)

n 5) Subtipos y Supertiposn Soporta la especificación de subtipos-supertipos (relación ISA)n Los subtipos heredan de los supertipos atributos, identificadores, roles y

restricciones de integridadn Las propiedades de los subtipos se especifican en el supertipo:

n Disjunto (D) -> los subtipos son disjuntosn Total (T) -> Cada entidad del supertipo debe pertenecer a alguno de los

subtiposn Partición (P) = Disjunto (D) + Total (T)

Page 5: dbmain

5

Belén MartínezLuis Vinuesa Bases de Datos

Modelado Conceptual (IV)Elementos soportados

n 6) Atributos coexistentes n Son atributos que algunas entidades tienen valores para ellos mientras que otras no lo tienenn Ej. Si una persona tiene carnet de conducir es necesario almacenar: fecha expedición y tipo.

Sin embargo, si no tiene carnet no almacenaremos ninguno de esos valores=> Atributos coexistentes.

n Para especificarlos es necesario crear un grupo de coexistencia o bien una agregación (Transform/Group/Aggregation)

n 7) Atributos exclusivosn Son atributos que no pueden tomar valores simultáneamente en la misma entidadn Ej. Una pesona puede estar en el régimen de la Ssocial o bien Muface, pero no puede estar en

ambos.n Esta propiedad puede aplicarse a atributos pero también a grupos de atributos coexistentesn Para especificarlo es necesario crear un grupo exclusivo

n 8) Restricción de “al menos uno”n Se emplea para indicar que al menos uno de los atributos debe tomar un valorn En el caso anterior implicaría que una persona está (obligatoriamente) en el régimen de la

Ssocial o bien en Muface. d l ó l

Belén MartínezLuis Vinuesa Bases de Datos

Modelado Conceptual (V)Elementos no soportados

n Esta herramienta no soporta la especificación gráfica den Atributos derivadosn Entidades débiles.n Limitantes de exclusiónn Limitantes de subconjunto

Page 6: dbmain

6

Belén MartínezLuis Vinuesa Bases de Datos

Modelado Lógico

n DB-main como modelo lógico emplea el modelo relacionalEquivalencias

dbspace, tablespace,…Colección de entidad

IndiceClave de acceso

Clave ajena (Foreign Key)Grupo de referencia

Clave candidatoIdentificador secundario

Clave primariaIdentificador primario

ColumnaAtributo

TablaTipo de Entidad

Modelo Relacional (SQL)Modelo E-R

Belén MartínezLuis Vinuesa Bases de Datos

Modelado LógicoTransformación en un esquema lógico

n 1) Hacer una copia del esqueman Product/Copy Schema

n 2) Generar estructuras relacionalesn Transform/Relational Model

n 3) Especificación de claves ajenas (atributos referencia)n Atributos cuyo valor actúa como referencia a otras entidadesn DB-main emplea para ello grupos de referencia (ya que puede ser más de

un atributo)n Forma de especificarlas:

n Seleccionar atributo (o atributos) y pulsar GRn Hacer doble click y en el cuadro de diálogo “Constraint Properties” indicar:

n Tipo de restricción: refn Entidad principal: target entity type

Page 7: dbmain

7

Belén MartínezLuis Vinuesa Bases de Datos

Modelado FísicoTransformación en un esquema físico

n 1) Hacer una copia del esqueman Product/Copy Schema

n 2) Especificar elementos del modelo físicon Claves de Acceson Colecciones de Entidades

Belén MartínezLuis Vinuesa Bases de Datos

Modelado Físico

n Claves de Acceson Representan estructuras de datos que proporcionan un acceso eficiente a

los registros de datos. Normalmente son índices.

n Por lo general:n Cada identificador se convierte en una clave de acceson Cada foreign key se convierte también en una clave de acceso. No es

obligatorio.

n Para especificar una clave de acceso en db-mainn Seleccionar el atributo (o conjunto de atributos) y crear un grupon Hacer doble click para acceder a la Property box y activar la opción

Acces Key

Page 8: dbmain

8

Belén MartínezLuis Vinuesa Bases de Datos

Modelado Físico (II)

n Colecciones de Entidadesn Una base de datos es almacenada en unidades de almacenamiento que

dependen del SGBD: ficheros, datasets, dbspaces, tablespaces, etc.

n Db-main utiliza el término entity collection para hacer referencia a estas unidades de almacenamiento

n Especificación en db-main:n Para crear una colección de entidades hay que seleccionar la opción New-Collectionn Hacer doble click, y en el cuadro de diálogo que aparece especificar las tablas

cuyas entidades van a ser almacenadas en dicha colecciónn En una colección puede almacenarse cualquier número de tablas y una tabla puede

almacenarse en varias colecciones. Algunos SGBD imponen restricciones sobre esto

Belén MartínezLuis Vinuesa Bases de Datos

Generación de SQL

n 1) Hacer una copia del esqueman Product/Copy Schema

n 2) Generación de SQLn File/Generate/Estándar SQL

n Previamente a la generación del SQL es necesario comprobar que los nombres de atributos/relaciones son válidos en SQL. Por si nofuese así db-main incorpora una utilidad para cambiar los nombresde una forma más cómoda: Transform/Name Processing