Está en la página 1de 26

Universidad Nacional Daniel

Alcides Carrin
Escuela de Formacin Profesional

Sistemas y Computacin

SISTEMA DE BASES II
GUA N3
Reglas de transformacin,
modelado de base de datos con Racional Rose y
Diseo fsico de datos
DOCENTE:
ING. MUOZ ROBLES, Williams

JEFE DE PRCTICA:
ING. LOVATN NAVARRO, GISSELA ANTOHAN
Semestre:
VII
Periodo:

GUA PRCTICA III


Gua
3

2011 A

Sistema de Bases II

GUA PRCTICA III


Gua
3

OBJETIVOS
OBJETIVO GENERAL:
Entender conceptualmente la abstraccin de datos y disear clases mediante la
abstraccin de datos

OBJETIVOS ESPECFICOS:

Reconocer las diferentes partes de diagrama de clases.

Definir correctamente el diagrama de objetos.

Reconocer las diferentes relaciones entre clases

MATERIALES

Computadoras

Diapositivas

Proyector multimedia

Sistema de Bases II

GUA PRCTICA III


Gua
3

OBJETIVOS
OBJETIVO GENERAL:
Entender conceptualmente la abstraccin de datos y disear clases mediante la
abstraccin de datos

OBJETIVOS ESPECFICOS:
1. Explicar los tres Modelos del Modelador de Datos del Rational Rose.
2. Construir un Modelo de Almacenamiento.
3. Construir un Modelo de Datos a partir de un Modelo de Objetos.
4. Generar una base de datos a partir de un Modelo de Datos.

MATERIALES

Computadoras

Software NetOP

Racional Rose 2003

Diapositivas

INTRODUCCIN
La tcnica del diagrama de clases se ha vuelto medular en los mtodos orientados a objetos.
Virtualmente todos, los mtodos han incluido alguna variacin.
El diagrama de clase, adems de ser uso extendido, tambin est sujeto a la ms amplia gama
de conceptos de modelado. Aunque los elementos bsicos son necesarios para todos, los
conceptos avanzados se usan con mucha frecuencia.
El diagrama de clase describe los tipos de objetos que hay en el sistema y las diversas clases
de relaciones estticas que existen entre ellos. Hay dos tipos principales de relaciones:
Sistema de Bases II

GUA PRCTICA III


Gua
3

Asociaciones

Subtipos

Sistema de Bases II

GUA PRCTICA III


Gua
3

MARCO TERICO

REGLAS DE TRANSFORMACIN
DISEO LGICO A FSICO

Docente

Tesista

codDocente

codTesista
1

TDocente (codDocente)

TTesista(codTesista, codEmpleado)

No acepta valores nulos, por ser el cdigo de


una clase obligatoria

RELACIN DE DOS CLASES OBLIGATORIAS

Sistema de Bases II

GUA PRCTICA III


Gua
3

Mesa

Pedido

codMesa

codPedido
1

0..1

TMesa (codMesa) TPedido(codPedido, codMesa)

No acepta valores nulos, por ser el cdigo de


una clase obligatoria

RELACIN DE UNA CLASE OBLIGATORIA Y OTRA


OPCIONAL

Sistema de Bases II

GUA PRCTICA III


Gua
3

GrupoTrabajo

Gerente

codGrupo

codGerente
0..1

TGrupoTrabajo (codGrupo)

0..1

TGerente(codGerente, codGrupo)

Acepta valores nulos, por ser el cdigo de


una clase opcional

RELACIN DE DOS CLASES OPCIONALES

Sistema de Bases II

GUA PRCTICA III


Gua
3

Municipio

Vivendas

codMunicipio

codViviendas
1

TMunicipio (codMunicipio)

1..*

TViviendas(codViviendas, codMunicipio)
No acepta valores nulos, por ser el cdigo de
una clase obligatoria

RELACIN DE DOS CLASES (uno a muchos)

Sistema de Bases II

GUA PRCTICA III


Gua
3

Persona

Vivendas

codPersona

codViviendas
0..*

TPersona (codPersona)

1..*

TViviendas(codViviendas, codPersona)
Acepta valores nulos, por ser el cdigo de
una clase opcional

RELACIN DE DOS CLASES (uno a muchos)

