You are on page 1of 20

ANLISIS DE DISEO DE BASE DATOS

UNIDAD 2. DISEO CONCEPTUAL DE BASE DE DATOS (SGBD)

Ing. Harry Zurita, MSC


harry.zuritah@ug.edu.ec
1
INDICE

Unidad 2
Diseo conceptual
La identificacin de reglas de negocio y las entidades
potenciales
Modelado, de datos y convenciones/reglas de Modelado ER
Diseo Lgico
Cmo crear a un modelo lgico?

SISTEMAS DE GESTIN DE BASE DE DATOS - MSI. HARRY ZURITA 2


IDENTIFICANDO REGLAS DEL NEGOCIO Y ENTIDADES
POTENCIALES
Las reglas de negocio son declaraciones que definen o limitan los aspectos del
negocio
Pueden afectar a la estructura y el comportamiento de una base de datos
(Entre todos los otros sistemas de organizacin)
Por lo general, expresamos reglas de negocio como hechos!
Los departamentos al menos tiene un empleado (hecho)
Las entidades pueden a menudo ser identificadas como "trminos" (o nombres)
Un cliente (termino)
Cuenta (termino)

SISTEMAS DE GESTIN DE BASE DE DATOS - MSI. HARRY ZURITA 3


SELECCIN DE ENTIDAD BUENAS PRACTICAS
Una entidad
Tendr muchas instancias en la base de datos
Se compone de muchos atributos
Es algo necesario para que el sistema funcione (algo que se trata de modelar)
Ejemplos
- Persona: EMPLEADO, ESTUDIANTE, PACIENTE
- Lugar: TIENDA, ALMACEN, ESTADO
- Objeto: MQUINA, EDIFICIO,VEHICULO
- Evento: VENTA, REGISTRO,
- Concepto: CUENTA, CURSO, PAPEL
La entidad NO ES:
- Un usuario del sistema (en el que el sistema no es sobre el usuario ...)
- Una salida del sistema (por ejemplo, un informe)
SISTEMAS DE GESTIN DE BASE DE DATOS - MSI. HARRY ZURITA 4
Encontrar Entidades Potenciales, Atributos y Reglas del
Negocio (Hechos)
Un Hospital peditrico ha decido que las historias clnicas que los doctores
llevan de sus pacientes este en una base de datos. Para esto nos den la siguiente
informacin.
Desean ver en la base de datos cual es el nombre del doctor, telfono, correo
electrnico, el numero de su consultorio (Cada Consultorio solo puede ser
ocupado por un doctor), la(s) especialidades que tiene, registro que tiene cada
especialidad y ao que la consigui.
De los pacientes se desea saber el nombre, apellido, direccin, Edad (Deben ser
menores de edad), Ao de nacimiento, informacin sobre sus enfermedades
prexistentes, tipo de sangre, genero, raza.
Adicionalmente informacin sobre las citas como la fecha, el estado del paciente,
al diagnostico, y las medicinas recetadas que entrego el doctor y su cantidad.
5 / 20
Encontrar Entidades Potenciales,Atributos y Reglas del
Negocio (Hechos)
Un Hospital peditrico ha decido que las historias clnicas que los doctores
llevan de sus pacientes este en una base de datos. Para esto nos den la siguiente
informacin.
Desean ver en la base de datos cual es el nombre del doctor, telfono, correo
electrnico, el numero de su consultorio (Cada Consultorio solo puede ser
ocupado por un doctor), la(s) especialidades que tiene, registro que tiene cada
especialidad y ao que la consigui.
De los pacientes se desea saber el nombre, apellido, direccin, Edad (Deben ser
menores de edad), Ao de nacimiento, informacin sobre sus enfermedades
prexistentes, tipo de sangre, genero, raza.
Adicionalmente informacin sobre las citas como la fecha, el estado del paciente,
al diagnostico, y las medicinas recetadas que entrego el doctor y su cantidad.
6 / 20
INDICE
Diseo conceptual
La identificacin de reglas de negocio y las entidades potenciales
Modelado, de datos y convenciones/reglas de Modelado ER
Diseo Lgico
Cmo crear a un modelo lgico?
Diseo fsico
Cmo crear a un modelo fsico?
SQL
Qu es SQL
SQL
Cmo crear una tabla en la base de datos
Cmo poner datos en tablas
Cmo obtener los datos de las tablas

