Vous êtes sur la page 1sur 22

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 y las operaciones que cada clase tiene bajo su responsabilidad. Este modelo ser la base de nuestro modelado de datos. El siguiente modelo de clases describe el diseo de un Sistema para el registro de consultas de una clnica.

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 nicamente si establecen atributos para la entid ad que los implementa. 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.

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 codigo nombre_asegurado Entidad: Consulta NOMBRE num_consulta consulta_por diagnostico fecha TIPO Integer Variable characters Variable characters Timestamp 500 500 X LONGITUD MANDATORIO X X LLAVE SI TIPO Variable characters Variable characters LONGITUD 10 50 MANDATORIO X X LLAVE X

Entidad: Especialidad NOMBRE codigo especialidad Entidad: Medico NOMBRE num_registro cod_empleado tarifa Entidad: Sexo NOMBRE codigo sexo Entidad: Paciente NOMBRE num_expediente Entidad: Persona NOMBRE TIPO LONGITUD MANDATORIO LLAVE TIPO Variable characters LONGITUD 10 MANDATORIO X LLAVE SI TIPO Variable characters Variable characters LONGITUD 1 10 MANDATORIO X X LLAVE SI TIPO Variable characters Variable characters Decimal LONGITUD 10 10 10,2 MANDATORIO X X X LLAVE SI TIPO Variable characters Variable characters LONGITUD 10 50 MANDATORIO X X LLAVE SI

documento_identidad nombre apellidos fecha_nacimiento

Variable characters Variable characters Variable characters Timestamp

10 50 50

X X X X

SI

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. Para los atributos de tipo texto, asignaremos el tipo Variable characters especificando una longitud segn el atributo (ver tablas de datos del modelo), para los atributos de tipo Date asignaremos el tipo de dato Timestamp.

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.

MODELO LOGICO
Las reglas que hemos aplicado para 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, un tipo de sexo pude ser aplicado a varias persona, es por eso que la multiplicidad en Persona es de 1..*. Esto podra significar que 2. Las relaciones de muchos a muchos entre dos entidades del modelo de clases requerirn de una entidad intermediaria (tabla relacional) 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 entidad intermedia (tabla relacional) a la que normalmente se le asigna el nombre de la relacin. 3. Las entidades relaciones en el modelo de clases (clases de asociacin) sern tratadas como tablas relaciones. 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 vec es.

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 relacionales: 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 8 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.

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.

Ejecute el script generado en un esquema que llamara guia5 en la base de datos hdp115 del servidor PostgreSQL.

Vous aimerez peut-être aussi