Sistema de Bases II

10

GUA PRCTICA III


Gua
3

Comensal

Mesas

codComensal

codMesas
0..*

1..*

Reserva
fecha

TComensal (codComensal)

TMesas(codMesas, codcomensal)

RELACIN DE DOS CLASES (muchos a muchos)

Sistema de Bases II

11

GUA PRCTICA III


Gua
3

Coche
codCoche
1
1
Arrastra

TCoche (codCoche,conmatricula)

RELACIN REFLEXIVA (uno a uno)

Alumno
codAlumno
0..1
0..1
ensea

TAlumno (codAlumno, concompaero)

RELACIN REFLEXIVA (uno a uno)

Sistema de Bases II

12

GUA PRCTICA III


Gua
3

Gerente
codGerente
1..*
1
lidera

TGerente (codGerente,codpersona)

RELACIN REFLEXIVA (uno a muchos)

10

Alimentos

Bebida

Comida

A) TAlimentos (codAlimentos,,tipo)
B) TComida(codComida) TBebida(codBebida)
C) TAlimentos(cdigo,) TComida(cdigo,) TBebida(cdigo,)

ASOCIACIN DE JERARQUAS

Sistema de Bases II

13

GUA PRCTICA III


Gua
3

MODELADO DE BASE DE DATOS CON RATIONAL ROSE


1.

Al iniciar Rose
Una vez en Rose: File New

2.

Clic Derecho en Logical View (Vista lgica)

3.
4.

Llamar al paquete: Modelo Lgico SitioWeb


Crear el diagrama de clase: Modelo lgico

Sistema de Bases II

14

GUA PRCTICA III


Gua
3

5.

texto
interfaz

Nota
clase
Puntero

generalizacin

asociacin

paquete

Ancla Nota

dependencia o instanciacin
clase asociacin

realizacin

Luego crear un nuevo esquema

EL MODELADOR DE DATOS
El Modelador de Datos se basa en tres Modelos:
1. Modelo de Objetos.
2. Modelo de Datos.
3. Modelo de Almacenamiento.
1. Modelo de Objetos
Representado grficamente con un diagrama de clases en UML.
Representacin de la vista lgica de los datos.
Presenta los conceptos o clases fundamentales y su relacin entre ellos.
Es independiente del tipo de Base de Datos.

Sistema de Bases II

15

GUA PRCTICA III


Gua
3

Usuario
nombre : String
apellidos : String

Estudiante
codigoEstudiante : Long

Profesor
codigoProfesor : Long

2. Modelo de Datos
Representado grficamente con un diagrama del Modelo de Datos.
Representacin de la vista fsica de los datos.
Presenta los elementos del esquema de la Base de Datos.
Es dependiente del tipo de Base de Datos.

T_Usuario
nombre : VARCHAR(255)
apellidos : VARCHAR(255)
T_Usuario_ID : INTEGER
<<PK>> PK_T_Usuario0()
1
<<Identifying>>
0..1

1
<<Identifying>>
0..1

T_Profesor
codigoProfesor : INTEGER
T_Usuario_ID : INTEGER

T_Estudiante
codigoEstudiante : INTEGER
T_Usuario_ID : INTEGER

<<PK>> PK_T_Profesor4()
<<FK>> FK_T_Profesor1()

<<PK>> PK_T_Estudiante3()
<<FK>> FK_T_Estudiante0()

3. Modelo de Almacenamiento
Representado grficamente con un diagrama de Componentes.
Representacin de la vista fsica de la Arquitectura de Almacenamiento de los datos.
Presenta los distintos elementos de Almacenamiento de la Base de Datos.
Es dependiente de la Base de Datos.

Sistema de Bases II

16

GUA PRCTICA III


Gua
3

SINDBA

<<Tablespace>>
TSP_BIBLIOTECA

Sistema de Bases II

<<Tablespace>>
TST_BIBLIOTECA

17

GUA PRCTICA III


Gua
3

CONSTRUCCION MODELO DE ALMACENAMIENTO


Seleccionar la vista de componentes (Component view)
Clic derecho, seleccionar Data Modeler/New/Database.
Como resultado se crea un paquete con nombre DB_n y un componente en su interior
de igual nombre.
4.
El componente creado representa a la BD fsica sobre la cual se va a generar el
esquema, por tanto debe ser renombrado (al igual que el paquete) con el nombre que
identifica a la BD).
1.
2.
3.

