Sei sulla pagina 1di 19

UNIVERSIDAD DE EL SALVADOR

ESCUELA DE INGENIERIA DE SISTEMAS INFORMATICOS


HERRAMIENTAS DE PRODUCTIVIDAD

BASES DE DATOS
MODELADO DE BASES DE DATOS

EL MODELO CONCEPTUAL
Uno de los productos finales del modelado UML es el diagrama de clases. Este diagrama describe los atributos de las clases
de entidad de un sistema de consulta de clnicas. Este modelo ser la base de nuestro modelado de datos.

Para convertir el modelo de clases UML en un modelo conceptual de datos y posteriormente en un modelo lgico de base de
datos, es necesario que se tomen en cuenta las siguientes consideraciones:
1.

Las relaciones de herencia sern tratadas como una relacin de uno a uno entre las entidades del modelo de datos.
Por ejemplo, una persona solo puede estar registrado como mdico una vez.

2.

Las interfaces se toman en cuenta para el modelo de datos nicamente si incorporan atributos para la clase que los
implementa. Los atributos son incorporados en la entidad anloga a la clase.

3.

La navegabilidad de las relaciones no tiene un impacto en la conversin del modelo. Al igual que la relacin entre
Paciente y Aseguradora, la relacin entre Medico y Especialidad es de muchos a muchos. La relacin entre Medico
y Especialidad establece que un mdico puede tener 0 o varias especialidades, y que lgicamente una especialidad
puede ser parte de la formacin de varios mdicos. En este caso, aunque en el modelo de clases, la navegabilidad
oculte la relacin para la entidad Especialidad, en el modelo de datos esto ser representado por una entidad
intermediaria.

Power Designer permite crear modelos UML, que posteriormente pueden ser convertidos automticamente por la
herramienta a modelos de base de datos. Sin embargo, en este laboratorio no utilizaremos esta funcin, sino que
convertiremos manualmente el modelo UML presentado a un modelo conceptual de datos (Modelo Entidad
Relacin).
Comenzaremos por crear un modelo conceptual de base de datos. Para ello hay que abrir el programa Power Designer, y
elegimos Create Model.

En la categora del modelo, elegir Information y elegir un el tipo de diagrama Conceptual Data.

Asignamos el nombre del modelo y clic en Ok.


Cambiamos el nombre del diagrama por un nombre ms descriptivo del modelo, en este caso a clinica.

Para agregar entidades al modelo, haremos uso del cuadro de herramientas que se sita a la derecha de la pantalla.

Para agregar una entidad al modelo, elegir el cono entidad y hacer clic sobre el rea de trabajo.
Una vez agregada la entidad al diagrama, podemos modificar sus propiedades haciendo doble clic en el elemento. En el
atributo Name de la pestaa General asignamos el nombre de la entidad.

Entidad: Aseguradora
NOMBRE

TIPO

LONGITUD

MANDATORIO

LLAVE

codigo

Characters

nombre_asegurado

Variable characters

50

NOMBRE

TIPO

LONGITUD

MANDATORIO

LLAVE

num_consulta

Integer

consulta_por

Variable characters

500

diagnostico

Variable characters

500

fecha

Timestamp

Entidad: Consulta

X
X

Entidad: Especialidad
NOMBRE

TIPO

LONGITUD

MANDATORIO

LLAVE

codigo

Characters

especialidad

Variable characters

50

Entidad: Medico
NOMBRE

TIPO

LONGITUD

MANDATORIO

LLAVE

num_registro

Characters

10

cod_empleado

Characters

tarifa

Decimal

10,2

NOMBRE

TIPO

LONGITUD

MANDATORIO

LLAVE

codigo

Characters

sexo

Variable characters

10

NOMBRE

TIPO

LONGITUD

MANDATORIO

LLAVE

num_expediente

Characters

10

NOMBRE

TIPO

LONGITUD

MANDATORIO

LLAVE

documento_identidad

Characters

10

nombre

Variable characters

50

apellidos

Variable characters

50

fecha_nacimiento

Date

Entidad: Sexo

Entidad: Paciente

Entidad: Persona

En la pestaa Attributes asignamos los atributos de la entidad. Para todos los casos, Power Designer le asigna un cdigo a
cada atributo de forma automtica.

Para asignar el tipo de dato podemos hacer clic en el botn con el smbolo de igualdad (=) en el campo Data Type. Esto nos
mostrar una ventana de tipos estndar de datos.
En el modelo conceptual no es obligatorio especificar las claves principales (llaves primarias) de las entidades. Sin
embargo, con un modelo de clases, podemos advertir las llaves primarias a priori en el modelo conceptual de base de datos.
Los atributos obligatorios son aquellos que para insertar un registro en la tabla debe especificarse ese atributo, y en ausencia
de l, la base de datos devolver un error. Para especificar que un atributo es obligatorio, se debe seleccionar el check box
de la columna Mandatory.

Una vez agregado los atributos, la entidad Persona en el diagrama del modelo conceptual queda de la siguiente manera.

Para los atributos con nombre Codigo y Nombre se deber de especificar un cdigo diferente al nombre, ya que de lo
contrario Power Designer asumir que se trata del mismo atributo en ambas entidades.