SISTEMAS DE GESTIN DE BASE DE DATOS - MSI. HARRY ZURITA 7


UNA ENTIDAD
En este caso podemos identificar algunas entidades Potenciales
Por ejemplo, paciente, doctor, citas, consultorio?, especialidad?
Atributos potenciales
Nombre, fecha, edad,
Reglas del Negocio (hechos)
Un doctor esta mximo en un consultorio.
Los pacientes deben ser mayores de edad.

SISTEMAS DE GESTIN DE BASE DE DATOS - MSI. HARRY ZURITA 8


DISEO CONCEPTUAL
Construccin de un modelo de los datos utilizados en la base de datos
Independiente de las preocupaciones fsicas, solo se preocupa de los datos

Se ignora cmo se va a implementar la base de datos en esta etapa


No se preocupe por cuestiones como la indexacin de datos, tipos de datos, la
base de datos de velocidad, capacidad de disco, etc.
Hacemos esto en Diseo Fsico

SISTEMAS DE GESTIN DE BASE DE DATOS - MSI. HARRY ZURITA 9


QUE ES MODELADO DE DATOS
El modelado de datos es una tcnica para determinar
Qu datos y relaciones deben ser almacenados en una base de datos?
Usamos modelos de datos para disear conceptualmente nuestras necesidades de datos
Permiten describir los datos, las relaciones, la semntica y limitaciones de los datos.
Herramienta de gran alcance para expresar requisitos de informacin (las reglas de negocio y
procesos de negocio)
Ejemplos
Diagramas Entidad Relacin (ER) *
extendido Diagramas Entidad Relacin (EER) *
modelos de datos basado en objetos (UML)
modelos de datos semi-estructurados (XML)
* miramos en detalle en este tema

SISTEMAS DE GESTIN DE BASE DE DATOS - MSI. HARRY ZURITA 10


CREANDO EL MODELO ENTIDAD RELACIN
Una base de datos puede estar definida como
Un conjunto de entidades
Relaciones entre las entidades
Las entidades tienen atributos que describen la entidad
Un conjunto de Instancias de la entidades que comparten las mismas
propiedades (no los valores de propiedad)
Ejemplo: conjunto de empleados, conjunto de citas...

SISTEMAS DE GESTIN DE BASE DE DATOS - MSI. HARRY ZURITA 11


A TOMAR EN CUENTA
MODELO - > BASE DE DATOS
Modelo: Entidad
Corresponde a una tabla en una base de datos.
Modelo: Relacin
Corresponde a relacin entre tablas en una base de datos pero se las
refleja con llaves forneas. Se explica mas adelante.
Modelo: Atributo
Corresponde a un campo (columnas) en una tabla base de datos.

SISTEMAS DE GESTIN DE BASE DE DATOS - MSI. HARRY ZURITA 12


EJEMPLO: ENTIDADADES + RELACION
Una entidad financiera necesita registrar la siguiente informacin de sus clientes: ID,
Nombre, Apellido, Negocio, Tipo de Cliente. Los clientes pueden tener cero, una o
muchas cuentas. Las cuentas tienen un nombre y tener un balance.
Los registros actualmente estn en Excel de la siguiente manera (Esto no
es ningn modelo de datos) CuentaID CuentaNombre Balance
12548 Juan Tamayo 125,65
12365 Claro Servicios 132,5
14558 Claro Tv 132,5

ClienteID ClienteNombre ClienteApellido NegocioNombre ClienteTipo


0950113685 Juan Tamayo Personal
0922551234 Ana Suarez Claro Empresarial
SISTEMAS DE GESTIN DE BASE DE DATOS - MSI. HARRY ZURITA 13
EJEMPLO: ENTIDADADES + RELACION
Cliente
Una entidad financiera necesita registrar la siguiente informacin
PK ClienteID de sus clientes: ID, Nombre, Apellido, Negocio, Tipo de Cliente.
ClienteNombre Los clientes pueden tener cero, una o muchas cuentas. Las
cuentas tienen un nombre y tener un balance.
ClienteApellido