5.

Especificar el tipo de Base de datos haciendo doble clic sobre el componente de Base
de Datos.

Sistema de Bases II

18

GUA PRCTICA III


Gua
3

6.
Para crear un tablespace en la Base de Datos hay que seleccionar el componente.
Clic derecho al componente y seleccionar Data Modeler/New/Tablespace.

7.

Finalmente generar los nuevos tablespaces, haciendo clic derecho sobre el componente
y seleccionando Data Modeler / Forward Engenieer.
8.
Leugo en el esquema agregar la bd tienda

9.

luego clic derecho en el diagrama de clases tienda y

Sistema de Bases II

19

GUA PRCTICA III


Gua
3

CONSTRUCCION MODELO DE DATOS A PARTIR DE UN MODELO DE OBJETOS


El Modelador de datos es capaz de construir automticamente un Modelo de datos a
partir de un Modelo de Objetos.
Pero para ello el Modelo de Objetos debe cumplir con determinados requisitos:
Tiene que existir un componente de Base de Datos en la vista de Componentes.
Marcar las clases que participan en la transformacin como clases persistentes.
Agrupar todas las clases en un paquete (la transformacin ocurre solo a nivel
paquete).
4.1. Mapas de Transformacin
Elementos del Modelo Elementos del Modelo Resultado
de Objetos
de datos
Clase
Tabla
Las clases persistentes son transformadas
en tablas
Atributo

Columna

Los atributos de las clases se transforman


en columnas usando el mismo nombre de
los atributos. Los atributos son
transformados en tipos de datos propios
de la Base de Datos.

Operacin

No transformada

ClaseX
atributoCadena : String
atributoLogico : Boolean
atributoNumerico : Long
atributoReal : Double

T_ClaseX
atributoCadena : VARCHAR(255)
atributoLogico : SMALLINT
atributoNumerico : INTEGER
atributoReal : DOUBLE PRECISION
T_ClaseX_ID : INTEGER
<<PK>> PK_T_ClaseX5()

Para SQL Server


Tipo en el Modelo de Objetos

Tipo en el Modelo de Datos

STRING

VARCHAR (255)

INTEGER

INT

Sistema de Bases II

20

GUA PRCTICA III


Gua
3

DOUBLE

FLOAT

DATE

DATETIME

BOOLEAN

BIT

BYTE

SMALLINT

SINGLE

FLOAT

LONG

INT

CURRENCY

MONEY

Qu sucede con las llaves?


Para los atributos declarados como parte de la identidad del objeto, el Modelador de
Datos crea una restriccin de la llave primaria.
Con nombre:PK_ + NombreTabla + Correlativo.
Si no se especifica la llave de una clase el Modelador de Datos crea una llave primaria
para la tabla correspondiente:
De tipo ENTERO
Con Nombre: NombreTabla + _ID
Y la restriccin de la llave primaria.

Sistema de Bases II

21

GUA PRCTICA III


Gua
3

MAPAS DE TRANSFORMACIN
Clase K

T_Clase K

atributoLlave: String
atributo

atributoLlave: String : SMALLINT


atributo : SMALLINT
<<PK>> PK_T_Clase K6()

Clas e Z

T_Clase Z

atributo

atributo : SMALLINT
T_Clase Z_ID : INTEGER
<<PK>> PK_T_Clase Z7()

ClaseBB

ClaseAA
llaveA

1..*

llaveB

1..*

ClaseAsociacion
atributoAsociacion

T_ClaseBB
llaveB : SMALLINT
T_ClaseBB_ID : INTEGER
T_ClaseAA_ID : INTEGER

T_ClaseAA
llaveA : SMALLINT
T_ClaseAA_ID : INTEGER

<<PK>> PK_T_ClaseBB7()
<<FK>> FK_T_ClaseBB5()
<<Index>> TC_T_ClaseBB9()

<<PK>> PK_T_ClaseAA8()
1

<<Identifying>>
0..*

0..*

<<Identifying>>