Una vez que hemos agregado las entidades, podemos indicar las relaciones entre ellas. Para ello, hacemos clic en el cono
Relationship del cuadro de herramientas, y hacer clic en la entidad origen y luego clic en la entidad destino.
Para las relaciones entre las entidades de Medico y Especialidad, Paciente y Aseguradora especificaremos una relacin de
muchos a muchos. Para ello, hacemos clic en la relacin y cambiamos la cardinalidad a Many-Many.

Dado que la entidad consulta no tiene por si misma una llave primaria, usaremos la tcnica de modelado con llaves
compuestas. Para ello, es necesario en las relaciones entre Mdico y Consulta, y Paciente y Consulta especificamos que hay
una dependencia de Consulta a Mdico.

Ntese que el modelo resultante es equivalente al modelo de clases UML.

Ntese que aun cuando hemos definido que las relaciones de herencia las convertiremos a relaciones de 1 a 1, hemos creado
una relacin de 1 a muchos entre persona y medico. En el modelo fsico nos aseguraremos que la relacin sea de 1 a 1.

MODELO LOGICO
Para convertir el modelo de clases UML en un modelo conceptual de datos y posteriormente en un modelo lgico de base de
datos, es necesario que se tomen en cuenta las siguientes consideraciones:
1.

Las relaciones de 1 a muchos entre dos entidades sern tratadas de la misma forma en el modelo ER. La relacin
entre Persona y Sexo establece que una persona nicamente puede tener asignado un sexo. Evidentemente, gnero
pude ser aplicado a varias persona, es por eso que la multiplicidad en Persona es de 1..*.

2.

Las relaciones de muchos a muchos entre dos entidades del modelo de clases requerirn de una entidad
intermediaria (tabla de relacin) para soportar esa relacin. Por ejemplo, la relacin entre Aseguradora y Paciente
establece que un paciente puede tener varios contratos de seguro para cubrir los gastos. Lgicamente, varios
clientes pueden tener contrato con la misma aseguradora. Para dar soporte a esta relacin en el modelo de datos, es
necesario agregar una tabla de relacin a la que normalmente se le asigna el nombre de la relacin.

3.

Las clases de asociacin sern tratadas como tablas de relacin. Por ejemplo, la relacin Consulta establece que
tanto un mdico como un paciente participan en una consulta. Un mdico puede atender varias consultas y un
paciente puede consultar muchas veces.

Power Designer provee de una herramienta para generar un modelo lgico a partir de una modelo conceptual. Para ello
hacer clic en la opcin Tools del men principal y elegir la opcin Generate Logical Data Model.

En la pestaa Detail puede observarse que para la generacin del modelo lgico Power Designer realizar una verificacin
del modelo conceptual.
Al generar el modelo, Power Designer nos mostrar una lista de resultados en la que podremos encontrar los errores
resultantes de la verificacin del modelo conceptual.

Estos errores son el resultado del hecho de que Power Designer verificar que los atributos de las entidades no se repitan. Es
decir, aunque el cdigo de la entidad Sexo y el cdigo de la entidad Aseguradora se refieren a atributos diferentes, esto
puede generar un modelo poco claro o inconsistente. Para evitar eso, modificaremos el modelo y cambiaremos los nombre
del modelo de acuerdo al diagrama que se presenta.

Ahora podemos ejecutar de nuevo la generacin del modelo lgico y obtendremos un diagrama lgico.
Ntese que en el diagrama lgico genera dos nuevas entidades intermediarias: tiene y financia. Adems, incorpora las llaves
forneas del modelo y en el caso de la entidad Consulta incorpora la llave primaria a partir de los campos heredados.

MODELO FISICO
Para general un modelo fsico a partir del modelo lgico, seleccionar la opcin Tools del men principal y elegir la opcin
Generate Physical Data Model. En las opciones de generacin, elegiremos el Sistema Gestor de Base de Datos (SGBD o
DBMS) PostgreSQL 9x y hacemos clic en Ok.

Si no hay ningn error en el modelo lgico, Power Designer generar el modelo fsico.

Podemos verificar que las entidades ahora se refieren a una tabla de una base de datos.

Para asegurarnos que la relacin entre persona y mdico sea de 1 a 1, al igual que la relacin entre persona y paciente,
agregaremos una restriccin de unicidad al campo documento_identidad.
Conceptualmente esto significa que no puede haber ms de un mdico o un paciente con el mismo documento de identidad.
Esto es, en otras palabras; una relacin de 1 a 1.
Para configurar un campo como nico se debe crear un ndice asociado al campo e indicar el tipo de ndice como UNIQUE.
Para ello, en la pestaa Columns de las propiedades de la tabla, nos posicionamos el campo para al que se desea crear un
ndice (en este caso documento_identididad) y presionamos el botn Create Index.

Power Designer nos mostrar una nueva ventana donde debemos especificar el nombre y el tipo de ndice que se est
creando.

Repetimos el procedimiento para la tabla persona.

GENERAR SCRIPT SQL


Para generar el Sript SQL, seleccionamos la opcin Database del men principal y elegir la opcin Generate Database.

Especificamos que el formato de archivo que se debe generar es UTF-8.

Conctese desde PgAdmin III al servidor que tiene como direccin 192.168.104.237 y ejecute el script en la base de datos
que tiene como nombre su nmero de carnet.

Potrebbero piacerti anche