NegocioNombre

ClienteTipo

Cuenta
PK CuentaID
tiene
CuentaNombre

Balance
14
CREANDO EL MODELO ENTIDAD RELACIN
Entidades
Sustantivo Singular
Empleado, Cliente,Venta
Atributo
Usualmente un sustantivo. Forma(Nombre de la entidad+Nombre del Campo)
EmpleadoID, Empleado_Id, EmpId o Emp_ID.
EmpleadoNombre, Empleado_Nombre, EmpNombre o Emp_Nombre.
Relaciones
Verbos
Tiene, maneja, enva
Use nombres que tengan relacin al contexto/dominio
Tratar de No abreviar. Por Ejemplo EmpNom o EmpleadoNom.

SISTEMAS DE GESTIN DE BASE DE DATOS - MSI. HARRY ZURITA 15


CONVENSION DEL MODELO ENTIDAD RELACION

Entidad Entidad Identificador Parcial : Identifica parcialmente una


PK Identificador instancia/registro.
PK IdentifParcial1
EntAtributo1
Identificador (o Clave): Identifica totalmente una
PK IdentifParcia2 instancia/registro.
EntAtributo2
Atributos
Mandatorio Obligatorio

Opcional Opcional
[Derivado]. Ej. : [AosEdad]
[Derivado]
Multi-valor Ej. : {ActividadComercial}
{Multivalor}
Compuesto Ej. : Nombre(Nombre1, Nombre2,
Compuesto(Elem1, Apellido Paterno, Apellido Materno)
Elem2) 16
CLAVES / IDENTIFICADORES
Los identificadores o claves son usadas para identificar una sola instancia de una
entidad
Clave primaria (Primary Key):
El identificador usado para identificar un instancia/registro de una entidad especfica
Clave mltiple: (Compound/Composite key)
Una clave compuesta de ms de un atributo
P.ej. Para el vuelo entidad es posible que tengamos una clave compuesta
VueloNumero + VueloFecha
Clave fornea )Foreign key
La clave utilizada para enlazar con una clave primaria en otra tabla
Nos permite unir tablas en la base de datos eventual
Los identificadores son
Nunca/Not NULL (Obligatorios/Requeridos)
Son nicos
No cambie de valor

17
GRADO DE UNA RELACION

Anillo Binarias Ternarias


De Grado uno De grado dos De grado tres
Cliente
maneja
PK ClienteID Cuenta
Departamento
PK CuentaID
ClienteNombre
PK DepID
tiene
ClienteApellido CuentaNombre
DepNombre

DepDetalles NegocioNombre Balance

ClienteTipo

18 / 20
CARDINALIDAD DE RELACIONES
Muchos Opcional Uno Opcional Uno a Uno
Los registro de cada entidad deber tener 0 o 1 registro
en la otra
Uno a Muchos
Los registros de una entidad debern tener 0 o 1 o mas
registros en la otra Los registros de la otra tendr 0 o
1 registros.
Obligatorio Muchos Uno Obligativo
Muchos a Muchos
Los registro de cada entidad deber tener 0, 1 o mas
registros en la otra.
Estos deberemos separar cuando implementemos
nuestra base de datos

19 / 20
ENTIDADES FUERTES Y DEBILES
Entidad Fuerte Entidad Entidad2
Entidad 2 PK Identificador PK Identificador
verbo
Puede existir por ella misma EntAtributo1 EntAtributo1

Lnea puntuada EntAtributo2 EntAtributo2

Entidad Dbiles Entidad2


Entidad1
PK Entidad2ID
Entidad 2 PK Entidad1ID
verbo PK FK Entidad1ID
No puede existir por ella misma
Ent1Atributo1
Ej: Profesor y TituloProfesor Ent2Atributo1
Ent1Atributo2
Ent2Atributo2

20 / 20

You might also like