T_ClaseAsociacion
atributoAsociacion : SMALLINT
T_ClaseBB_ID : INTEGER
T_ClaseAA_ID : INTEGER
<<PK>> PK_T_ClaseAsociacion9()
<<FK>> FK_T_ClaseAsociacion4()
<<FK>> FK_T_ClaseAsociacion3()
<<Index>> TC_T_ClaseAsociacion6()
<<Index>> TC_T_ClaseAsociacion7()

Sistema de Bases II

22

GUA PRCTICA III


Gua
3

Todo
llaveTodo

T_Todo
llaveTodo : SMALLINT
T_Todo_ID : INTEGER
<<PK>> PK_T_Todo12()
1

<<Non-Identifying>>

1..*

Parte
llaveParte

1..*

T_Parte
llaveParte : SMALLINT
T_Parte_ID : INTEGER
T_Todo_ID : INTEGER
<<PK>> PK_T_Parte13()
<<FK>> FK_T_Parte11()
<<Index>> TC_T_Parte25()

SuperClase
llaveSuperClase

T_SuperClase
llaveSuperClase : SMALLINT
T_SuperClase_ID : INTEGER
<<PK>> PK_T_SuperClase14()
1
<<Identifying>>
0..1

SubClase
llaveSubClase

T_SubClase
llaveSubClase : SMALLINT
T_SuperClase_ID : INTEGER
<<PK>> PK_T_SubClase16()
<<FK>> FK_T_SubClase12()

Sistema de Bases II

23

GUA PRCTICA III


Gua
3

LA CONSTRUCCIN
1.

2.

3.
4.

5.

Marcar las clases que van a participar en la transformacin como persistentes:


Seleccionar la clase
Doble clic, y se muestra el formulario de especificaciones de la clase
Seleccionar la pestaa detalle
Marcar la clase como persistente en el control correspondiente.
Designar los atributos que va a formar parte de la llave primaria:
Seleccionar la clase en el explorador del proyecto
Expandir la clase
Seleccionar el atributo
Clic derecho, seleccionar Data Modeler / Part of Object Identity.
Generar el Modelo de datos a partir de un Modelo de Objetos:
Seleccionar el paquete que contiene al Modelo de Objetos.
Clic derecho y seleccionar Data Modeler / Transform to Data Model.
Especificar los parmetros de la transformacin:
El nombre del esquema (Modelo de Datos) destino.
El componente de la Base de Datos
El prefijo para el nombre de las tablas
Y OK para comenzar la transformacin.
Finalmente el Modelador de datos
crea un Modelo de Datos, en un
paquete
con
el
estereotipo
<<Schema>>,
dentro
del
paquete Schemas.

6.

El Diagrama del Modelo de Datos


Una vista grfica del Modelo de Datos se puede consultar creando un Diagrama de
Modelo de Datos en el interior del esquema correspondiente.
El Modelador de Datos, crear un diagrama vaco y activar una barra de
herramientas.
Para ver grficamente una tabla basta con arrastrarla hacia el diagrama y el Modelador
de Datos mostrar automticamente las relaciones de dicha tabla con el resto.

RESUMEN
Sistema de Bases II

24

GUA PRCTICA III


Gua
3

A nuestro parecer UML es la mejor solucin para todos los profesionales relacionados
con el Anlisis de Sistemas, ya que si nos tocara trabajar en un proyecto de software, en el
cual sabemos que el nmero de integrantes no es para nada reducido (si se trabajase en
empresas grandes), sin la aplicacin de UML, se hace engorroso ponerse de acuerdo en las
metodologas que se utilizarn, en las notaciones que se emplearn para cada modelo (ya sea
de anlisis o de implementacin). Es por ello que este nuevo paradigma de diseo nos
posibilita unificar todos nuestros criterios, para un posterior entendimiento, y mejor
organizacin de los proyectos.

Sistema de Bases II

25

GUA PRCTICA III


Gua
3

AUTOEVALUACIN
1. Cul es la importancia del diseo de diagrama de clases son las diferencias
fundamentales entre compilador e interprete?
2. Cuntos tipos de herencia existe?

ACTIVIDADES
1. Modelar el caso de estudio compaas areas.
2. Realizar todas las actividades realizadas por en clase

Sistema de Bases II

26

También podría gustarte